Come si calcola il tempo in aria
Un pacchetto LoRa è formato da un preambolo, da un’intestazione facoltativa e dal payload, tutti trasmessi come simboli chirp. Un simbolo dura 2 elevato a SF diviso la larghezza di banda: 1,02 ms a SF7 e 125 kHz, 32,8 ms a SF12. Il calcolatore usa la formula di Semtech del datasheet dell’SX1276: la radio aggiunge 4,25 simboli al preambolo impostato, e il payload viene trasmesso a blocchi di simboli la cui dimensione dipende da spreading factor e coding rate, così un byte in più può non costare nulla oppure un blocco intero.
L’ottimizzazione per basso data rate si attiva quando un simbolo dura 16 ms o più, cioè a SF11 e SF12 con 125 kHz e a SF12 con 250 kHz, come consigliano i datasheet Semtech. Ogni simbolo porta allora due bit in meno, e il pacchetto si allunga.
I pacchetti Meshtastic usano un preambolo di 16 simboli, l’intestazione esplicita e il CRC. Un messaggio di testo porta un’intestazione di 16 byte (destinatario, mittente, ID del pacchetto, flag, hash del canale e byte di inoltro) e circa 6 byte di campi protobuf intorno al testo; la cifratura del canale non aggiunge nulla. Gli uplink LoRaWAN, come li invia LoRaMac-node di Semtech, usano un preambolo di 8 simboli, coding rate 4/5 e 13 byte di intestazione e MIC intorno al tuo payload.
I preset Meshtastic a confronto
Tempo in aria di un messaggio di testo da 40 byte con ogni preset e link budget a 22 dBm con antenne da 0 dBi e un SX1262, le condizioni della pagina delle impostazioni radio di Meshtastic. Per i preset da 500 kHz, con i −117 dBm a SF7 del datasheet dell’SX1262 il link budget risulta inferiore di 1 dB a quello della pagina di Meshtastic.
| Preset | SF | Larghezza di banda | Coding rate | Testo da 40 byte | Link budget |
|---|---|---|---|---|---|
| ShortTurbo | 7 | 500 kHz | 4/5 | 31,6 ms | 139 dB |
| ShortFast | 7 | 250 kHz | 4/5 | 63,1 ms | 143 dB |
| ShortSlow | 8 | 250 kHz | 4/5 | 111 ms | 145,5 dB |
| MediumFast | 9 | 250 kHz | 4/5 | 201 ms | 148 dB |
| MediumSlow | 10 | 250 kHz | 4/5 | 382 ms | 150,5 dB |
| LongTurbo | 11 | 500 kHz | 4/8 | 509 ms | 149 dB |
| LongFast (predefinito) | 11 | 250 kHz | 4/5 | 723 ms | 153 dB |
| LongModerate | 11 | 125 kHz | 4/8 | 2,3 s | 156 dB |
Ogni preset è un compromesso tra tempo in aria e portata. LongFast è quello predefinito; i preset Turbo da 500 kHz non entrano nei 250 kHz della banda EU_868 e lì il firmware torna a LongFast. I nodi si sentono solo se usano lo stesso preset.
Potenza e duty cycle in Europa
Nell’UE le bande per dispositivi a corto raggio a 863–870 MHz fissano sia la potenza, come ERP, sia la quota di ogni ora in cui un dispositivo può trasmettere. Il duty cycle è il tempo di trasmissione su un periodo di osservazione di un’ora. La regione EU_868 di Meshtastic sta in 869,4–869,65 MHz, l’unica banda con 500 mW e il 10 %; i canali predefiniti di LoRaWAN sono in 868,0–868,6 MHz, a 25 mW e all’1 %. Queste bande ammettono anche l’accesso con ascolto prima della trasmissione e agilità di frequenza adattiva (LBT+AFA), ma la EN 300 220 lo limita a 100 s di trasmissione all’ora per ogni 200 kHz di spettro, circa il 2,8 %: meno del 10 % della banda 869,4–869,65 MHz.
| Banda | Potenza massima | Duty cycle | Usata da |
|---|---|---|---|
| 868,0–868,6 MHz | 25 mW ERP (14 dBm) | 1 % | LoRaWAN, 868,1, 868,3 e 868,5 MHz |
| 865–868 MHz | 25 mW ERP | 1 % | LoRaWAN, 867,1–867,9 MHz |
| 868,7–869,2 MHz | 25 mW ERP | 0,1 % | — |
| 869,4–869,65 MHz | 500 mW ERP (27 dBm) | 10 % | Meshtastic EU_868, downlink RX2 di LoRaWAN |
| 869,7–870,0 MHz | 25 mW ERP | 1 % | — |
| 433,05–434,79 MHz | 10 mW ERP (10 dBm) | 10 % | Meshtastic EU_433 |
L’ERP si misura rispetto a un dipolo a mezz’onda, che ha 2,15 dBi di guadagno: l’ERP è l’EIRP meno 2,15 dB. Una radio da 22 dBm con un’antenna da 2 dBi e 0,5 dB di perdite nel cavo irradia 21,4 dBm ERP: entro i 27 dBm della banda 869,4–869,65 MHz, ben oltre i 14 dBm dei canali LoRaWAN. Negli USA la banda 902–928 MHz non ha duty cycle orario: la FCC 15.247 consente fino a 1 W alla radio, meno il guadagno d’antenna oltre i 6 dBi, ai sistemi a salto di frequenza (almeno 50 canali sotto i 250 kHz, al massimo 0,4 s su ciascuno ogni 20 s; da 250 kHz, 25 canali e 0,4 s ogni 10 s, con 0,25 W sotto i 50 canali) e alla modulazione digitale larga almeno 500 kHz.
Portata: link budget, orizzonte e zona di Fresnel
Il link budget è l’attenuazione che il collegamento può sopportare: potenza di trasmissione più i guadagni delle due antenne, meno le perdite nei cavi e la sensibilità del ricevitore. La sensibilità viene dai datasheet Semtech: per l’SX1262 a SF7 e SF12, con i passi da 2,5 dB del demodulatore nel mezzo, e per l’SX1276 a ogni spreading factor. Ogni passo in più di spreading factor guadagna circa 2,5 dB.
L’attenuazione in spazio libero cresce con 20 volte il logaritmo della distanza e della frequenza, quindi la portata in spazio libero discende direttamente dal link budget ed è molto ottimistica: i collegamenti reali perdono molto di più per terreno, edifici e vegetazione. L’orizzonte radio, con il solito raggio terrestre equivalente di 4/3 per la rifrazione, è il limite invalicabile per antenne a una data altezza.
Vicino al suolo c’è un secondo limite. Oltre una distanza critica di circa 4 h1 h2 / λ, circa 230 m per antenne a 2 e 10 m a 868 MHz, l’onda riflessa dal suolo cancella sempre più quella diretta, e su terreno piano l’attenuazione cresce di 12 dB a ogni raddoppio della distanza invece che di 6 (modello a due raggi); misure con LoRa a 869,5 MHz sul mare hanno trovato la stessa pendenza. Il riquadro in alto mostra questa portata su terreno piano, limitata dall’orizzonte: colline, edifici e alberi la riducono ancora.
Alle onde radio non basta una sottile linea di vista: la prima zona di Fresnel, un ellissoide intorno alla linea, dovrebbe essere libera almeno al 60 %. A 868 MHz su 5 km il suo raggio a metà percorso è di circa 21 m: ecco perché antenne a un paio di metri da terra arrivano molto meno lontano di quanto suggerisca il link budget.
Energia per pacchetto
La corrente in trasmissione viene dal datasheet della radio, alla potenza della tabella uguale o appena superiore a quella impostata: da 45 mA a 14 dBm a 118 mA a 22 dBm per l’SX1262. Riguarda solo la radio, quindi aggiungi il microcontrollore, che resta sveglio mentre il pacchetto parte. Un nodo Meshtastic tiene anche il ricevitore sempre acceso, e di solito questo costa più delle trasmissioni.
Domande frequenti
Quanto dura la trasmissione di un pacchetto LoRa?
Dipende da spreading factor, larghezza di banda e lunghezza. Un pacchetto di 20 byte con le impostazioni LoRaWAN (7 byte di payload più i 13 della trama LoRaWAN) dura circa 57 ms a SF7 e 125 kHz e circa 1,3 s a SF12; ogni passo in più di spreading factor raddoppia all’incirca il tempo.
Quanti messaggi può inviare un nodo Meshtastic in Europa?
Nella banda EU_868 il limite è il 10 % di ogni ora, cioè 360 s. Un testo da 40 byte con LongFast dura circa 0,72 s, quindi il duty cycle ne consente circa 500 all’ora. Meshtastic tiene il conto del proprio tempo in aria, compresi i pacchetti ritrasmessi, e smette di trasmettere quando raggiunge il limite.
Quale preset Meshtastic conviene usare?
Quello della tua mesh locale: nodi con preset diversi non si sentono. LongFast è il predefinito. MediumFast occupa circa un quarto del suo tempo in aria e ShortFast circa un decimo, a scapito della portata, e questo aiuta le mesh affollate; LongModerate arriva un po’ più lontano ma dura circa tre volte tanto.
Fin dove arriva LoRa?
Con la vista libera, decine di chilometri e oltre: il link budget di LongFast consente centinaia di chilometri in spazio libero. A terra i limiti sono l’orizzonte, il suolo stesso e gli ostacoli: due antenne a 2 m d’altezza si vedono solo entro circa 12 km, su terreno piano l’onda riflessa fa crescere l’attenuazione con la distanza due volte più in fretta, e qualsiasi cosa nella zona di Fresnel, come edifici o alberi, riduce ancora la portata. L’altezza conta più della potenza.
Qual è la potenza massima per LoRa in Europa?
25 mW ERP (14 dBm) in quasi tutta la banda 863–870 MHz, canali LoRaWAN compresi, e 500 mW ERP (27 dBm) in 869,4–869,65 MHz con duty cycle del 10 %. L’ERP include il guadagno d’antenna: con un’antenna da 5 dBi, per 27 dBm ERP bastano circa 24 dBm alla radio. Le norme nazionali possono aggiungere restrizioni.
Perché The Things Network limita il tempo in aria?
La sua fair use policy concede a ogni nodo 30 s di uplink al giorno sulla rete pubblica, per dividere i gateway in modo equo. Sono circa 530 pacchetti con 7 byte di payload (20 byte in aria) a SF7, ma solo una ventina a SF12.