Due strade per arrivare allo stesso risultato — un nodo MeshCom operativo: scheda pronta all'uso (30 min, zero saldature) oppure fai-da-te (2-3 ore, 5 € meno, impari ogni componente). La guida copre entrambi i percorsi in parallelo; gli step "solo DIY" sono marcati chiaramente.
Prendi una scheda all-in-one supportata dal firmware (Heltec V3, LilyGo T-Beam, RAK4631, T-Echo, ecc.), la colleghi all'USB, flashi, configuri il callsign. Niente saldature, niente breadboard.
ESP32 DevKit + modulo Ra-01 cablati a mano. Impari saldature, SPI, antenna, debug: la scuola completa. Più tempo, ma anche più gratificante.
Compra una scheda all-in-one supportata dal firmware MeshCom:
Tutte le board sopra vengono già con antenna SMA e cavo USB: ti basta aggiungere un'antenna migliore se vuoi più portata.
Vedi l'articolo hardware per specifiche, prezzi e link diretti ai produttori.
Vedi la lista componenti BOM: ESP32 DevKit-C (3-5 €), modulo Ai-Thinker Ra-01 (3-5 €), antenna 433 MHz (2-15 €), dupont F-F (1 €), opzionale condensatore 100 µF. Spesa totale: 10-15 €.
Ordina su AliExpress (4-6 settimane) o Amazon (1-3 giorni a prezzo doppio). Non comprare il modulo Ra-02 al posto del Ra-01: è la versione 868 MHz, sbagliata per la banda HAM 70 cm.
Il firmware ufficiale è su GitHub. Cloni il repo upstream e scegli la variant per la tua board:
$ git clone https://github.com/icssw-org/MeshCom-Firmware.git $ cd MeshCom-Firmware # Scegli l'environment in base alla tua board: $ pio run -e heltec_wifi_lora_32_V3 # Heltec V3 ESP32-S3 $ pio run -e heltec_wifi_lora_32_V2 # Heltec V2 ESP32 $ pio run -e ttgo_tbeam_SX1262 # LilyGo T-Beam SX1262 $ pio run -e wiscore_rak4631 # RAK4631 nRF52840 $ pio run -e t_echo # LilyGo T-Echo $ pio run -e esp32_dev_ra01_sx1278 # DIY ESP32+Ra-01 (percorso B)
Serve PlatformIO installato (pip install platformio).
Il primo build scarica framework (~250 MB), poi è veloce.
Scorciatoia per chi è di fretta: la pagina Releases del repo GitHub offre
binari pre-compilati per le board più diffuse. Scarichi, flashi con
esptool, salti il build. Niente PlatformIO richiesto.
Percorso A (scheda pronta): salta questo step — la tua scheda ha già ESP32, radio e antenna cablati di fabbrica. Vai direttamente allo step 4.
Vedi lo schema cablaggio dettagliato nell'articolo Hardware. 9 fili totali: VCC, GND, NSS, SCK, MISO, MOSI, RST, DIO0, antenna. Su breadboard per i test, saldature dirette per il setup definitivo.
Suggerimento di vita: lo stagno senza piombo è una tortura per principianti. Usa flux liquido in abbondanza prima di rifondere ogni giunto. Le saldature "fredde" sono il primo motivo per cui un nodo non funziona.
Collega la board al PC via USB. PlatformIO rileva la porta seriale automaticamente. Sequenza tipica: erase completo + write_flash dei blocchi (bootloader, partitions, otadata, app).
# 1. Erase completo (sempre consigliato al primo flash) $ esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 921600 erase_flash # 2. Upload — cambia l'env in base alla board: $ pio run -e heltec_wifi_lora_32_V3 -t upload --upload-port /dev/ttyUSB0 # scheda pronta $ pio run -e esp32_dev_ra01_sx1278 -t upload --upload-port /dev/ttyUSB0 # DIY
Per Heltec V2/V3/V4, LilyGo T-Beam, ecc. la board entra in auto-bootloader grazie al USB-UART (CP2102/CH340): nessun tasto da premere. PlatformIO scrive e riavvia.
Per RAK4631 e LilyGo T-Echo il flash è via UF2: doppio-tap del reset
mette la board in modalità "drive USB", copi il file .uf2 e basta. PIO può comunque
fare l'upload via DFU.
Se hai scaricato un binario pre-compilato dalla pagina Releases del repo, usa direttamente
esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 921600 write_flash 0x10000 firmware.bin
(cambia l'offset in base alla partition table della tua board: di solito 0x10000).
Apri il monitor seriale a 115200 baud. Dovresti vedere il banner MeshCom e — fondamentale — questa riga:
[LoRa]...SX1276 Chip Initializing ... success
[LoRa]...RF_FREQUENCY: 433.175 MHz
[LoRa]...RF_BANDWIDTH: 250 kHz
[LoRa]...RF_SF: 11
[LoRa]...RF_CR: 4/6
[LoRa]...RF_POWER: 20 dBm
[LoRa]...Starting to listen ... success
Se invece vedi SX1276 Chip Initializing ... failed, code -2,
la radio non risponde sul bus SPI. Cause tipiche:
Servono nominativo radioamatoriale e (se vuoi un secondo nodo) un SSID diverso. Dal monitor seriale:
--cs IZ5XYZ-10 # Imposta callsign + SSID 10 --lat 43.93 # Latitudine (opzionale) --lon 10.93 # Longitudine (opzionale) --save # Persiste in NVS --reboot # Riavvia con la nuova config
Importante: senza un callsign valido non trasmettere on-air. La banda 433 MHz è radioamatoriale, serve patente.
Installa l'app MeshCom (Android su Play Store, iOS su App Store).
Scansiona BLE: appare MC-xxxx-IZ5XYZ-10. Connetti, inserisci callsign,
manda un messaggio a "*" (broadcast) o a un altro nodo.
Se la rete è viva nelle vicinanze vedi il tuo nodo comparire anche sulla
mappa nodi MeshCom del Gruppo Radio Firenze.
Per uscire dal raggio del "balcone" servi un'antenna alta. Le opzioni vincenti:
Cavo di discesa: importante. 20 m di RG58 a 433 MHz "mangia" ~5 dB. Se ne hai più di 15 m, scegli LMR-240/Aircell 7 o sposta direttamente il nodo vicino all'antenna con alimentazione PoE-stile.
A questo punto hai un nodo MeshCom funzionante. Il tuo callsign appare nella mappa nodi globale, ricevi e trasmetti messaggi off-grid, contribuisci alla rete e — soprattutto — hai imparato molto su radio, LoRa, protocollo APRS e mesh networking.
73 e buona caccia ai DX HF su 70 cm.