O proxecto Meshtastic está a desenvolver unha plataforma de comunicación aberta para construír unha rede de mensaxería descentralizada autosuficiente na que cada punto da rede se comunique a través de puntos veciños, sen o uso de enrutadores centralizados. Para emitir o sinal utilízanse transceptores baseados no protocolo LoRa, que permiten transmitir datos nun rango de frecuencias sen licenza a unha velocidade de varios kilobits por segundo a distancias de decenas ou mesmo centos de quilómetros (os usuarios de Meshtastic establecen un récord de 254 km).
O proxecto pode servir para organizar as comunicacións en zonas de difícil acceso, cando se realizan operacións de busca ou se practican deportes (por exemplo, parapente) en zonas sen infraestruturas ou en condicións de escasa cobertura do territorio por parte dos operadores móbiles. En determinados lugares, os participantes poden colocar transceptores autónomos que transmiten mensaxes e están alimentados por paneis solares, e os propios participantes poden dispor de dispositivos LoRa locais que transmiten sinais e que se controlan conectándose a teléfonos intelixentes a través de Bluetooth.

Cada participante da rede pode enviar e ver mensaxes de texto e tamén utilizar ferramentas de xeolocalización baseadas en GPS para buscar outros participantes. Grazas á construción dunha rede de malla, as mensaxes envíanse ao longo dunha cadea, o que permite que todos os membros do grupo reciban mensaxes do participante máis distante, independentemente da capacidade de establecer unha canle de comunicación directa con el. É posible enviar mensaxes de difusión e de enderezo destinadas a un participante específico. As mensaxes transmitidas cífranse mediante chaves PSK preseleccionadas (chave precompartida) e o algoritmo AES256.
O protocolo de transmisión é bastante sinxelo: cada paquete envíase en modo broadcast, despois do cal as ondas son analizadas para a confirmación da recepción por parte dun dos participantes. Se non se recibe a confirmación, realízanse tres intentos de envío máis despois dun determinado tempo de espera. Cando se recibe un paquete, realízase unha comprobación para ver se o paquete chegou no pasado e, se é así, ignórase e, se non, envíase aos outros participantes. Con cada transmisión no paquete, o contador de saltos diminúe e cando chega a cero, a retransmisión do paquete detense.
O código de firmware para os transceptores está escrito en C/C++ e distribúese baixo a licenza GPLv3. Tamén hai dispoñibles aplicacións móbiles para operar a rede en malla desde teléfonos intelixentes que executan a plataforma. Android e iOS, así como unha interface web e unha biblioteca Python para automatizar o envío e a recepción de mensaxes. O firmware está dispoñible para varias placas baseadas nos chips ESP32, nRF52 e RP2040, como o kit de inicio RAK Meshtastic (RAK4631 nRF52840, RAK11200 ESP32, RAK11310 RP2040), Station G1, LILYGO LoRa T3-S3, Nano G1, HELTEC LoRa V3 e Raspberry Pi Pico co módulo SX1262.



Fonte: opennet.ru
