Come monitorare visivamente la tua rete Meshtastic con MeshSense
Se hai mai costruito una rete autonoma utilizzando schede come Heltec o TTGO T-Beam con firmware Meshtastic, probabilmente hai incontrato il tipico problema di osservabilità. I nodi sono sparsi su tetti, balconi o zaini, e fissare un piccolo schermo da 0,96 pollici o navigare attraverso un'app mobile solo per valutare rapidamente le rotte diventa noioso. Vuoi una dashboard corretta con una mappa, grafici dell'intensità del segnale e tracciamento dei pacchetti.
Il progetto MeshSense risolve esattamente questo problema. È un'applicazione open-source leggera che si connette al tuo nodo Meshtastic e visualizza una mappa in tempo reale con tutti i parametri di rete.

Cosa può fare l'applicazione
La funzionalità principale di MeshSense è la raccolta di statistiche in tempo reale senza workaround e integrazioni complesse. Ti connetti semplicemente al nodo base tramite Bluetooth o Wi-Fi normale, e l'interfaccia inizia a raccogliere dati dall'area circostante.
Ecco gli scenari principali in cui la dashboard fa risparmiare tempo:
- Topologia e mappa dei nodi. L'applicazione mostra chiaramente quali nodi sono attivi al momento, le loro posizioni GPS fisiche e quando hanno comunicato l'ultima volta.
- Tracciamento delle rotte. La funzionalità traceroute ti permette di vedere istantaneamente quanti relè intermedi ha attraversato un pacchetto e quale percorso era ottimale.
- Report sulla qualità del segnale. Puoi monitorare SNR e livelli di ricezione da ogni nodo per ottimizzare antenne direzionali o identificare zone morte nella città.
- Monitoraggio dello stato dell'hardware. Livello della batteria, temperatura e dati di telemetria dai dispositivi remoti vengono visualizzati.
Esecuzione su server e in modalità headless
Oltre alla versione desktop Electron, il progetto funziona bene su computer a scheda singola come Raspberry Pi posizionati vicino alla stazione radio base.
È disponibile una modalità headless per il funzionamento senza interfaccia grafica. MeshSense avvia un server web locale accessibile da qualsiasi browser sulla rete locale, protetto con una chiave segreta:
export ADDRESS=10.0.1.20 # IP-адрес вашей Meshtastic ноды
export PORT=5920 # Порт веб-интерфейса
ACCESS_KEY=mySecretKey ./meshsense-x86_64.AppImage --headless
Quando si esegue l'applicazione su una scheda ARM64 senza monitor, gli sviluppatori suggeriscono di lanciare AppImage tramite un framebuffer virtuale:
dbus-run-session xvfb-run ./meshsense-arm64.AppImage --headless \
--disable-gpu --in-process-gpu --disable-software-rasterizer
Per sistemi basati su Debian o Ubuntu, installa un paio di pacchetti prima di avviare AppImage: libfuse2 per il funzionamento del container stesso e fonts-noto-color-emoji per la corretta visualizzazione delle icone nell'interfaccia.
Sotto il cofano
L'architettura del progetto è suddivisa in tre componenti: un frontend basato su Vite, un backend API Node.js e un wrapper Electron.
C'è un'interessante implementazione nel codice: per l'interazione diretta con i moduli radio tramite Bluetooth, gli sviluppatori hanno creato un modulo personalizzato webbluetooth legato a libdbus-1-dev e cmake del sistema. Questo significa che quando compili localmente dal codice sorgente, dovrai prima compilare il binding binario:
git clone --recurse-submodules https://github.com/Affirmatech/MeshSense.git
cd MeshSense
# Сборка нативной зависимости для Bluetooth
cd api/webbluetooth
npm i
npm run build:all
cd ../..
# Установка остальных пакетов
./update.mjs
Per lo sviluppo, l'avvio è suddiviso in due processi indipendenti. Il frontend si avvia sulla porta 59 e il backend sulla porta 59, i route non gestiti vengono automaticamente trasmessi a Vite:
# В первом терминале (UI)
cd ui
PORT=5921 npm run dev
# Во втором терминале (API)
cd api
export DEV_UI_URL=http://localhost:5921
PORT=5920 npm run dev
Nella README, gli autori avvertono onestamente di un bug in modalità dev: quando Vite hot-reload, le sottoscrizioni agli eventi di stato a volte si duplicano, causando la comparsa di righe di log due volte. Questo si risolve semplicemente ricaricando la pagina nel browser.
A chi è utile il progetto
MeshSense è un'utility comoda per radioamatori, appassionati di LoRa e chi costruisce reti di comunicazione decentralizzate per escursionismo, case di vacanza o messaggistica urbana di backup. Elimina la necessità di analizzare manualmente i log attraverso una porta seriale o di indovinare perché un pacchetto non ha raggiunto la collina successiva.
Se hai già un server di casa o un Raspberry Pi in funzione con un nodo LoRa collegato, ha senso aggiungere MeshSense alla tua avvio e ottenere una visione chiara delle onde radio proprio davanti a te.
Progetti correlati