Meshtastic — a self-sufficient mesh network implementation based on LoRa transmitters

The Meshtastic project develops an open communication platform for building a self-sufficient decentralized messaging network, where each network point connects through neighboring points, without the use of centralized routers. Signal transmission is facilitated by transceivers based on the LoRa protocol, allowing data to be transmitted in unlicensed frequency bands at speeds of several kilobits per second over distances of tens or even hundreds of kilometers (Meshtastic users set a record of 254 km).

The project can be used to organize communication in remote areas, during search operations, or while engaging in outdoor activities (such as paragliding) in locations without infrastructure or in areas with poor cellular coverage. In certain places, participants can set up autonomous transceivers that retransmit messages powered by solar panels, while the participants themselves may have local LoRa devices that transmit signals and are managed via Bluetooth connections to smartphones.

Meshtastic - implementation of a self-sufficient mesh network based on LoRa transceivers

Each network participant can send and view text messages, as well as use geolocation tools based on GPS to locate other participants. By forming a mesh network, messages are relayed in a chain, allowing everyone in the group to receive messages from the farthest participant, regardless of the ability to establish a direct communication channel with them. Both broadcast and address-specific messages intended for certain participants can be sent. The transmitted messages are encrypted using pre-selected PSK (pre-shared key) and AES256 algorithm.

The transmission protocol is quite simple: each packet is sent in broadcast mode, after which the medium is analyzed for the arrival of an acknowledgment from one of the participants. If the acknowledgment is not received, after a certain timeout, three more attempts to send are made. Upon receiving a packet, a check is performed to see if this packet has been received before; if it has, it is ignored, and if not, it is retransmitted to other participants. With each transmission, the hop count in the packet decreases, and when it reaches zero, the retransmission of the packet stops.

The firmware code for the transceivers is written in C/C++ and is distributed under the GPLv3 license. Additionally, mobile applications are provided for working with the mesh network from smartphones on Android and iOS platforms, as well as a web interface and a Python library for automating the sending and receiving of messages. Firmware is prepared for various boards based on ESP32, nRF52, and RP2040 chips, such as the RAK Meshtastic Start Kit (RAK4631 nRF52840, RAK11200 ESP32, RAK11310 RP2040), Station G1, LILYGO LoRa T3-S3, Nano G1, HELTEC LoRa V3, and Raspberry Pi Pico with the SX1262 module.

Meshtastic - implementation of a self-sufficient mesh network based on LoRa transceiversMeshtastic - implementation of a self-sufficient mesh network based on LoRa transceiversMeshtastic - implementation of a self-sufficient mesh network based on LoRa transceivers


Source: opennet.ru
Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster