Het Meshtastic-project ontwikkelt een open communicatieplatform voor het bouwen van een zelfvoorzienend gedecentraliseerd berichtennetwerk waarin elk punt in het netwerk communiceert via aangrenzende punten, zonder het gebruik van gecentraliseerde routers. Om het signaal uit te zenden worden transceivers op basis van het LoRa-protocol gebruikt, waarmee gegevens in een niet-gelicentieerd frequentiebereik kunnen worden verzonden met een snelheid van enkele kilobits per seconde over afstanden van tientallen of zelfs honderden kilometers (Meshtastic-gebruikers hebben een record gevestigd van 254 kilometer).
Het project kan worden gebruikt om de communicatie in moeilijk bereikbare gebieden te organiseren, bij het uitvoeren van zoekoperaties of het beoefenen van sporten (bijvoorbeeld paragliden) in gebieden zonder infrastructuur of in omstandigheden met slechte dekking van het grondgebied door mobiele operators. Op bepaalde plekken kunnen deelnemers autonome transceivers plaatsen die berichten doorgeven en worden gevoed door zonnepanelen, en kunnen de deelnemers zelf beschikken over lokale LoRa-apparaten die signalen uitzenden en worden aangestuurd door verbinding te maken met smartphones via Bluetooth.

Elke netwerkdeelnemer kan sms-berichten verzenden en bekijken, en ook op GPS gebaseerde geolocatietools gebruiken om naar andere deelnemers te zoeken. Dankzij de constructie van een mesh-netwerk worden berichten langs een keten verzonden, waardoor iedereen in de groep berichten kan ontvangen van de meest verre deelnemer, ongeacht de mogelijkheid om een direct communicatiekanaal met hem tot stand te brengen. Het is mogelijk om zowel broadcast- als adresberichten te versturen die bestemd zijn voor een specifieke deelnemer. Verzonden berichten worden gecodeerd met vooraf geselecteerde PSK-sleutels (pre-shared key) en het AES256-algoritme.
Het transmissieprotocol is vrij eenvoudig: elk pakket wordt in de uitzendmodus verzonden, waarna de ethergolven worden geanalyseerd om de ontvangst door een van de deelnemers te bevestigen. Als er geen bevestiging wordt ontvangen, worden er na een bepaalde time-out nog drie verzendpogingen gedaan. Wanneer een pakket wordt ontvangen, wordt gecontroleerd of het pakket in het verleden is aangekomen. Als dat het geval is, wordt het genegeerd en als dat niet het geval is, wordt het doorgegeven aan andere deelnemers. Bij elke transmissie in het pakket neemt de hopteller af en wanneer deze nul bereikt, stopt de hertransmissie van het pakket.
De firmwarecode voor de transceivers is geschreven in C/C++ en wordt gedistribueerd onder de GPLv3-licentie. Er zijn ook mobiele apps beschikbaar voor het bedienen van het mesh-netwerk vanaf smartphones die op het platform draaien. Android en iOS, evenals een webinterface en een Python-bibliotheek voor het automatiseren van het verzenden en ontvangen van berichten. De firmware is beschikbaar voor verschillende boards gebaseerd op de ESP32-, nRF52- en RP2040-chips, zoals de RAK Meshtastic Start Kit (RAK4631 nRF52840, RAK11200 ESP32, RAK11310 RP2040), Station G1, LILYGO LoRa T3-S3, Nano G1, HELTEC LoRa V3 en Raspberry Pi Pico met de SX1262-module.



Bron: opennet.ru
