23 października 2026 roku CascadiaMesh, społecznościowa sieć MeshCore z północno-zachodniego wybrzeża USA, opublikowała nowe wersje dwóch swoich projektów. WADAMESH-TAK to oprogramowanie układowe (firmware) dla urządzeń z ekranem, które działają bez telefonu, takich jak LilyGo T-Deck. Wyrosło z WADAMESH, który opisywaliśmy w artykule „WADAMESH: wiadomości i mapa MeshCore na ekranie radia”. MeshCore Open TAK to z kolei aplikacja na Androida, Windows, macOS i Linuksa, zbudowana na otwartym kliencie MeshCore Open.

Oba projekty są rozwidleniami (forkami): biorą kod innego projektu i dokładają do niego własne funkcje. CascadiaMesh doliczyła się ponad 240 zmian względem WADAMESH i ponad 320 względem MeshCore Open. Najwięcej uwagi przyciąga MediaMesh, ale w paczce jest też współpraca z aplikacjami TAK, szyfrowanie kluczem jednorazowym i nawigacja.

Jedno zdjęcie to dziesiątki pakietów

Wiadomość tekstowa w MeshCore mieści się zwykle w jednym pakiecie radiowym. Zdjęcie trzeba pociąć na wiele części. Nawet mocno skompresowane, w najmniejszym wariancie zajmuje około 2,7 KB, czyli 18 pakietów. Każdy z nich nadaje najpierw autor, a potem każdy repeater po drodze.

Wszyscy w sieci dzielą jeden kanał radiowy. Gdy dwa urządzenia nadają naraz, zagłuszają się, więc reszta musi poczekać. Seria pakietów ze zdjęciem potrafi w ten sposób zająć eter na kilka minut, a wiadomości innych osób stoją wtedy w kolejce.

Osobny pas dla zdjęć i głosu

MediaMesh działa jak osobny pas dla ciężarówek na autostradzie. Zdjęcia i nagrania głosowe jadą drugim kanałem, który w ustawieniach nazywa się radio2. Na głównym zostaje cała reszta: tekst, ogłoszenia węzłów (advert), potwierdzenia odbioru (ACK) i pozycje członków zespołu.

Drugi kanał jest szerszy: domyślnie ma 250 kHz, a kanał główny CascadiaMesh 62,5 kHz. Szerszy kanał to szybsze nadawanie. Przy tym samym współczynniku rozpraszania (SF, od ang. spreading factor; im wyższy, tym dalej, ale wolniej) pakiet trwa mniej więcej cztery razy krócej. Ceną jest zasięg. Szerszy kanał zbiera więcej szumu, więc sygnał musi być silniejszy o około 6 dB. Gdy zasięgu brakuje, jest wariant 125 kHz: dwa razy wolniejszy od szybkiego, ale sięgający o około 40% dalej.

Schemat: wąski kanał główny MeshCore (62,5 kHz) na tekst i szerszy kanał MediaMesh (250 kHz) na zdjęcia i głos, oba obsługiwane przez jedno radio
MediaMesh dzieli ruch na dwa kanały, a jedno radio słucha ich na zmianę.Grafika: wygenerowano AI (Claude) na podstawie filmu CascadiaMesh

Nie trzeba do tego drugiego radia. Jeden układ radiowy, na przykład popularny SX1262, przełącza się między kanałami kilkadziesiąt razy na sekundę i nasłuchuje na zmianę. Pakiety MediaMesh zaczynają się od dłuższego sygnału wstępnego (preambuły), żeby skaczący między kanałami odbiornik zdążył je wyłapać. Ma to swoją cenę: gdy radio odbiera albo nadaje na jednym kanale, drugiego w tym czasie nie słyszy. Duży ruch zdjęć oznacza więc trochę gorszy odbiór sieci głównej. Dokumentacja przytacza test, w którym radio z dwoma profilami odebrało 197 z 200 pakietów.

Zapowiedź w sieci głównej, zdjęcie na MediaMesh

Wysłanie zdjęcia przebiega w dwóch krokach. Najpierw w sieci głównej idzie krótka zapowiedź, czyli zwykła wiadomość tekstowa z identyfikatorem zdjęcia. Gdy odbiorca jej dotknie, aplikacja prosi o pakiety, a te płyną już przez MediaMesh. Brakujące części dopytuje osobno. Na kanale grupowym jedna transmisja wystarcza wszystkim chętnym.

Schemat: zapowiedź zdjęcia idzie siecią główną, a pakiety zdjęcia kanałem MediaMesh przez repeater z nasłuchem i nadawaniem
Zdjęcie wychodzi w dwóch krokach: zapowiedź w sieci głównej, dane na MediaMesh.Grafika: wygenerowano AI (Claude) na podstawie filmu CascadiaMesh

Radio bez MediaMesh zobaczy zapowiedź, ale zdjęcia nie pobierze. Pod każdym odebranym zdjęciem aplikacja pisze, którą drogą dotarło. Mała ikona anteny świeci, gdy w ciągu ostatnich dwóch godzin w okolicy było słychać ruch MediaMesh. W MeshCore Open TAK zdjęcia i głos idą wyłącznie przez MediaMesh. Bez drugiego kanału aplikacja ich nie wyśle.

Zasięg MediaMesh kończy się tam, gdzie kończą się obsługujące go repeatery. Repeater potrzebuje firmware'u z drugim profilem radiowym. CascadiaMesh używa do tego Keymind Cascade, wersji MeshCore rozwijanej przez Mike'a Carpera, w wydaniu 1.18 lub nowszym. Drugi kanał musi być w nim ustawiony na nasłuch i nadawanie (rxtx). Repeater, który tylko słucha, nie przekaże zdjęć dalej. W konsoli repeatera wygląda to tak:

set radio2 <częstotliwość w MHz>,250,7,5,rxtx
set radio2.cross off
get radio2.status

Kolejne wartości w pierwszym poleceniu to częstotliwość, szerokość kanału w kHz, SF, współczynnik kodowania i tryb pracy. radio2.cross off rozdziela ruch: zdjęcia i głos zostają na MediaMesh, zwykłe wiadomości w sieci głównej. To samo da się ustawić w aplikacji po zalogowaniu się do repeatera jako administrator. Repeatery bez MediaMesh działają w sieci głównej jak dotąd. Przycisk Find MediaMesh pyta repeatery w zasięgu, jakich ustawień używają, i pozwala od razu do nich dołączyć.

Głos i zdjęcia w liczbach

Nagranie głosowe trwa do 20 sekund. Do wyboru są dwa kodeki, czyli sposoby kompresji mowy. Codec2 pracuje z szybkością 1200, 1600 albo 3200 bitów na sekundę; przy 1200 bit/s sekunda mowy zajmuje 150 bajtów. Mimi to kodek oparty na sieci neuronowej. Przy około 1,1 kbit/s brzmi naturalniej, ale wymaga jednorazowego pobrania modelu o rozmiarze 223 MB. Nagrania Codec2 mają format VE3, ten sam co w aplikacji MeshCore SAR.

Zdjęcia aplikacja kompresuje w formacie AV1 i sama dobiera rozdzielczość do limitu bajtów:

Wariant Rozmiar Pakiety Czas nadawania (250 kHz, SF7)
Standard (domyślny) 2,7 KB 18 ok. 3 s
More detail 5,5 KB 36 ok. 5 s
Sharp 11 KB 71 ok. 11 s

Największy wariant, Super Sharp, ma do 1024 pikseli i może zająć ponad 200 pakietów. Opcja skupienia na twarzach i tekście daje im więcej bajtów i ostrzega, gdy drobny napis nie będzie czytelny.

Osobną grupą są zdjęcia odtwarzane przez sztuczną inteligencję. Szkic AI zajmuje około 150 bajtów, a telefon odbiorcy rysuje z niego obraz na nowo. Wersja HD to 1–2 KB i daje wynik dużo bliższy oryginałowi, ale wymaga pobrania modelu o rozmiarze około 1,9 GB, a odtworzenie obrazu trwa minuty. To rekonstrukcja, nie fotografia, i dokumentacja ostrzega, że może się wyraźnie różnić od oryginału. Warto o tym pamiętać, gdy obraz ma pomóc na przykład w akcji poszukiwawczej.

TAK, mapy i szyfr z kluczem jednorazowym

TAK (Team Awareness Kit) to rodzina aplikacji mapowych do koordynacji ludzi w terenie: ATAK na Androida, WinTAK na Windows i iTAK na iPhone'a. Korzysta z niej wiele zespołów ratowniczych, straży pożarnych i służb zarządzania kryzysowego. MeshCore Open TAK może przekazywać do niej pozycje i czat zespołu na dwa sposoby: przez jeden telefon połączony z serwerem TAK albo bez serwera, gdy ATAK działa w tej samej sieci Wi-Fi. Pinezki, trasy i rysunki da się wymieniać z ATAK, WinTAK i iTAK, a wtyczka do ATAK pozwala jego użytkownikom dołączyć do zespołu w sieci MeshCore.

Do pracy zespołu w terenie aplikacja ma też:

  • pozycje członków zespołu z rolami i statusem, alarm SOS i inne alerty,
  • pinezki taktyczne (np. ostatnie znane położenie, punkt zbiórki, zagrożenie, lądowisko) ze zdjęciem albo nagraniem,
  • gotowe wzory meldunków: SALUTE (o zaobserwowanej sytuacji) i CASEVAC (wezwanie ewakuacji rannego),
  • informację, które repeatery i osoby z zespołu odebrały wiadomość,
  • nawigację z komunikatami głosowymi, mapy offline i powrót po zapisanym śladzie,
  • wykrywanie dronów nadających sygnał identyfikacyjny Remote ID oraz amerykańskich kamer Flock, które odczytują tablice rejestracyjne.

Wiadomości prywatne i kanały można szyfrować kluczem jednorazowym (one-time pad, OTP). Obie strony mają ten sam długi ciąg losowych bajtów i każdy jego fragment zużywają tylko raz. Klucz przekazuje się kodem QR, a urządzenia potwierdzają dźwiękiem, że mają ten sam, nie ujawniając go. Jest też blokada hasłem i szybkie skasowanie klucza w razie zagrożenia. Tak samo szyfrowane są zdjęcia w wiadomościach prywatnych.

Firmware WADAMESH-TAK instaluje się z przeglądarki przez MediaMesh Flasher. Obsługuje dziewięć urządzeń: LilyGo T-Deck, ThinkNode M9, T-LoRa Pager, T-Display P4, Heltec V4, Heltec V4-R8, Wio Tracker L2 oraz CrowPanel Advance 3.5 i 5.0. Nie na każdym zmieszczą się wszystkie funkcje. Kolejne wersje radio pobiera przez Wi-Fi, z możliwością powrotu do starszej, a repeater da się zaktualizować drogą radiową, bez kabla. WADAMESH-TAK jest udostępniany na licencji GPL-3.0, a MeshCore Open TAK na licencji MIT.

Co to oznacza w Polsce

MediaMesh powstał dla amerykańskiej sieci i ma amerykańskie ustawienia. Domyślny kanał 911,150 MHz leży w paśmie 902–928 MHz, w którym w USA mogą pracować takie urządzenia. W Polsce i całej Unii Europejskiej nadawanie tam jest niedozwolone. WADAMESH-TAK to uwzględnia: gdy kanał główny radia leży poza pasmem amerykańskim, drugi kanał startuje wyłączony.

Kto chciałby wypróbować MediaMesh u nas, musi sam znaleźć mu miejsce w paśmie 868 MHz i zmieścić się w limitach. Europejskie ustawienia MeshCore pracują w podpaśmie 869,4–869,65 MHz, gdzie wolno nadawać z mocą do 500 mW e.r.p. (razem z zyskiem anteny) przez najwyżej 10% czasu. Całe to podpasmo ma 250 kHz szerokości, więc szybki kanał 250 kHz nie zmieści się w nim obok głównego. Zmieściłby się najwyżej wariant 125 kHz, a oba kanały dzieliłyby ten sam limit czasu nadawania. W pozostałej części pasma 868 MHz limit wynosi zwykle 25 mW e.r.p. przy 0,1–1% czasu nadawania, a zdjęcie to kilkadziesiąt pakietów. MediaMesh działa też tylko wtedy, gdy wszyscy uczestnicy i repeatery mają te same ustawienia, więc wybór kanału musiałaby uzgodnić cała lokalna społeczność. Dokumentacja projektu ustawień dla Europy nie podaje.

Reszta nowości drugiego kanału nie wymaga. MeshCore Open TAK działa ze zwykłym firmware'em companion MeshCore, czyli z radiem połączonym z telefonem lub komputerem. Współpracę z TAK, mapy, narzędzia zespołowe i szyfrowanie OTP można więc sprawdzić w polskiej sieci bez zmian w repeaterach. Zdjęć i nagrań głosowych ta aplikacja bez MediaMesh jednak nie wyśle.

Artykuł powstał na podstawie tekstu serwisu Mesh America, dokumentacji projektów WADAMESH-TAK i MeshCore Open TAK oraz filmu „CascadiaMesh | Introducing MediaMesh - A fastlane for Photos and Voice” z kanału CascadiaMesh.