Przy kilku urządzeniach mesh szybko przybywa aplikacji, kabli i osobnych historii rozmów. Mesh-Client, darmowy program open source (licencja GPL-3.0) od społeczności Colorado Mesh z amerykańskiego Kolorado, pozwala obsłużyć trzy sieci w jednym oknie. Przełączniki MT, MC i RN wybierają widok sieci, a pozostałe sesje mogą pracować w tle. Każda sieć działa osobno, a program sam nie przekazuje rozmów między nimi.
Próby przeprowadziliśmy 18 października 2026 roku w wersji 6.4.0 dla Windows. Połączenia z radiami Meshtastic i MeshCore działały przez Bluetooth LE, czyli energooszczędny Bluetooth. Reticulum sprawdziliśmy przez internet. Były to krótkie próby funkcjonalne, bez pomiarów zasięgu, opóźnień i długotrwałej stabilności. Program ma również wydania na macOS i Linuksa, lecz tych systemów nie testowaliśmy.
Meshtastic: radio, rozmowy i mapa
Po połączeniu z radiem z firmware’em 2.8.0.ad0628d (kompilacja testowa z lipca 2026, wcześniejsza niż wydania 2.8.0) aplikacja pokazała stan Configured (konfiguracja radia wczytana), odczytała pięć kanałów i bazę 102 węzłów. Działały podgląd baterii oraz mapa ze znanymi pozycjami urządzeń. Ta liczba obejmuje wszystkie zapamiętane węzły, także te, których w czasie próby nie było słychać.
W czacie pojawiła się wiadomość wychodząca ze statusem Heard by network (wiadomość usłyszana przez sieć) oraz wiadomość przychodząca. Wysyłanie i odbiór przez podłączone radio działały. Połączenie MQTT pozostawało wyłączone. MQTT to protokół, którym urządzenia i aplikacje wymieniają wiadomości przez serwer w internecie; w tej próbie z niego nie korzystaliśmy.
Praca na komputerze ułatwia czytanie listy węzłów, przełączanie kanałów i pisanie na zwykłej klawiaturze. Ustawienia radia, modułów i administracji są pod ręką, ale ich zmian ani zdalnej konfiguracji nie sprawdzaliśmy.
MeshCore: wysyłanie, odpowiedź i wybór scope
Drugie połączenie Bluetooth zestawiliśmy z T-Deckiem Plus firmy LilyGo z firmware’em wadamesh beta_97. To testowa wersja dotykowego firmware’u MeshCore, który opisaliśmy w tekście „WADAMESH: wiadomości i mapa MeshCore na ekranie radia”. Mesh-Client odczytał kontakty i kanały, wyświetlał nowe wiadomości oraz pozycje kontaktów na mapie. Początkowo lista zawierała 70 kontaktów, później ich przybywało.
Wiadomość wysłana z Mesh-Client dotarła do innego urządzenia, a na ekranie odbiorcy pojawiła się także odpowiedź bota. Osobna krótka próba pokazała oznaczenie Heard by 3: radio usłyszało, jak trzy repeatery, czyli przekaźniki sieci, powtarzają wiadomość. O tym, ile osób ją przeczytało, ten wskaźnik nic nie mówi.
Obok przycisku wysyłania jest wybór scope, czyli regionu, w którym wiadomość ma się rozejść. W naszych próbach widoczne były regiony waw i pl-mz. Wersja 6.4.0 zapamiętuje scope osobno dla każdego kanału, więc rozmowa lokalna nie musi rozchodzić się po całej sieci. Scope nie zmienia częstotliwości ani zasięgu radia. Decyduje o tym, które przekaźniki podadzą wiadomość dalej, a to zależy od ich ustawień. Jak działają regiony, wyjaśnia pierwsza część cyklu „Regiony w MeshCore”.
Trafiliśmy też na błąd. Po otwarciu szczegółów rozmówcy panel pokazał Node-0, brak danych i komunikat Node not found (no encryption key), czyli „nie znaleziono węzła (brak klucza szyfrowania)”. Kanały mimo to działały: wiadomości wychodziły i przychodziły. Przyczyny nie ustaliliśmy.
Reticulum: udane połączenie przez internet
Reticulum to oparty na kryptografii stos sieciowy, czyli zestaw protokołów do budowy sieci lokalnych i rozległych na łatwo dostępnym sprzęcie. Radzi sobie przy bardzo małej przepustowości, więc może korzystać z radia LoRa, ale też z Wi-Fi czy internetu. W Mesh-Client uruchamia się inaczej niż dwie pozostałe sieci. Aplikacja startuje dodatkowy proces obsługujący sieć, korzysta z tożsamości użytkownika (pary kluczy, od której pochodzi jego adres) i pozwala dodać połączenie internetowe lub radiowe. Wiadomości obsługuje LXMF, czyli mechanizm wymiany korespondencji w Reticulum.
Najpierw wybraliśmy z listy w programie huby, czyli publiczne serwery, przez które stacje Reticulum łączą się w internecie. Adres RNS Dublin Mainnet nie rozwiązywał się w DNS, czyli systemie zamieniającym nazwę serwera na adres IP. RNS Between The Borders odmawiał połączenia TCP. Przy ponownym sprawdzeniu 22 października było tak samo, a RMAP World przyjmował połączenia. Przewodnik w programie radzi w takiej sytuacji wybrać inny hub.
Po przejściu na RMAP World wszystkie trzy kontrole przewodnika pierwszego uruchomienia (działanie sieci, gotowość do wymiany wiadomości i wybrane połączenie) pokazały stan gotowości. Połączenie internetowe działało, a lista partnerów (ang. peers) rosła: na zapisanym zrzucie było 227 wpisów. Partnerzy to adresy i usługi Reticulum, których ogłoszenia dotarły do programu, więc nie każdy wpis to człowiek gotowy do rozmowy. Dwa niedostępne huby wyłączyliśmy w ustawieniach połączeń. Publiczny hub widzi adres IP komputera, dlatego przewodnik radzi zaczynać od jednego.
Potwierdziliśmy uruchomienie sieci i wykrywanie partnerów, ale nie wysłaliśmy wiadomości LXMF do drugiej osoby. W diagnostyce pozostał również wpis o zamknięciu połączenia RMAP World przez serwer, choć później interfejs pokazywał aktywne połączenie i przybywały wpisy. Próba była za krótka, żeby ocenić stabilność usługi.
Osobno przygotowywaliśmy T-Decka Plus jako RNode, czyli modem radiowy LoRa sterowany przez komputer. Po pierwszej instalacji urządzenie nie odpowiadało przez USB, więc przywróciliśmy kopię zapasową MeshCore. Udała się dopiero późniejsza instalacja, przez stronę komunikatora Ratspeak opartego na Reticulum: urządzenie zgłosiło się jako RNode 1.86 z układem radiowym SX1262. Na tym skończyliśmy. W Mesh-Client nie dodaliśmy interfejsu radiowego, a bez drugiej stacji i uzgodnionych parametrów nie było próby przez LoRa. Udane połączenie z RMAP World szło przez internet.
Możliwości, których nie sprawdziliśmy
Dokumentacja wersji 6.4.0 opisuje również poniższe funkcje.
| Obszar | Do czego może się przydać |
|---|---|
| Meshtastic | Konfiguracja kanałów i modułów, wykresy odczytów czujników oraz zdalne zarządzanie węzłami przez własne radio, z odpowiednimi uprawnieniami. |
| MeshCore | Panel repeaterów, czyli przekaźników: stan urządzenia, sąsiedzi i sprawdzanie trasy, a od wersji 6.4.0 także drzewo regionów i uprawnienia do rozsyłania. Zakładka Rooms obsługuje room servery, czyli węzły MeshCore działające jak tablica ogłoszeń. |
| Mapa ruchu | Widok Live traffic pokazuje obserwacje pakietów. Dla Meshtastic korzysta z danych odbieranych przez podłączone radio lub MQTT. Dla MeshCore dostępne są dane z lokalnego radia oraz publicznych serwerów obserwujących sieć, opartych na MeshCore Beacon lub CoreScope. |
| Reticulum | Rozmowy LXMF, czat RRC (Reticulum Relay Chat, podobny do IRC), tekstowe strony Nomad Network, przesyłanie plików, rozmowy głosowe LXST i gry: kółko i krzyżyk, szachy oraz czwórki. Przydatność głosu zależy od przepustowości wybranego łącza. |
| Integracje | MQTT oraz przekazywanie pozycji do aplikacji TAK, używanych do wspólnej mapy sytuacyjnej. Wysyłanie z TAK do kanałów mesh wymaga osobnego włączenia. |
Program przechowuje historię lokalnie i oferuje wyszukiwanie, oznaczanie wiadomości gwiazdką oraz eksport rozmowy do pliku. Program ma 16 wersji językowych, w tym polską; korzystaliśmy z niego podczas próby Reticulum. Niektóre tłumaczenia brzmią jednak dosłownie, np. zakładka połączeń jest opisana jako „Więzi”.
Od czego zacząć
Najłatwiejszy początek to jedna sieć i jedno urządzenie. Instalatory są dostępne na stronie wydania Mesh-Client 6.4.0. Wersja dla Windows wymaga Windows 10 od wydania 1809 lub Windows 11. Dla komputerów z procesorami Intel i AMD wybierz instalator x64 (Mesh-client-Setup-6.4.0.exe), a dla komputerów z Windows na procesorach ARM, np. Snapdragon – wersję ARM64 (Mesh-client-Setup-6.4.0-arm64.exe). Każdy instalator ma około 200 MB. Wersja na macOS wymaga systemu 13 Ventura lub nowszego, a na Linuksa jest w formatach AppImage, .deb, .rpm i Flatpak.
Dla Meshtastic lub MeshCore wybierz protokół, otwórz panel połączenia i wskaż Bluetooth, USB albo połączenie sieciowe zgodne z radiem. Parowanie Bluetooth można przeprowadzić w Mesh-Client. Jeśli program poprosi o PIN, wpisz kod parowania radia. Gdy urządzenie MeshCore jest już połączone z aplikacją w telefonie, rozłącz ją przed próbą połączenia z komputera. Po stanie Configured sprawdź wczytane kanały, odbiór oraz doręczenie krótkiej wiadomości na drugim urządzeniu.
Reticulum można poznać bez wymiany firmware’u: przewodnik pozwala zacząć od publicznego huba internetowego. Gotowy interfejs i przybywający partnerzy potwierdzają działanie połączenia; następnym krokiem jest umówiona wymiana wiadomości z konkretnym odbiorcą. Jego adres LXMF wpisuje się w wyszukiwarce na liście partnerów. Do próby radiowej trzeba przygotować zgodne RNode i wspólne ustawienia lokalnej sieci. Częstotliwość i moc RNode ustawia się ręcznie, więc trzeba trzymać się limitów obowiązujących w Polsce i UE: w paśmie 869,4–869,65 MHz do 500 mW e.r.p. przy 10% czasu nadawania, a w pozostałych kanałach 868 MHz zwykle do 25 mW e.r.p. przy 0,1–1%. Limit obejmuje moc razem z zyskiem anteny.
Po ponownym uruchomieniu Mesh-Client próbuje połączyć się z zapamiętanymi radiami Meshtastic i MeshCore. Automatyczny start Reticulum włącza się osobno opcją Auto-start.
W opisanym zakresie Mesh-Client sprawdził się jako wspólny pulpit do podstawowej pracy z Meshtastic i MeshCore oraz do poznania Reticulum. Do poprawy są panel szczegółów kontaktu w MeshCore i część polskich tłumaczeń. Program zmienia się szybko: wersja 6.0.0 wyszła pod koniec września, a 6.4.0 niecałe dwa tygodnie później, więc przed instalacją sprawdź na GitHubie, czy nie ma nowszego wydania.
Próby wykonano na sprzęcie prywatnym, kupionym samodzielnie. Opis łączy własne obserwacje z dokumentacją i notą wydania Mesh-Client 6.4.0 projektu Colorado Mesh.
