Skip to content

Perun Service

Custom serwis BLE definiujący protokół komunikacji z urządzeniami MWT.

UUID-y

Element UUID
Perun Service 457bbb14-9c79-44a8-9810-f17bd358a200
Data 457bbb14-9c79-44a8-9810-f17bd358a201
Control 457bbb14-9c79-44a8-9810-f17bd358a202
Device Info 457bbb14-9c79-44a8-9810-f17bd358a203
RTCM Stream 457bbb14-9c79-44a8-9810-f17bd358a204

Charakterystyki

Data (Notify)

  • Kierunek: Urządzenie → Klient
  • Operacja: Notify (wymaga włączenia CCCD)
  • Zawartość: Ramki Data Frame — nagłówek 12B + payload

Każdy aktywny moduł wysyła swoje dane jako notyfikacje na tej charakterystyce. Agregator pakuje próbki w ramki i wysyła je automatycznie.

MTU

Maksymalny rozmiar ramki to 244 bajty (header 12B + payload max 232B). Upewnij się, że MTU jest wynegocjowane na ≥ 247 (244 + 3B ATT overhead).

Control (Write + Indicate)

  • Kierunek: Klient → Urządzenie (Write), Urządzenie → Klient (Indicate)
  • Operacja: Write Without Response + Indicate (wymaga CCCD)
  • Zawartość: Komendy SET/GET i odpowiedzi — patrz Protokół Control

Indicate vs Notify

Control używa Indicate (z potwierdzeniem ACK), nie Notify. Klient musi potwierdzić każdą indication zanim urządzenie wyśle następną.

Device Info (Read)

  • Kierunek: Klient → Urządzenie (Read request), Urządzenie → Klient (Read response)
  • Operacja: Read
  • Zawartość: Payload TLV — patrz Device Info

RTCM Stream (Write Without Response)

  • Kierunek: Klient → Urządzenie
  • Operacja: Write Without Response
  • Zawartość: Surowe dane RTCM3 przekazywane do modułu ZED-F9P (UART2)

Charakterystyka służy do przesyłania poprawek RTK (RTCM3) z serwera NTRIP do odbiornika GNSS. Dane są transparentnie przekazywane na UART2 (wejście korekcyjne ZED-F9P).

Fragmentacja

Pojedynczy zapis BLE może mieć max 244 bajty (przy MTU 247). Strumień RTCM3 może zawierać wiadomości dłuższe — klient powinien je dzielić na fragmenty ≤ MTU i wysyłać sekwencyjnie. Firmware nie buforuje ani nie składa fragmentów — każdy zapis jest natychmiast przekazywany na UART.

Advertising

Urządzenie rozgłasza:

  • Flags: General Discoverable + BR/EDR Not Supported
  • UUID128: 457bbb14-9c79-44a8-9810-f17bd358a200 (Perun Service)
  • Manufacturer Data: Company ID 0x108B, następnie device type ID