Meshtastic — łączność awaryjna bez GSM i internetu. Technologia i zasada działania
Kiedy na dużej imprezie przeciąży się sieć komórkowa albo w terenie po prostu nie ma zasięgu, zespół medyczny nadal musi wiedzieć, gdzie jest poszkodowany. Meshtastic to jedna z technologii, na których budujemy łączność awaryjną dla zabezpieczeń medycznych: małe radia LoRa tworzą własną sieć, niezależną od operatora, internetu i zasilania z gniazdka. Wyjaśniamy, z czego się składa, jak wiadomość przechodzi przez sieć i gdzie leżą jej realne granice.
Czym jest Meshtastic
Meshtastic to otwarte oprogramowanie (firmware) dla małych radiomodułów LoRa — tych samych, które produkują m.in. Heltec, RAK czy LILYGO. Po wgraniu firmware każde urządzenie staje się węzłem sieci mesh: wysyła własne wiadomości i przekazuje dalej cudze. Telefon łączy się z węzłem przez Bluetooth lub USB i służy wyłącznie jako klawiatura i ekran — sama transmisja odbywa się radiem, bez karty SIM, bez internetu i bez żadnej stacji bazowej.
Dla nas, jako zespołu zabezpieczającego wydarzenia, liczy się jedna właściwość: łączność awaryjna działa wtedy, gdy zawodzi infrastruktura. Telefonia komórkowa na stadionie, festiwalu czy biegu masowym potrafi się przeciążyć dokładnie w momencie, w którym tysiące osób jednocześnie próbują dzwonić. W lesie, dolinie czy na terenie poligonu zasięgu po prostu nie ma. Sieć Meshtastic nie zależy od żadnego z tych warunków — węzły zasilane z akumulatora pracują wiele godzin, a wiadomość tekstowa, pozycja GPS czy potwierdzenie odbioru docierają tak długo, jak długo istnieje łańcuch radiowy między nadawcą a odbiorcą.
Technologia: radio LoRa w paśmie 868 MHz
Podstawą jest modulacja LoRa (Long Range) — technika rozpraszania widma, w której sygnał jest „rozciągany” w czasie i paśmie. Dzięki temu odbiornik wyłuskuje go nawet wtedy, gdy jest słabszy od szumu tła. Ceną jest przepływność: zamiast megabitów mamy pojedyncze kilobity na sekundę. Do krótkich komunikatów tekstowych to wystarcza, do głosu i zdjęć — nie, i to jest pierwsza rzecz, którą wyjaśniamy klientom.
Parametry radia Meshtastic grupuje w presety. Domyślny to LongFast: współczynnik rozpraszania SF11, pasmo 250 kHz, kodowanie 4/5, teoretycznie ok. 1,07 kb/s. Wolniejsze presety dają większy zapas sygnału (zasięg), szybsze — więcej przepustowości kosztem zasięgu. Wszystkie węzły jednej sieci muszą pracować na tym samym presecie i tej samej częstotliwości, inaczej się nie usłyszą.
W Europie Meshtastic korzysta z wąskiego pasma 869,40–869,65 MHz (region EU_868, domyślnie środek 869,525 MHz). To pasmo urządzeń bliskiego zasięgu, w którym nie potrzeba pozwolenia radiowego, ale obowiązują dwa limity: moc do 500 mW e.r.p. i aktywność nadajnika do 10% — czyli nie więcej niż 6 minut nadawania w każdej godzinie. Firmware pilnuje tego sam: po przekroczeniu limitu węzeł przestaje nadawać, dopóki okno się nie zwolni. Ten limit ma praktyczne konsekwencje, które policzyliśmy niżej.
Podstawa prawna
Pasmo 869,40–869,65 MHz należy do pasm zharmonizowanych w Unii Europejskiej dla urządzeń bliskiego zasięgu ogólnego stosowania (moc do 500 mW e.r.p., aktywność nadajnika do 10%), które mogą być używane bez pozwolenia radiowego. Polskie rozporządzenie definiuje aktywność nadajnika jako „wyrażony w procentach stosunek czasu nadawania do długości okresu obserwacji, przy czym jako okres obserwacji przyjmuje się dowolny, jednogodzinny, ciągły przedział czasu” (§ 2 pkt 3).
Decyzja Komisji 2006/771/WE w sprawie harmonizacji widma radiowego na potrzeby urządzeń bliskiego zasięgu (z późn. zm.); Rozporządzenie Ministra Cyfryzacji z dnia 9 lutego 2022 r. w sprawie urządzeń radiowych nadawczych lub nadawczo-odbiorczych, które mogą być używane bez pozwolenia radiowego, Dz.U. 2022 poz. 567, status: obowiązujący (weryfikacja: API ELI Sejmu RP).Zasada działania: jak wiadomość przechodzi przez sieć
Sieć mesh nie ma centrali. Każdy węzeł, który usłyszy pakiet, może go powtórzyć — i tak wiadomość „przeskakuje” od radia do radia, aż dotrze do adresata. Meshtastic robi to w sposób nazywany zarządzanym rozgłaszaniem (managed flooding), a jego sens najłatwiej pokazać w czterech krokach:
- NadanieWęzeł wysyła pakiet z licznikiem przeskoków (hop limit) — domyślnie 3, maksymalnie 7. Przed nadaniem sprawdza, czy kanał jest wolny.
- Wyścig najdalszychKażdy odbiorca czeka losowy czas, zależny od jakości sygnału: im słabiej słyszał nadawcę, tym krócej. Dzięki temu pakiet jako pierwszy powtarza węzeł położony najdalej — ten, który realnie poszerza zasięg.
- Rezygnacja bliższychWęzeł, który usłyszy, że ktoś już powtórzył ten sam pakiet, sam go nie nadaje. Sieć nie zalewa eteru kopiami tej samej wiadomości.
- Licznik w dółKażde powtórzenie zmniejsza licznik o jeden. Przy zerze pakiet nie idzie dalej — to bezpiecznik przed krążeniem wiadomości bez końca.
Wiadomości do konkretnej osoby działają nieco inaczej. Pierwsza idzie rozgłaszaniem, ale sieć zapamiętuje, którędy wróciło potwierdzenie, i kolejne pakiety kieruje już wybraną trasą (routing „next hop”, od wersji 2.6). Odbiorca odsyła prawdziwe potwierdzenie odbioru; bez niego nadawca ponawia wysyłkę do pięciu razy, a potem wyświetla błąd. Przy wiadomościach do całego kanału potwierdzeniem jest samo usłyszenie, że ktoś pakiet powtórzył — to ważne rozróżnienie: „poszło na kanał” nie znaczy „przeczytał koordynator”.
Treść jest szyfrowana: kanały kluczem AES, a wiadomości prywatne i polecenia administracyjne — kryptografią klucza publicznego. Węzły pośredniczące przekazują pakiet, nie znając jego treści, bo jawny pozostaje tylko nagłówek z adresem i licznikiem. Dla zespołu medycznego oznacza to, że opis stanu poszkodowanego nie jest czytelny dla przypadkowego posiadacza radia na tym samym paśmie — pod warunkiem, że kanał ma własny klucz, a nie domyślny, publicznie znany.
Ile wiadomości zmieści eter — policzyliśmy
Budżet czasu nadawania dla presetów Meshtastic
Folderowe „kilometry zasięgu” niewiele mówią o tym, czy sieć udźwignie zabezpieczenie imprezy. Dla nas ważniejsze jest pytanie: ile komunikatów zmieści się w limicie 10% i we wspólnym kanale. Policzyliśmy czas nadawania jednego pakietu ze wzoru producenta układów LoRa (Semtech) dla parametrów Meshtastic: preambuła 16 symboli, nagłówek jawny, suma kontrolna. Pakiet 50 B odpowiada krótkiemu komunikatowi (ok. 30 znaków), 80 B — dłuższemu (ok. 60 znaków) po doliczeniu nagłówka sieci.
| Preset | Parametry | Pakiet 50 B | Pakiet 80 B | Maks. pakietów 80 B / h na węzeł |
|---|---|---|---|---|
| ShortFast | SF7, 250 kHz | 0,05 s | 0,08 s | ok. 4 700 |
| MediumFast | SF9, 250 kHz | 0,18 s | 0,24 s | ok. 1 490 |
| MediumSlow | SF10, 250 kHz | 0,34 s | 0,46 s | ok. 780 |
| LongFast (domyślny) | SF11, 250 kHz | 0,64 s | 0,85 s | ok. 430 |
| LongModerate | SF11, 125 kHz, CR 4/8 | 2,04 s | 2,82 s | ok. 130 |
Liczba „430 pakietów na godzinę” wygląda na ogromny zapas, ale to limit jednego węzła. Kanał jest wspólny: wszystkie radia nadają na tej samej częstotliwości, a każde powtórzenie w sieci zajmuje eter tak samo jak oryginał. Komunikat 80 B na presecie LongFast, który zanim dotrze do adresata, zostanie powtórzony przez trzy węzły, zajmuje kanał na ok. 3,4 s. Do tego dochodzą automatyczne rozgłoszenia: informacje o węzłach, pozycje GPS, telemetria. Kilkadziesiąt radiów raportujących pozycję co minutę potrafi zapchać kanał, zanim ktokolwiek napisze pierwszą wiadomość.
Wnioski, które stosujemy przy projektowaniu sieci: na zwartym terenie imprezy wybieramy szybszy preset, bo zasięgu jest w nadmiarze, a przepustowość się przydaje; wolne presety zostawiamy na rozległy teren z małą liczbą węzłów; interwały pozycji i telemetrii ustawiamy świadomie, a nie domyślnie; a stałe węzły przekaźnikowe (repeatery) stawiamy wysoko, żeby wiadomość potrzebowała jak najmniej przeskoków.
Łączność awaryjna w zabezpieczeniu medycznym — jak jej używamy
Technologia to połowa sukcesu, druga połowa to sposób pisania. Wiadomość tekstowa w Meshtastic może mieć ok. 200 bajtów, a polskie znaki diakrytyczne zajmują po dwa bajty. Pełne zdanie pisane w stresie jest długie, niejednoznaczne i dłużej zajmuje eter. Dlatego w zabezpieczeniach medycznych imprez pracujemy na stałym szablonie komunikatu, który każdy członek zespołu zna przed rozpoczęciem wydarzenia.
Nasz szablon komunikatu — porównanie z „pisaniem jak w SMS”
Szablon: priorytet · miejsce · wiek · stan · co zrobiono · godzina · potrzeba. Sektory i punkty orientacyjne (K14 = kolumna 14 przy trasie, S3 = sektor 3 pod sceną) ustalamy na odprawie i drukujemy na mapce dla każdego patrolu.
| Forma | Treść | Znaki / bajty | Czas nadawania |
|---|---|---|---|
| Swobodny tekst | Poszkodowany przytomny, krwawienie z podudzia lewego, założona opaska uciskowa, proszę o karetkę | 96 / 100 | ok. 1,13 s |
| Szablon WeHelp | P2 K14 M40 przytomny, krwotok podudzie L, opaska 14:32, transport | 65 / 65 | ok. 0,89 s |
Szablon jest krótszy o jedną trzecią, a niesie więcej informacji: wiek, godzinę założenia opaski (krytyczną dla zespołu przejmującego) i dokładne miejsce — których w swobodnym zdaniu zabrakło. Oszczędność czasu nadawania to efekt uboczny; głównym zyskiem jest to, że koordynator nie musi dopytywać, a każda wymiana pytanie–odpowiedź to kolejne sekundy eteru i minuty dla poszkodowanego.
Pozostałe zasady z naszej praktyki: osobny kanał z własnym kluczem dla zespołu medycznego, oddzielony od kanału organizatora; wiadomości krytyczne zawsze jako prywatne do koordynatora, bo tylko one mają prawdziwe potwierdzenie odbioru; test łączności z każdego punktu medycznego i każdej trasy patrolu przed otwarciem bram; zapasowe zasilanie węzłów stałych. Projekt takiej sieci — od doboru technologii po test zasięgu w terenie — to zakres naszej usługi awaryjnej łączności kryzysowej Meshtastic i MeshCore.
Czego Meshtastic nie zastąpi
Mówimy to wprost, bo od tego zależy bezpieczeństwo: Meshtastic nie jest systemem powiadamiania ratunkowego. Nie połączy się z numerem 112, nie przenosi głosu i nie gwarantuje czasu dostarczenia — wiadomość może dotrzeć po kilku sekundach albo wcale, jeśli łańcuch radiowy się urwie. Zasięg zależy od terenu i wysokości anten: w gęstej zabudowie bywa to kilkaset metrów między węzłami, przy widoczności optycznej z wysokiego punktu — kilometry. Dlatego obietnice „X kilometrów” bez opisu terenu traktujemy z dystansem i zawsze sprawdzamy zasięg na miejscu.
W naszych zabezpieczeniach łączność awaryjna LoRa jest warstwą zapasową i uzupełniającą: działa obok telefonów i radiotelefonów, przejmuje komunikację, gdy one zawiodą, i daje koordynatorowi podgląd pozycji patroli. Wezwanie Zespołu Ratownictwa Medycznego zawsze idzie kanałem, który dociera do dyspozytora — telefonem, a gdy sieć komórkowa jest przeciążona, przez punkt, który ma działające połączenie. Jeśli zastanawiasz się, czy Twoje wydarzenie w ogóle wymaga obsady medycznej, zacznij od poradnika ilu ratowników na imprezie masowej.
Meshtastic nie jest też jedyną technologią sieci LoRa mesh. Przy planowanej, rozległej infrastrukturze z wieloma stałymi przekaźnikami lepiej sprawdza się często MeshCore, który zamiast rozgłaszania wyznacza trasy. Różnice między nimi opisaliśmy na stronie łączności awaryjnej — wybór to decyzja projektowa, nie kwestia gustu.
Najczęstsze pytania o łączność awaryjną Meshtastic
Czy Meshtastic działa bez zasięgu GSM i internetu?
Tak. Węzły komunikują się ze sobą bezpośrednio drogą radiową w paśmie 868 MHz. Telefon służy tylko jako ekran i klawiatura połączona z radiem przez Bluetooth lub USB — nie potrzebuje karty SIM ani internetu.
Czy do używania Meshtastic potrzebne jest pozwolenie radiowe?
Nie, w Europie Meshtastic pracuje w paśmie 869,40–869,65 MHz przeznaczonym dla urządzeń bliskiego zasięgu, które można używać bez pozwolenia. Trzeba jednak zachować limit mocy 500 mW e.r.p. i aktywności nadajnika 10% na godzinę — firmware pilnuje tego automatycznie przy poprawnie ustawionym regionie EU_868.
Jaki zasięg ma łączność awaryjna Meshtastic?
Zależy od terenu i wysokości anten: od kilkuset metrów między węzłami w gęstej zabudowie do kilometrów przy widoczności optycznej. Sieć mesh wydłuża zasięg, bo każdy węzeł przekazuje wiadomość dalej — domyślnie do 3 przeskoków, maksymalnie 7. Zasięg zawsze sprawdzamy w terenie przed wydarzeniem.
Czy wiadomości w Meshtastic są szyfrowane?
Tak. Kanały są szyfrowane kluczem AES, a wiadomości prywatne kryptografią klucza publicznego. Węzły pośredniczące przekazują pakiet bez dostępu do treści. Warunek: kanał zespołu musi mieć własny klucz, a nie domyślny, publicznie znany.
Czy Meshtastic może zastąpić telefon alarmowy 112?
Nie. Meshtastic nie łączy się z numerami alarmowymi, nie przenosi głosu i nie gwarantuje czasu dostarczenia. W zabezpieczeniach medycznych używamy go jako warstwy zapasowej i uzupełniającej — wezwanie Zespołu Ratownictwa Medycznego zawsze idzie kanałem, który dociera do dyspozytora.
Potrzebujesz łączności awaryjnej na wydarzenie lub dla zespołu?
Zadzwoń lub napisz: opisz teren, liczbę osób w zespole i czas trwania działań, a zaproponujemy technologię i układ sieci. Wdrażamy łączność kryzysową Meshtastic i MeshCore w Warszawie, Piasecznie i okolicach — także jako element zabezpieczenia medycznego.