(dead bts? this is fomo cure) by jackis

Metro 2033 scenario
Artem dawno nie był na powierzchni. Wiele się zmieniło od ostatniego razu, gdy czuł w płucach filtrowane, mroźne powietrze. Rozejrzał się dookoła, szukając czegokolwiek, co przykułoby jego uwagę. Było pusto. Młynarz nie będzie zadowolony z kolejnego pustego raportu zwiadowcy.
Daleko na horyzoncie wyłonił się szkielet, z tej odległości przypominający tanią karykaturę wieży Eiffla. Jednak na jego szczycie coś błyszczało - solarny przekaźnik wiadomości - Nowy.
Artem rozłożył małą teczkę obłożoną zużytymi panelami fotowoltaicznymi. W środku powitały go niebieskie literki ekranu OLED. Próbując nawiązać łączność z zaprzyjaźnioną stacją metra, mimowolnie pomyślał o potworach wyczulonych na najmniejszy dźwięk; o starych radiach, których szum przyciągał śmierć.
Ekran zamrugał. A potem ożył.
NODE: WIEŻA_01 (SNR: 7dB) - Direct
NODE: POLIS_BRAMA (SNR: -5dB) - 1 hops
NODE: HANZA_HQ (SNR: -12dB) - 2 hops
Na ekran wylała się lawina zakolejkowanych wiadomości. Dane telemetryczne, raporty o ruchach mutantów, prośba o filtry z Czerwonej Linii.
Raport: Powierzchnia czysta. Znalazłem nowy węzeł. Sieć działa.
Hej!
Po krótkim post-apo wstępie zacznę od tego, że nie chcę romantyzować końca świata, chcę zarazić czytelnika radością z budowania alternatywnej komunikacji, Dreszczyku emocji, gdy widzisz, że twoja pierwsza wiadomość leci w eter bez pośrednictwa jakiegokolwiek operatora.
Terminy, w artykule: “płytka”, “urządzenie”, “węzeł” dotyczą płytki z mikrokontrolerem z wbudowanym modułem LoRa.
Meshtastic na początku brzmi jak zajęcie dla preppersów. To połączenie krótkofalarstwa z internetem rzeczy. Okazuje się że te światy nie są od siebie tak odległe. Każda osoba, z którą rozmawiałem o tym projekcie dowiaduje się czegoś nowego (razem ze mną).
Jest to projekt open-source umożliwiający budowę off-gridowej, szyfrowanej sieci mesh na tanich ogólnodostępnych urządzeniach. Zagłębienie się w tym temacie zaowocuje lepszym zrozumieniem działania sieci, transmisji bezprzewodowej, a może także programowania.
Jak to właściwie działa?
W największym skrócie:
- Masz telefon (z aplikacją Meshtastic).
- Łączysz go przez Bluetooth z małą płytką (np. Heltec, RAK).
- Ta płytka to Twój modem LoRa (Long Range).
- Wysyłasz wiadomość. Płytka wysyła ją w eter.
- Inne płytki (nazywane węzłami) w okolicy ją odbierają i przekazują dalej.

W ten sposób budowana jest sieć utrzymywana przez społeczność. Niektóre urządzenia to węzły klienckie (te, które nosimy przy sobie). Inne to routery - umieszczone w strategicznych miejscach, stacjonarnie (np. na dachach), żeby zapewniać jak najlepsze pokrycie sieci.
Po co i jak tego używać?
To nie jest zamiennik internetu - ma ograniczoną przepustowość, jednak spełnia zadanie jako odporny system ratunkowy i platforma do zadań krytycznych w warunkach gdy brakuje tradycyjnej infrastruktury.
Niezależność w Sytuacjach Kryzysowych
Sieć Meshtastic służy jako zapasowy system komunikacji w przypadku awarii zasilania (blackout) lub katastrof naturalnych, gdy sieci komórkowe (GSM) zawodzą lub są przeciążone. Ponieważ węzły mogą być zasilane solarnie, zachowują operacyjność znacznie dłużej niż 72 godziny. Sieć żyje w każdym większym mieście i jest utrzymywana przez społeczność, której celem jest zapewnienie komunikacji w obrębie miasta.

Pakiet startowy
Zawsze kupuj płytkę wspieraną przez projekt i wymienioną w oficjalnej dokumentacji. Ułatwi to instalację stabilnego oprogramowania i ominięcie konieczności samodzielnej kompilacji.
Sprzęt
- Heltec V3 lub Wireless Stick Lite V3 - najpopularniejsze i dobrze wspierane, niestety prądożerne. Wifi pozwala na łatwą integrację z innymi urządzeniami, np. skrypt bota napisany w Pythonie. Pewny wybór do testów.
- Płytki nRF52 (np. RAK, Seeed SenseCAP T114) - idealne dla długiej pracy na baterii. Są droższe i nie mają wifi, stosowane do urządzeń solarnych, w terenie.
Oprogramowanie
Sprawdź w Menedżerze Urządzeń, czy po podłączeniu płytki pojawia się “Nieznane urządzenie” lub port COM. Jeśli płytka nie jest widoczna, zainstaluj odpowiedni sterownik dla:
Po instalacji w Menedżerze Urządzeń poszukaj sekcji “Porty (COM i LPT)”. Powinieneś tam widzieć np. Silicon Labs CP210x USB to UART Bridge (COM3).

Skorzystaj z web flasher.
Konfiguracja
- Przed uruchomieniem podłącz antenę, w innym wypadku ryzykujesz uszkodzeniem transmitera.
- Połącz się z urządzeniem po bluetooth. Jeśli twoja płytka ma ekran OLED, to zobaczysz na nim PIN potrzebny do parowania urządzeń. Jeśli jednak płytka nie ma ekranu, możesz odczytać PIN w monitorze portu szeregowego (serial monitor).
- Ustaw właściwą rolę:
- Urządzenie mobilne lub w pomieszczeniu Ustaw rolę CLIENT_MUTE. Takie urządzenie odbiera i wysyła, ale nie retransmituje dalej. Retransmisja ze słabej lokalizacji (np. w mieszkaniu) tylko pogarsza jakość sieci.
- Węzeł stacjonarny z anteną na zewnątrz? Ustaw rolę CLIENT
- Unikaj Router/Repeater: Tych ról używaj tylko, jeśli montujesz węzeł bardzo wysoko (np. na maszcie), masz świetny zasięg i wiesz, co robisz, ponieważ źle umiejscowiony Router może zaszkodzić sieci.
- Włącz Szyfrowanie: Komunikacja odbywa się w wirtualnych kanałach. Domyślny kanał publiczny (często “LongFast”) jest szyfrowany łatwo dostępnym kluczem (
AQ==), więc w praktyce nie zapewnia poufności. Aby zapewnić prywatność, musisz utworzyć nowy kanał prywatny i zmienić klucz szyfrujący.

Szyfrowanie wiadomości
Pakiet Meshtastic ma:
- Nagłówek (niezaszyfrowany) - zawiera informacje o routowaniu, NodeID nadawcy, etc.
- Payload (zaszyfrowany) - zależy od kanału i PSK
Wiadomości na kanale
Są szyfrowane symetrycznie AES-CTR. Obce węzły (które nie znają PSK) będą retransmitować Twoje pakiety nawet jeśli nie potrafią ich odszyfrować.
W Meshtastic hash kanału jest obliczany zarówno z nazwy kanału i PSK. źródło
uint8_t h = xorHash((const uint8_t *)name, strlen(name));
Uwaga! Jeśli zmienisz tylko nazwę kanału (zachowując PSK), węzły nie będą się komunikować - bo generują inny hash kanału.
DM
Są szyfrowane asymetrycznie algorytmem X25519 + klucz publiczny. W wersji 2.5+ Meshtastic każde urządzenie generuje losowy klucz prywatny i klucz publiczny (X25519)
- Gdy wysyłasz DM do konkretnego węzła, szyfruje się go kluczem publicznym odbiorcy. źródło
- Tylko odbiornik z kluczem prywatnym może odszyfrować wiadomość.

Kompilacja Firmware
Zaczynałem przygodę w lutym 2024 z płytką Heltec v2, minęło już sporo czasu, a projekt rozwija się tak dynamicznie, że wsparcie dla starszych układów wygasa, lub gotowe pliki instalacyjne (.bin) przestają być publikowane.
Kompilowanie nie jest takie trudne, jak mogłoby się wydawać.
Pomocne komendy Linux
|
|
Pomocne komendy na Windows
Korzystam z gotowych skryptów udostępnionych w repozytorium (device-update.bat) meshtastic.
|
|
Bibliografia i baza linków Meshtastic
Na początek
- Meshtastic Roles Guide – Szczegółowy przewodnik po konfiguracji ról urządzeń (Router, Client, itp.).
- Wszechsiec.pl – Baza wiedzy i odpowiedzi na najczęstsze pytania (FAQ).
- wiki.868.band - Wiki Meshtastic Warszawa
Oficjalna Dokumentacja i Narzędzia Projektu
- Meshtastic.org – Oficjalne źródło dokumentacji, plików firmware oraz głównych informacji o projekcie.
- GitHub Meshtastic – Główne repozytorium kodu, miejsce zgłaszania błędów i śledzenia rozwoju projektu.
Społeczności i Fora Lokalne (Polska i Świat)
- Matrix Group PL – Polska grupa dyskusyjna na komunikatorze Matrix.
- Signal Group – Warszawska lokalna społeczność Meshtastic.
- Forum Meshtastic POP – Archiwum wiedzy i forum dyskusyjne dla polskiej społeczności.
- Diver.net.pl – Blog zawierający poradniki, opinie i testy sprzętu.
- Facebook Meshtastic Polska – Największa polska społeczność na Facebooku, pomoc i nowości.
- Facebook Global Group – Międzynarodowa grupa pełna inspiracji i projektów DIY ze świata.
- WhatsApp Chat – Komunikacja grupowa dla użytkowników komunikatora WhatsApp.
- Meshtastic Argentina – Zbiór narzędzi i repozytoriów od aktywnej społeczności z Argentyny.
- Austin Mesh – Amerykańska grupa wyznaczająca wzorce dla miejskich sieci mesh.
Mapy, Statystyki i Wizualizacja Sieci
- Pole1.co.uk Maps – Analiza zasięgu i mapy sieci w Wielkiej Brytanii.
- Mesh Coverage Map – Narzędzie GitHub do analizy pokrycia terenu sygnałem.
- Network Visualization – Wizualizacja topologii sieci i połączeń między węzłami (grafy).
Hardware, Projekty DIY i Modyfikacje
- Faketec Hand Node – Projekt obudowy do druku 3D w stylu Cyberdeck/Faketec.
- Hacker Pager – Hardware’owy projekt pagera z wyświetlaczem opisanym na Hackaday.
- Solar Powered Meshtastic – Zasilanie słoneczne węzła na Alasce.
Wiedza Techniczna, Firmware i Integracje
- Lista ciekawych projektów
- Loranet.pl – Portal z zasobami oraz alternatywnym oprogramowaniem (Firmware+).
- Timendus Meshbot – Bot w języku Python do automatyzacji zadań w sieci.
- Meshbot Control – Poradnik sterowania urządzeniami zewnętrznymi (IoT) przez Meshtastic.
- MQTT Broker – Publiczny broker MQTT łączący sieć radiową z internetem.
- Advanced Settings Guide – Zaawansowany poradnik tuningu ustawień sieciowych.
- Gry na Meshtastic – Kolekcja gier tekstowych możliwych do uruchomienia w sieci mesh.

Zrozumieć dBm
Wartości RRSI (sygnał)
czyli moc sygnału w dBm
Moc z jaką urządzenie nadaje naszą wiadomość.
Sygnał -30dBm? Jak moc może być ujemna? Nie przykładałem do tego wagi, aż do momentu gdy znajomy wyjaśnił o co tak naprawdę chodzi. Zacznijmy od tego, że dBm to skala logarytmiczna, odnosząca się do 1 miliwata (mW). Moc nadawania urządzenia wygląda następująco:
| dBm | mW |
|---|---|
| +6 | 4 |
| +3 | 2 |
| 0 | 1 |
| -3 | 0.5 |
| -6 | 0.25 |
| -90 | 0.000000001 |
SNR (szum)
Jak usłyszeć szept w panującym dookoła hałasie?
SNR (signal to noise ratio) to stosunek sygnału od szumu.
SNR 0 dB: Siła sygnału (szeptu) jest taka sama jak siła szumu tła (gwaru w pokoju).SNR 10 dB: Sygnał jest 10 razy silniejszy od szumu. Czysty odbiór.
Tu pojawia się ujemny SNR - jakim cudem odbieram transmisję z -12 dB. To znaczy, że sygnał był wielokrotnie słabszy (ok. 16x) niż otaczający go szum.
To jest właśnie sedno modulacji LoRa. Sygnał jest rozłożony w czasie i paśmie w tak unikalny sposób, że odbiornik, który zna ten wzór, potrafi go “wyciągnąć” spod poziomu szumu. To jak usłyszeć kogoś szepczącego konkretną melodię po drugiej stronie głośnego stadionu - ignorujesz cały gwar i skupiasz się tylko na tej melodii.
Połączenie Kropek (Czułość, Prędkość i Kompromisy)
Teraz łączysz obie te wartości (RSSI i SNR) z realiami sprzętu, używając drugiego fragmentu
Czułość Odbiornika" (Sensitivity): To jest najcichszy szept (najniższe RSSI), jaki odbiornik jest w ogóle w stanie próbować usłyszeć. Maksymalna czułość LoRa to aż -149 dBm. źródło Jeśli jednak chcesz korzystać z takiej czułości Musisz zwolnić transmisję do 0.02 kbit/s, ale taka prędkość nadaje się do wysłania czujnika temperatury raz na godzinę, nie do rozmowy.
Zrozumienie RSSI, SNR i Czułości pokazuje, że nie ma “najlepszych” ustawień. Jest tylko fizyka i kompromisy. Wybierasz między zasięgiem, prędkością a zużyciem baterii.