Das Projekt Meshtastic entwickelt eine offene Kommunikationsplattform zum Aufbau eines autarken dezentralen Nachrichtennetzwerks, in dem jeder Knotenpunkt über benachbarte Punkte verbunden ist, ohne zentrale Router zu verwenden. Für die Signalübertragung werden Transceiver auf Basis des LoRa-Protokolls eingesetzt, die Daten im lizenzfreien Frequenzbereich mit Geschwindigkeiten von mehreren Kilobit pro Sekunde über Entfernungen von Dutzenden oder sogar mehreren Hundert Kilometern übertragen können (Benutzer von Meshtastic haben einen Rekord von 254 km aufgestellt).
Das Projekt kann zur Organisation der Kommunikation in schwer zugänglichem Gelände verwendet werden, bei Suchaktionen oder beim Sport (zum Beispiel beim Paragliding) in Gebieten ohne Infrastruktur oder unter schlechten Mobilfunkabdeckungsbedingungen. An bestimmten Stellen können Teilnehmer autonome Transceiver aufstellen, die Nachrichten weiterleiten und mit Solarzellen betrieben werden, während die Teilnehmer selbst lokale LoRa-Geräte haben können, die Signale senden und über eine Verbindung zu Smartphones per Bluetooth gesteuert werden.

Jeder Teilnehmer des Netzwerks kann Textnachrichten senden und empfangen sowie Geolokalisierungsdienste basierend auf GPS zur Suche nach anderen Teilnehmern nutzen. Durch den Aufbau eines Mesh-Netzes werden Nachrichten in einer Kette weitergeleitet, sodass jeder in der Gruppe Nachrichten vom weitesten Teilnehmer erhält, unabhängig davon, ob eine direkte Verbindung zu ihm hergestellt werden kann. Es sind sowohl Broadcast- als auch adressierte Nachrichten möglich, die für einen bestimmten Teilnehmer bestimmt sind. Die übermittelten Nachrichten werden mithilfe im Voraus gewählter PSK-Schlüssel (Pre-Shared Key) und des AES256-Algorithmus verschlüsselt.
Das Übertragungsprotokoll ist recht einfach: Jedes Paket wird im Broadcast-Modus gesendet, und der Übertragungsweg wird auf den Empfang der Bestätigung eines der Teilnehmer überprüft. Wenn die Bestätigung nicht empfangen wird, erfolgen innerhalb eines bestimmten Zeitlimits drei weitere Sendungsversuche. Bei Erhalt eines Pakets wird überprüft, ob dieses Paket bereits in der Vergangenheit empfangen wurde; falls ja, wird es ignoriert, andernfalls wird es an andere Teilnehmer weitergeleitet. Bei jeder Übertragung wird der Hop-Zähler im Paket um eins verringert, und bei Erreichen von null wird die Weiterleitung des Pakets eingestellt.
Die Firmware für die Sender und Empfänger ist in C/C++ geschrieben und wird unter der GPLv3-Lizenz veröffentlicht. Zusätzlich werden mobile Anwendungen für die Arbeit mit dem Mesh-Netzwerk über Smartphones auf den Plattformen Android und iOS, sowie ein Web-Interface und eine Python-Bibliothek zur Automatisierung des Sendens und Empfangens von Nachrichten bereitgestellt. Die Firmware ist für verschiedene Platinen basierend auf den Chips ESP32, nRF52 und RP2040 vorbereitet, wie das RAK Meshtastic Start Kit (RAK4631 nRF52840, RAK11200 ESP32, RAK11310 RP2040), Station G1, LILYGO LoRa T3-S3, Nano G1, HELTEC LoRa V3 und Raspberry Pi Pico mit dem SX1262-Modul.



Quelle: opennet.ru
