Meshtastic o LoRaWAN: che differenza c'è e quale fa per il tuo progetto?
Meshtastic e MeshCore inoltrano testo tra radio LoRa senza infrastruttura; LoRaWAN porta i dati dei sensori tramite gateway. Differenze e quando usarli.
Foto: Egor Myznik / Unsplash
Dopo aver letto questo articolo saprai:
- Spiegare in cosa il flooding gestito di Meshtastic differisce da gateway e network server di LoRaWAN
- Collocare MeshCore tra i due e descrivere i limiti di legge che valgono per tutti
- Scegliere una mesh LoRa o LoRaWAN per messaggistica, telemetria o una flotta di sensori
In questa pagina
Meshtastic e LoRaWAN usano la stessa radio LoRa e le stesse bande non licenziate, e qui finiscono le somiglianze. Meshtastic è un progetto open source che costruisce una mesh indipendente dalle reti esistenti con radio economiche: ogni nodo ritrasmette ciò che riceve, così le persone possono scambiarsi messaggi di testo e posizioni senza torri, server o abbonamenti. LoRaWAN è un protocollo di rete in cui i sensori inviano dati tramite gateway a un network server e da lì a un’applicazione. Il primo è fatto perché le persone parlino tra loro; il secondo perché i dispositivi riferiscano a un software.
La risposta breve. Usa Meshtastic, o il più recente MeshCore, quando un gruppo deve scambiarsi messaggi dove non c’è copertura cellulare (escursioni, eventi, vela, preparazione alle emergenze, una rete di quartiere) e nessuno vuole gestire un’infrastruttura. Usa LoRaWAN quando hai sensori che devono consegnare le letture a un database o a una dashboard, molti dispositivi, batterie che devono durare anni e chiavi di sicurezza gestite da qualcuno. Una mesh LoRa può trasportare qualche lettura di sensore e LoRaWAN può trasportare un breve comando, ma ciascuno è goffo nel lavoro dell’altro.
| Meshtastic | MeshCore | LoRaWAN | |
|---|---|---|---|
| Pensato per | Testo e posizione tra persone | Testo con ripetitori fissi | Dati dei sensori verso applicazioni |
| Chi inoltra | Qualsiasi nodo, per impostazione predefinita | Solo i ripetitori | I gateway, su IP |
| Instradamento | Flooding gestito | Flooding iniziale, poi percorsi appresi | Stella di stelle, network server |
| Infrastruttura | Nessuna necessaria | Ripetitori in punti elevati | Gateway e un network server |
| Governato da | Progetto open source | Libreria open source (MIT) | Specifiche della LoRa Alliance |
Come funziona Meshtastic?
Un nodo Meshtastic è una piccola scheda con una radio LoRa e un microcontrollore. L’elenco dell’hardware del progetto comprende schede di RAK, LILYGO, Heltec e Seeed Studio, per lo più basate su chip ESP32 o nRF52840 con una radio SX1262. Quasi tutti abbinano il nodo a un’app sullo smartphone e scrivono i messaggi lì; alcuni nodi hanno schermo e tastiera propri.
L’instradamento è un flooding gestito. Ogni nodo che riceve un pacchetto può ritrasmetterlo, ma prima attende un breve tempo che dipende dal segnale e resta in silenzio se sente un vicino farlo, così tendono a inoltrare i nodi lontani mentre quelli vicini si trattengono. Un limite di salti impedisce ai pacchetti di propagarsi all’infinito: il valore predefinito è 3 e il massimo 7. Dal firmware 2.6 i messaggi diretti imparano un nodo di inoltro successivo dopo il primo scambio e tornano al flooding se quel nodo sparisce.
I canali sono cifrati con AES e una chiave condivisa, e il canale predefinito usa una chiave pubblicata, quindi chiunque può leggerlo. I gruppi privati impostano una chiave propria, e i messaggi diretti usano una chiave derivata tra i due nodi. Il progetto dichiara apertamente che non c’è forward secrecy e che le intestazioni dei pacchetti restano leggibili perché i nodi possano inoltrarli.
Meshtastic non si limita alla chat. Un modulo di telemetria riporta batteria, uso del canale e letture dei più comuni sensori ambientali I2C, ogni 30 minuti per impostazione predefinita, e un nodo con accesso a internet può collegare la mesh a un broker MQTT tramite l’integrazione MQTT.
In cosa è diverso LoRaWAN?
LoRaWAN non inoltra affatto tra dispositivi. La LoRa Alliance descrive una topologia a stella di stelle: ogni gateway nel raggio di portata inoltra l’uplink di un dispositivo su IP a un network server, che elimina i duplicati, gestisce i data rate e passa il payload a un application server. I dispositivi non hanno bisogno di sentirsi tra loro, e ampliare la copertura significa aggiungere gateway.
Le priorità di progetto discendono dal compito. Un sensore LoRaWAN di Classe A si sveglia, invia pochi byte, ascolta brevemente una risposta e torna a dormire, ed è così che una sonda del suolo o un contatore durano anni a batteria. La sicurezza è integrata: chiavi per dispositivo, cifratura end-to-end del payload verso l’application server e contatori di frame, tutto definito nella specifica LoRaWAN. Dispositivi certificati di produttori diversi funzionano sulla stessa rete. La guida a LoRaWAN entra nei dettagli.
Quello che manca a LoRaWAN è un modo perché i dispositivi parlino tra loro senza la rete, e un percorso agevole per i messaggi diretti ai dispositivi. I downlink sono scarsi, e nulla funziona senza almeno un gateway con un backhaul e un server alle spalle.
Dove si colloca MeshCore?
MeshCore è un progetto open source più recente, descritto come una libreria C++ leggera per l’instradamento multi-hop dei pacchetti su LoRa e altre radio a pacchetti, pubblicata con licenza MIT. Il firmware esiste in tre ruoli: radio companion che si collegano a un’app di chat, ripetitori che estendono la copertura e room server che conservano messaggi condivisi.
L’instradamento è diverso da quello di Meshtastic. Secondo le FAQ di MeshCore, il primo messaggio verso una nuova destinazione viene propagato in flooding, la risposta registra i ripetitori attraversati e i messaggi successivi portano con sé quel percorso, così ritrasmettono solo i ripetitori elencati. I dispositivi client non ripetono mai. I canali di gruppo non hanno un’unica destinazione e vengono ancora propagati in flooding. Il risultato sta tra i due modelli di questa guida: sempre una mesh senza server, ma con nodi di infrastruttura fissi, il che si adatta a una comunità in grado di mettere ripetitori su tetti o colline. I nodi Meshtastic e MeshCore non sono interoperabili, e nessuno dei due può entrare in una rete LoRaWAN.
Quali limiti di legge valgono per tutti?
Ogni trasmettitore LoRa in una banda non licenziata segue le stesse regole, qualunque protocollo usi. In Europa la Raccomandazione ERC 70-03 ammette fino a 500 mW e.r.p. con un duty cycle massimo del 10 per cento nella banda da 869,4 a 869,65 MHz, e solo l’1 per cento tra 868,0 e 868,6 MHz. L’impostazione EU_868 di Meshtastic usa la banda da 869,4 a 869,65 MHz e applica il limite del 10 per cento, sospendendo un nodo che lo raggiunge. La stessa pagina documenta un’opzione per ignorare il duty cycle e avverte che può violare le regole.
Altri punti della documentazione di Meshtastic contano nella pratica. Un nodo non trasmette finché non è impostata la regione. I limiti di potenza del firmware sono tetti massimi, non ciò che consente il tuo paese, quindi verifica il piano nazionale delle frequenze. Le impostazioni per le bande radioamatoriali richiedono una licenza, e una licenza da radioamatore vieta la cifratura. I nodi si sentono solo se usano lo stesso preset del modem, quindi un gruppo misto deve accordarsi su uno.
In una mesh trafficata il duty cycle è il vero limite di capacità. Ogni pacchetto inoltrato costa tempo in aria a ogni nodo che lo ritrasmette, ed è per questo che entrambi i progetti mesh lavorano per ridurre le ritrasmissioni.
Quando scegliere l’uno o l’altro?
Scegli Meshtastic quando:
- Le persone hanno bisogno di scambiarsi testo e posizione senza copertura cellulare.
- Vuoi partire con due radio e nessuna infrastruttura, e crescere in modo spontaneo.
- Ti bastano poche letture di sensori a margine, come una stazione meteo sulla mesh.
Scegli MeshCore quando:
- Una comunità può installare e mantenere ripetitori in buone posizioni.
- Prevedi abbastanza traffico da sprecare tempo in aria se ogni messaggio venisse propagato in flooding.
Scegli LoRaWAN quando:
- I dispositivi sono sensori i cui dati devono arrivare in modo affidabile a un’applicazione.
- Ti servono anni di autonomia, chiavi gestite e hardware certificato di più fornitori.
- Installi decine o migliaia di dispositivi, su una rete tua o di un operatore. La guida LoRaWAN o NB-IoT aiuta se anche il cellulare è un’opzione.
Per continuare
- LoRa e LoRaWAN separa il livello radio dai protocolli costruiti sopra.
- La guida a LoRaWAN tratta gateway, classi di dispositivo e sicurezza.
- LoRaWAN o NB-IoT confronta LoRaWAN con l’IoT cellulare degli operatori.
- Panoramica della connettività IoT colloca queste opzioni tra Wi-Fi, BLE, Zigbee, Thread e cellulare.
Argomenti: Meshtastic, MeshCore, LoRaWAN, LoRa, mesh, confronto