GUIDA TECNOLOGIA LORA

📡 Guida completa a LoRa per radioamatori e maker

Dalla teoria alla configurazione pratica dei dispositivi


🧭 Cos’è LoRa

LoRa (acronimo di Long Range) è una tecnologia di modulazione radio sviluppata da Semtech per comunicazioni a bassa potenza e lunga distanza su bande ISM (es. 433 MHz, 868 MHz, 915 MHz).

A differenza di Wi-Fi o Bluetooth, LoRa privilegia la portata e la sensibilità: può raggiungere da 2 a 15 km in campo aperto con pochi milliwatt di potenza.

🔹 Bande tipiche per l’Europa:

  • 433 MHz (radioamatori e applicazioni sperimentali)
  • 868 MHz (LoRaWAN e IoT)

🔹 Caratteristiche principali:

  • Modulazione Chirp Spread Spectrum (CSS)
  • Alta immunità al rumore e multipath
  • Sensibilità fino a −148 dBm
  • Velocità dati 300 bps – 50 kbps
  • Consumo bassissimo, ideale per sensori e dispositivi portatili

⚙️ Come funziona — principi tecnici

LoRa usa chirp (segnali con frequenza che varia linearmente nel tempo) per trasmettere bit.
Ogni simbolo è rappresentato da un “chirp” diverso, e il ricevitore decodifica in base al tempo/frequenza.

Parametri chiave:

ParametroDescrizioneEffetto
Spreading Factor (SF)Da 7 a 12, indica quante volte i dati sono “spalmati” nel tempo↑ SF → più portata, meno velocità
Bandwidth (BW)Larghezza di banda (125, 250 o 500 kHz)↑ BW → più velocità, meno sensibilità
Coding Rate (CR)Livello di correzione errore (4/5, 4/6, 4/7, 4/8)↑ CR → meno errori, ma più lentezza
Tx PowerPotenza trasmessa (tipicamente 14 dBm = 25 mW)più potenza → più distanza, ma più consumo

👉 Questi parametri sono regolabili da software, quindi puoi adattare la comunicazione alle condizioni radio o all’uso radioamatoriale sperimentale.


🧩 Architettura e moduli hardware

I chip LoRa più diffusi sono:

  • Semtech SX1276 / SX1278 → molto usati con Arduino e ESP32
  • Semtech SX1262 / SX1268 → più moderni, consumi inferiori
  • Moduli pronti all’uso:
    • HopeRF RFM95 / RFM98
    • Ai-Thinker Ra-01 / Ra-02 / Ra-02S
    • Heltec WiFi LoRa 32, TTGO LoRa32 (ESP32 + LoRa integrato)

Connessioni base (per Arduino/ESP32)

LoRa Module  ->  MCU
------------------------
VCC (3.3V)   ->  3.3V
GND          ->  GND
NSS (CS)     ->  GPIO (es. 18)
MOSI         ->  GPIO (23)
MISO         ->  GPIO (19)
SCK          ->  GPIO (5)
RST          ->  GPIO (14)
DIO0         ->  GPIO (26)

⚠️ Importante: tutti i moduli LoRa lavorano a 3.3 V!
Mai collegarli a 5 V senza adattatori di livello logico.


🧪 Setup software — installazione e librerie

✅ Su Arduino IDE

  1. Apri Gestione librerie → cerca LoRa by Sandeep Mistry
  2. Installa la libreria ufficiale
  3. Carica un esempio base:
#include <SPI.h>
#include <LoRa.h>

void setup() {
  Serial.begin(9600);
  while (!Serial);
  LoRa.setPins(18, 14, 26); // NSS, RST, DIO0
  if (!LoRa.begin(868E6)) {
    Serial.println("Errore avvio LoRa!");
    while (1);
  }
  Serial.println("LoRa OK");
}

void loop() {
  LoRa.beginPacket();
  LoRa.print("CQ TEST LoRa!");
  LoRa.endPacket();
  delay(2000);
}

✅ Su ESP32 / TTGO / Heltec

  • Librerie già integrate nei firmware Heltec ESP32 Library o TTGO LoRa32 Library.
  • Permettono anche uso di OLED integrato per mostrare pacchetti e RSSI.

✅ Su Raspberry Pi (Linux)

Installazione tramite git:

sudo apt install git python3-pip
git clone https://github.com/sandeepmistry/python-lora.git
cd python-lora
sudo python3 setup.py install

Puoi poi usare script Python per inviare/ricevere pacchetti via SPI.


🌐 Reti LoRa e LoRaWAN (differenza)

  • LoRa = solo il livello fisico (punto-punto o mesh).
  • LoRaWAN = protocollo di rete sopra LoRa, con gestione di nodi, gateway, sicurezza e server di rete.

Per i radioamatori, il LoRa “puro” è spesso preferito per esperimenti diretti, APRS e telemetria.
LoRaWAN è utile se vuoi integrare sensori in reti IoT pubbliche o private.


🚀 Esempio pratico: link punto-punto LoRa

Due dispositivi con moduli SX1278.

Nodo TX

LoRa.beginPacket();
LoRa.print("Hello Radio!");
LoRa.endPacket();
delay(5000);

Nodo RX

int packetSize = LoRa.parsePacket();
if (packetSize) {
  Serial.print("Ricevuto: ");
  while (LoRa.available()) {
    Serial.print((char)LoRa.read());
  }
  Serial.print(" RSSI: ");
  Serial.println(LoRa.packetRssi());
}

Prova a variare:

  • SF da 7 a 12 per testare la distanza
  • Frequenze 433 MHz o 868 MHz (secondo normativa e licenza)
  • Antenne diverse per valutare copertura

🛰️ Applicazioni radioamatoriali avanzate

  • APRS via LoRa (LoRa-APRS): trasmissione di coordinate GPS e messaggi brevi in modalità packet.
  • Reti Mesh (Meshtastic, ESP32 + SX1262): comunicazioni digitali tra più nodi senza infrastruttura.
  • Telemetria per stazioni remote o ponti radio.
  • Gateway LoRa → Internet con Raspberry Pi e MQTT.

Esempio:
→ ESP32 con GPS + LoRa trasmette posizione.
→ Altro nodo riceve e inoltra su rete APRS-IS o dashboard web.


🧰 Strumenti di misura e diagnostica

  • RSSI / SNR monitor: valori ottenibili via LoRa.packetRssi() e LoRa.packetSnr().
  • Analizzatore di spettro: utile per verificare chirp e larghezza di banda.
  • Software SDR (es. SDR# o GQRX): permette di “vedere” i segnali LoRa e capirne la struttura.

🧱 Costruisci il tuo nodo LoRa completo

Schema tipico:

  • ESP32 + SX1276 + Antenna 868MHz
  • Sensore BME280 (temperatura, umidità, pressione)
  • Batteria Li-Ion + pannello solare 5 V
  • Firmware che invia ogni 60 s:
    • Dati sensore
    • RSSI / SNR
    • Tempo o posizione GPS

Puoi visualizzare tutto su dashboard web o su display OLED del modulo Heltec.


📑 Conclusione e risorse

LoRa rappresenta il punto d’incontro fra radiotecnica classica e IoT moderno.
Per i radioamatori è una palestra perfetta per imparare:

  • modulazioni digitali evolute,
  • trasmissione dati a bassa potenza,
  • reti decentralizzate e mesh,
  • sperimentazione hardware e software open-source.

🔗 Link utili:

Translate »