HeyWhatsThat8
Calcola il profilo altimetrico e la linea di vista da un punto verso qualsiasi direzione, gratis e senza installazione, usando dati di elevazione globali. Utile per un primo controllo rapido degli ostacoli tra due siti candidati.
Portata e link budget
Link budget, sensibilità del chip radio, perdita di spazio libero e strumenti gratuiti per stimare la portata prima di installare un repeater.
Il modello
Un collegamento radio funziona se, sommando guadagni e perdite in dB, il segnale arriva al ricevitore sopra la sua soglia minima di sensibilità.
Il link budget di un collegamento wireless è la somma algebrica di tutti i guadagni e le perdite tra il trasmettitore e il ricevitore. Nella forma generale usata dalle note applicative Semtech per LoRa1 è:
P_rx = P_tx + G_sistema − L_sistema − L_canale − M
dove M è un margine di fading aggiuntivo. Per un collegamento punto-punto con antenna e cavo distinti su entrambi i lati, la stessa equazione si riscrive nella forma pratica usata in questa pagina:
P_tx + G_tx − L_cavo_tx + G_rx − L_cavo_rx − L_path ≥ sensibilità del ricevitore
Se il risultato eguaglia esattamente la sensibilità, il margine è zero: qualunque fading, interferenza o disallineamento dell'antenna fa cadere il collegamento. Le sezioni seguenti quantificano ogni termine per il preset radio condiviso dalla community italiana: sensibilità del chip, perdita di spazio libero, perdita dei cavi e margine risultante.
Il ricevitore
Il datasheet non tabula direttamente SF8 a 62.5 kHz: la sensibilità del preset condiviso va ricavata per interpolazione.
La Tabella 3-8 "Receive Mode Specifications" del datasheet Semtech SX1261/2 (pagina 19 di 111) riporta la sensibilità LoRa a guadagno boosted solo per gli estremi SF7 e SF12, alle bande 10.4, 125, 250 e 500 kHz2. Né SF8 né la banda 62.5 kHz del preset italiano compaiono come riga propria. Il valore più vicino tabulato è la banda 125 kHz: -124 dBm a SF7, -137 dBm a SF12. Interpolando linearmente tra i due estremi (passo di circa 2.6 dB per spreading factor) e poi scalando di -3 dB per il dimezzamento della banda da 125 a 62.5 kHz — dimezzare la banda dimezza la potenza di rumore integrata, quindi migliora la sensibilità di circa 3 dB — si ottiene una sensibilità stimata di circa -129.6 dBm per SF8/BW62.5 kHz, il preset condiviso dalla community italiana.
Lo stesso datasheet definisce, alla sezione 6.1.4 "LoRa Time-on-Air" (pagina 41), la formula per il tempo in aria di un pacchetto2: tempo di simbolo T_sym = 2^SF / BW; preambolo T_preambolo = (n_preambolo + 4.25) × T_sym; numero di simboli di payload n_payload = 8 + max(⌈(8·PL − 4·SF + 28 + 16·CRC − 20·H) / (4·(SF − 2·DE))⌉ × (CR+4), 0), con DE=1 quando è attiva la low data rate optimization (LDRO). Lo stesso documento (pagina 39) fissa la soglia per attivare la LDRO: simbolo ≥ 16.38 ms, condizione che scatta a partire da SF10 sulla banda 62.5 kHz e da SF11 sulla banda 125 kHz. Il firmware MeshCore non usa il preambolo minimo: imposta 32 simboli per SF7-SF8 e 16 simboli per SF9-SF1215. La tabella seguente usa un pacchetto da 50 byte, preambolo reale del firmware, coding rate 4/8, header esplicito, CRC on.
| BW | SF | Sensibilità stimata | Bitrate nominale | Tempo in aria |
|---|---|---|---|---|
| 62.5 kHz | SF7 | -127.0 dBm | ≈1709 bit/s | ≈336 ms |
| 62.5 kHz | SF8 (preset ITA) | ≈-129.6 dBm | ≈977 bit/s | ≈607 ms |
| 62.5 kHz | SF9 | -132.2 dBm | ≈549 bit/s | ≈1018 ms |
| 62.5 kHz | SF10 | -134.8 dBm | ≈305 bit/s | ≈2167 ms |
| 62.5 kHz | SF11 | -137.4 dBm | ≈168 bit/s | ≈4071 ms |
| 62.5 kHz | SF12 | -140.0 dBm | ≈92 bit/s | ≈7094 ms |
| 125 kHz | SF7 | -124.0 dBm | ≈3418 bit/s | ≈169 ms |
| 125 kHz | SF8 | -126.6 dBm | ≈1953 bit/s | ≈304 ms |
| 125 kHz | SF9 | -129.2 dBm | ≈1099 bit/s | ≈509 ms |
| 125 kHz | SF10 | -131.8 dBm | ≈610 bit/s | ≈953 ms |
| 125 kHz | SF11 | -134.4 dBm | ≈336 bit/s | ≈2036 ms |
| 125 kHz | SF12 | -137.0 dBm | ≈183 bit/s | ≈3547 ms |
Righe SF7/SF12 a 10.4, 125, 250 e 500 kHz: valori tabulati direttamente dal datasheet. Le altre righe (incluso l'intero blocco 62.5 kHz) sono stime per interpolazione/scalatura, non specifiche garantite dal produttore.
Lo spazio libero
La FSPL da sola lascia margini enormi anche a 50 km: quasi mai è lei a fermare un collegamento MeshCore in Italia.
La perdita di spazio libero (free space path loss, FSPL) in decibel è FSPL = 20·log₁₀(d_km) + 20·log₁₀(f_MHz) + 32.44. Applicandola a 869.618 MHz, con il limite di potenza di 500 mW ERP (27 dBm ERP) della sub-banda 869.4-869.65 MHz3 — limiti approfonditi nella pagina sulla normativa delle sub-bande libere — e la sensibilità stimata di circa -129.6 dBm per SF8/BW62.5 kHz:
| Distanza | FSPL | Margine (antenne unitarie, no ostacoli) |
|---|---|---|
| 1 km | 91.2 dB | +65.4 dB |
| 5 km | 105.2 dB | +51.4 dB |
| 10 km | 111.2 dB | +45.4 dB |
| 20 km | 117.3 dB | +39.3 dB |
| 50 km | 125.2 dB | +31.4 dB |
Anche a 50 km in linea d'aria il margine teorico resta ampiamente positivo: la FSPL da sola non è quasi mai il fattore che limita la portata pratica di un nodo in Italia. A dominare sono gli ostacoli lungo il percorso, valutati con il raggio della prima zona di Fresnel a metà tratta: r₁ = 17.32 · √(d / (4·f)) con d in km e f in GHz. A 10 km su 869.618 MHz, r₁ ≈ 29.4 m. La Raccomandazione ITU-R P.526 richiede, perché un ostacolo non venga considerato tale, uno spazio libero da ostruzioni pari ad almeno il 60% del raggio della prima zona di Fresnel su entrambi i lati del collegamento4: a 10 km significa circa 17.6 m di spazio libero verticale a metà percorso, non solo la linea di vista ottica tra le due antenne. Un tetto, una collina o degli alberi che invadono questo volume introducono una perdita di diffrazione aggiuntiva non compresa nella FSPL: è questo, non il margine di potenza, il motivo per cui in pratica un repeater in pianura copre più lontano di uno con potenza identica ma circondato da ostacoli.
Il cavo
Un cavo economico può vanificare in pochi metri il guadagno di un'antenna migliore.
| Cavo | Perdita / 10 m | Fonte |
|---|---|---|
| RG-58 | ≈4.3 dB | Crown Electronics, 13 dB/100 ft a 900 MHz (valore tabulato più vicino)7 |
| RG-213 | ≈2.5 dB | FeedFlex RG213/U, 24.9 dB/100 m a 900 MHz (valore tabulato più vicino)6 |
| LMR-400 | ≈1.3 dB | Times Microwave, formula datasheet a 869.618 MHz5 |
4.3 dB persi in soli 10 m di RG-58 equivalgono a lasciare a terra più di due terzi della potenza trasmessa. La regola pratica resta la stessa: tenere il cavo il più corto possibile, e se la distanza tra radio e antenna è superiore a qualche metro conviene un cavo a bassa perdita come l'LMR-400 oppure spostare il radio vicino all'antenna, portando giù solo alimentazione e dati (dettagli nella guida all'installazione di un repeater).
Prima di salire sul tetto
Simulano il percorso su un modello del terreno, non sostituiscono una verifica sul campo.
Calcola il profilo altimetrico e la linea di vista da un punto verso qualsiasi direzione, gratis e senza installazione, usando dati di elevazione globali. Utile per un primo controllo rapido degli ostacoli tra due siti candidati.
Software dedicato alla radioamatoriale che simula un collegamento punto-punto o la copertura di un repeater su terreno digitale, con parametri di frequenza, potenza e antenna configurabili.
Strumento open source a riga di comando (Longley-Rice) per l'analisi di percorso e la mappa di copertura di un repeater, tra 20 MHz e 20 GHz. Più tecnico dei precedenti, adatto a chi vuole automatizzare più simulazioni.
Questi strumenti stimano la copertura teorica sul modello del terreno: non sanno nulla di un edificio costruito di recente, della vegetazione stagionale o di un'antenna montata più bassa del previsto. Il riscontro definitivo resta il confronto con la mappa pubblica dei nodi effettivamente attivi e, meglio ancora, un test sul campo con neighbors (funziona anche da remoto, ma mostra solo gli 8 annunci più recenti) e stats-radio, comando disponibile solo via collegamento USB seriale diretto al nodo, come descritto nella guida all'installazione di un repeater.
Alimentazione
Esempio di calcolo per un nodo nRF52 a basso consumo nel mese più sfavorevole, dicembre nel Nord Italia.
Il tool gratuito PVGIS della Commissione Europea11 fornisce l'irraggiamento medio mensile per qualunque punto, su un piano inclinato a scelta. Esempio di dimensionamento, con ipotesi esplicite:
| Grandezza | Valore | Ipotesi |
|---|---|---|
| Consumo medio | 30 mA × 3.7 V = 111 mW | Valore medio dichiarato dall'utente con powersaving on, non il picco in trasmissione |
| Fabbisogno giornaliero | 111 mW × 24 h ≈ 2.7 Wh/giorno | Consumo costante nelle 24 ore |
| Irraggiamento dicembre | ≈3.6 kWh/m²/giorno | Pannello inclinato 60° verso sud, media multi-annuale PVGIS (dataset PVGIS-SARAH2, 2005-2020) per Torino, lat 45.07 lon 7.69 |
| Fattore di derating | 0.75 | Perdite di temperatura, disallineamento, regolatore di carica e batteria |
| Pannello minimo teorico | 2.7 / (3.6 × 0.75) ≈ 1 Wp | Nessun margine per giornate nuvolose consecutive |
| Batteria per 5 giorni di autonomia | 5 × 2.7 Wh ≈ 13.3 Wh ≈ 4.5 Ah a 3.7 V | Ipotesi di 5 giorni senza ricarica utile, profondità di scarica max 80% per una cella Li-ion |
Il pannello minimo teorico di ~1 Wp lascia zero margine: la scelta pratica comune nella community, un pannello da 5-10 W con una cella da qualche migliaio di mAh, assorbe con ampio margine sia le giornate nuvolose consecutive sia il degrado della batteria nel tempo. Per le opzioni di alimentazione in generale vedi la guida all'installazione di un repeater.
Domande frequenti
Perché il calcolo di margine basato sulla sola perdita di spazio libero (FSPL) ignora gli ostacoli reali. Anche con decine di dB di margine teorico, un edificio, una collina o della vegetazione che invadono la prima zona di Fresnel introducono una perdita di diffrazione aggiuntiva non compresa nella FSPL: in pratica è quasi sempre la linea di vista libera, non la potenza disponibile, a limitare la portata reale in Italia.
Il datasheet del chip SX1262 tabula la sensibilità LoRa in guadagno boosted solo per SF7 e SF12 a banda 10.4, 125, 250 e 500 kHz, non per la combinazione SF8/62.5 kHz del preset italiano. Interpolando linearmente tra i due estremi tabulati a 125 kHz e scalando di circa 3 dB per il dimezzamento della banda a 62.5 kHz si stima una sensibilità di circa -130 dBm.
Solo se il guadagno di quota supera la perdita del cavo aggiuntivo. Un cavo economico come l'RG-58 perde oltre 4 dB ogni 10 metri a 869 MHz, quanto quasi dimezzare la potenza trasmessa: per run superiori a pochi metri conviene un cavo a bassa perdita come l'LMR-400, oppure spostare il radio vicino all'antenna e portare giù solo l'alimentazione e i dati.
Nell'esempio di dimensionamento con un consumo medio di 30 mA a 3.7 V (circa 2.7 Wh al giorno) e l'irraggiamento di dicembre nel Nord Italia su un pannello inclinato per l'inverno, bastano pochi Watt di picco per coprire il fabbisogno con margine; la scelta pratica tipica da 5-10 W lascia comunque ampio margine per giornate nuvolose consecutive e perdite del regolatore di carica.
Scelta dell'antenna
Un'antenna non amplifica: ridistribuisce. Ogni dB di guadagno è energia tolta a una direzione e data a un'altra.
Il guadagno di un'antenna passiva nasce solo dal restringere il diagramma di radiazione: il dipolo a mezz'onda irradia 2.15 dBi verso l'orizzonte perché non irradia nulla lungo il proprio asse12; una Yagi arriva a 10-13 dBi perché concentra la stessa potenza in un cono di 35-50° e attenua tutto il resto di decine di dB. La relazione approssimata di Kraus lo quantifica: G ≈ 41253 / (HPBW_az · HPBW_el), con le aperture a -3 dB in gradi13. Per una mesh la conseguenza è pratica: in città, con nodi in tutte le direzioni, un'antenna direttiva "perde" la maggior parte dei vicini, e una verticale omnidirezionale da 2-3.5 dBi copre di più anche se il numero sulla scatola è più basso; per un ponte tra due repeater fissi la direttiva vince due volte, perché guadagna in entrambe le direzioni e riceve meno rumore e meno traffico dalle direzioni che non interessano.
Anche l'omnidirezionale ha un costo nascosto: una verticale 5/8λ da 3.5 dBi ottiene il guadagno schiacciando il lobo verso l'orizzonte, quindi un nodo molto più in basso (un repeater su una torre che serve il quartiere ai suoi piedi) o molto più in alto riceve meno di quanto riceverebbe da un semplice dipolo. Il widget mostra entrambi gli effetti: scegli antenna e scenario, e conta quanti nodi restano entro -3 dB dal massimo; il tilt meccanico serve a vedere cosa succede a un repeater inclinato verso valle.
La carta di Smith e la curva SWR rispondono alla domanda successiva dell'autocostruttore: l'antenna è accordata? Il punto rappresenta l'impedenza al connettore normalizzata a 50 Ω; al centro l'adattamento è perfetto, e la distanza dal centro è il modulo del coefficiente di riflessione |Γ| = (SWR − 1)/(SWR + 1)14. Con SWR 2:1 torna indietro l'11 % della potenza (0.5 dB persi): trascurabile rispetto a un cavo sbagliato, ma un SWR molto alto su un modulo LoRa da 22 dBm senza protezione può danneggiare il finale2. La banda utile è stretta per progetto: un'antenna tagliata per 869.6 MHz non è quella giusta per LoRaWAN a 868.1 né per il 433 MHz, e il pannello "Calcolo lunghezze" dà le misure di partenza per tagliarla, da rifinire con un NanoVNA.
| Antenna | Guadagno | Apertura −3 dB | Quando ha senso |
|---|---|---|---|
| Dipolo λ/2 verticale | 2.15 dBi | 360° × 78° | Nodo urbano, palmare, primo repeater: copre tutto, niente da puntare |
| Antenna PCB / U.FL interna | 0-1 dBi | irregolare | Solo dentro casa o in tasca: la board e la mano fanno parte dell'antenna |
| Verticale 5/8λ con radiali | 3-3.5 dBi | 360° × ~55° | Repeater fisso su terreno pianeggiante, nodi tutti all'orizzonte |
| Yagi 3 elementi | 7-7.5 dBi | ~65° × 80° | Client fisso verso un repeater lontano; ponte corto |
| Yagi 6 elementi | 10-10.5 dBi | ~48° × 55° | Ponte punto-punto tra repeater, 10-30 km in visibilità |
| Yagi 10 elementi | ~13 dBi | ~36° × 40° | Dorsale fissa; richiede puntamento fine e supporto rigido |
Le antenne a "20 dBi" a 869 MHz non esistono in formato hobbistico: una parabola arriva a quel guadagno solo con circa 1.5 m di diametro (G = 10·log₁₀(η·(πD/λ)²), η ≈ 0.6)13. Diffidare dei guadagni dichiarati sulle antenne "a stilo" da 5-12 dBi lunghe pochi centimetri: fisicamente impossibili. Il limite di 500 mW ERP conta il guadagno d'antenna: con una Yagi da 10 dBi la potenza del radio va ridotta, vedi il calcolatore ERP.
Riferimenti
src/helpers/radiolib/RadioLibWrappers.h (costante del numero di simboli di preambolo: 32 per SF≤8, 16 per SF≥9). github.com/meshcore-dev/MeshCore