Configurazione del dispositivo Meshtastic ⚙️ include parametri essenziali come Ruolo 🎭, Modalità di ritrasmissione 🔁, assegnazioni GPIO 🔌, intervalli di trasmissione ⏱️ e comportamento energetico 🔋. Queste impostazioni definiscono come ogni dispositivo funziona all'interno della mesh Meshtastic 🕸️—sia come Client 👤, Router 📡, Ripetitore 🔄, Sensore 🌡️ o Tracker 📍—e come gestisce la ritrasmissione dei messaggi. La configurazione viene applicata tramite un messaggio admin 🛠️ usando la struttura protobuf Config.Device.
📑 Parametri di configurazione del dispositivo
🎭 Ruoli dei dispositivi Meshtastic
| Ruolo del dispositivo | Descrizione | Usi migliori |
| 👤 CLIENT | Nodo di messaggistica standard, connesso ad app 📱 o standalone. Ritrasmette pacchetti se nessun altro nodo lo ha fatto. | Ruolo generico per individui che utilizzano app client per comunicare 💬 attraverso la mesh. |
| 🤫 CLIENT_SILENZIOSO | Nodo che non ritrasmette pacchetti 🚫, riducendo l'uso del tempo d'aria ⏳. | Ideale per distribuzioni dense 🏙️ dove è importante minimizzare il traffico di ritrasmissione. |
| 🙈 CLIENT_NASCOSTO | Dispositivo che trasmette solo quando necessario, supportando la furtività 🕵️ o il risparmio energetico 🔋. | Utile per ruoli nascosti o a basso consumo che necessitano partecipazione alla mesh. |
| 📍 TRACCIATORE | Dà priorità ai pacchetti di posizione GPS 🛰️ per un tracciamento affidabile. | Migliore per tracciare asset 📦 o individui 🚶 dove aggiornamenti tempestivi sono critici. |
| 🆘 OGGETTI_SMARRITI | Trasmette regolarmente la posizione 📡 sul canale predefinito per facilitare il recupero. | Usato per localizzare nodi persi sul campo 🌲. |
| 🌡️ SENSORE | Dà priorità ai pacchetti di telemetria 📊 come dati ambientali o sensoriali. | Ideale per raccolta dati 🌱 con uso efficiente dell'energia 🔋 e aggiornamenti frequenti. |
| 🎖️ TAK | Ottimizzato per l'integrazione con sistemi ATAK, minimizzando le trasmissioni di routine. | Usato in dispiegamenti tattici 🪖 che richiedono supporto plugin ATAK. |
| 🎯 TAK_TRACKER | Invia automaticamente trasmissioni TAK PLI 📡 riducendo il traffico di routine. | Integrazione autonoma con sistemi ATAK per operazioni tattiche basate sulla posizione. |
| 🔄 RIPETITORE | Nodo infrastrutturale che ritrasmette sempre i pacchetti una volta 🔁, estendendo la copertura. Non mostrato nella topologia. | Ripetitori posizionati strategicamente 🏔️ per massimizzare la copertura senza apparire nella lista nodi. |
| 📡 ROUTER | Nodo infrastrutturale che ritrasmette sempre i pacchetti una volta. Visibile 👀 nella topologia e nella lista nodi. | Migliore se usato in posizioni fisse 🏠 per estendere la copertura e migliorare l'affidabilità del routing. |
| ⏳ ROUTER_LATE | Ritrasmette i pacchetti solo dopo altri ruoli, migliorando la copertura per cluster locali 🌐. | Ideale per colmare le lacune di copertura 🕳️ o supportare cluster isolati. |
📊 Analisi comparativa dei ruoli
Questa tabella mostra i valori predefiniti dopo la selezione di un preset ⚙️. Come sempre, le impostazioni individuali possono essere regolate 🛠️ dopo aver scelto un preset.
| Ruolo del Dispositivo 🎭 | BLE/WiFi/Seriale 📡 | Schermo Abilitato 🖥️ | Consumo Energetico 🔋 | Ritrasmetti 🔁 | Instradamento Prioritario 🚦 | Visibile nella Lista Nodi 👀 |
| 👤 CLIENT | Sì ✅ | Sì ✅ | Regolare ⚡ | Sì 🔁 | No 🚫 | Sì 👀 |
| 🤫 CLIENT_SILENZIOSO | Sì ✅ | Sì ✅ | Minimo ⏳ | No 🚫 | No 🚫 | Sì 👀 |
| 🙈 CLIENT_NASCOSTO | Sì ✅ | Sì ✅ | Minimo ⏳ | Solo Locale 📍 | No 🚫 | No 🚫 |
| 📍 TRACCIATORE | Sì ✅ | No 🚫 | Regolare / Basso 🔋 | Solo Attivo ⏱️ | No 🚫 | Sì 👀 |
| 🆘 OGGETTI_SMARRITI | Sì ✅ | No 🚫 | Regolare ⚡ | Sì 🔁 | No 🚫 | Sì 👀 |
| 🌡️ SENSORE | Sì ✅ | No 🚫 | Regolare / Basso 🔋 | Solo Attivo ⏱️ | No 🚫 | Sì 👀 |
| 🎖️ TAK | Sì ✅ | Opzionale ⚙️ | Regolare ⚡ | Sì 🔁 | No 🚫 | Sì 👀 |
| 🎯 TAK_TRACKER | Sì ✅ | Opzionale ⚙️ | Regolare ⚡ | Sì 🔁 | No 🚫 | Sì 👀 |
| 📡 ROUTER | No 🚫 | No 🚫 | Alto ⚡⚡ | Sì 🔁 | Sì ✅ | Sì 👀 |
| ⏳ ROUTER_LATE | Sì ✅ | Sì ✅ | Alto ⚡⚡ | Sì 🔁 | No 🚫 | Sì 👀 |
| 🔄 RIPETITORE | Sì ✅ | No 🚫 | Alto ⚡⚡ | Sì 🔁 | Sì ✅ | No 🚫 |
🔋 Comprendere il risparmio energetico e le prestazioni del ruolo
⚙️ Solo piattaforma ESP32 – Gestione energetica Meshtastic
Sulla piattaforma ESP32 💻, tutti i ruoli—eccetto TRACKER 📍 e SENSOR 🌡️—supportano il funzionamento a basso consumo usando power.is_power_saving 💤. Quando abilitato, il dispositivo entra in modalità sleep 😴, spegnendo periferiche 🔌, GPS 🛰️ e radio 📡 per conservare energia 🔋.
Parametri di timeout ⏱️ come display.screen_on_secs, power.min_wake_secs, e power.wait_bluetooth_secs influenza quando il dispositivo va in sleep. Eventi esterni come la ricezione di pacchetti 📦, la pressione di pulsanti 🔘 o connessioni Bluetooth 📱 possono resettare il conto alla rovescia.
Per il ruolo ROUTER 📡, il risparmio energetico è sempre abilitato ✅ per garantire un uso efficiente dell'energia mantenendo la rete mesh 🕸️.
🌐 Piattaforme ESP32 e NRF52 – Comportamento di sonno di Tracker e Sensor
Sulle piattaforme ESP32 💻 e NRF52 🔋, i ruoli TRACKER 📍 e SENSOR 🌡️ utilizzano cicli di sonno specializzati 💤. I tracker dormono fino alla prossima trasmissione GPS 🛰️, poi si svegliano per inviare pacchetti di posizione 📍. I sensori dormono fino al prossimo intervallo di telemetria 📊, poi si svegliano per raccogliere e trasmettere dati 🌱.
A differenza di altri ruoli, questi nodi non mantengono la radio LoRa in standby 🚫, svegliandosi solo a intervalli configurati ⏱️. Questo li rende ideali per report periodici a basso consumo 🔋.
- 📌 La modalità Solo Sveglio consente le ritrasmissioni solo durante i periodi attivi, non durante il sonno 😴.
- 📡 Per i nodi ROUTER su ESP32, il risparmio energetico è abilitato di default ⚡. Per aggiornare via Bluetooth 🔗, cambia temporaneamente il ruolo in una modalità non in sleep, quindi torna indietro una volta completato ✅.
⚙️ Altri Parametri di Configurazione del Dispositivo
- 🔁 Configurazione Ritrasmissione Meshtastic: Definisce come i messaggi sono ritrasmessi nella mesh 🕸️.
| Valore | Descrizione |
| TUTTI 📡 | Predefinito – Ritrasmette tutti i messaggi da mesh locali ed esterni 🌍, anche se la crittografia differisce. |
| ALL_SKIP_DECODING 🚫 | Uguale a ALL ma salta la decodifica, ritrasmette ciecamente 👀. Solo per il ruolo Repeater 🔄. |
| LOCAL_ONLY 📍 | Ritrasmette solo messaggi da canali locali, ignora mesh esterne 🚫. |
| KNOWN_ONLY 🧩 | Filtra i pacchetti da nodi sconosciuti ❌, ritrasmette solo da voci note del NodeDB. |
| NONE 🚫 | Disabilita la ritrasmissione. Solo per ruoli come SENSOR 🌡️, TRACKER 📍, e TAK_TRACKER 🎯. |
| CORE_PORTNUMS_ONLY 🎯 | Ritrasmette solo i tipi di pacchetti core: NodeInfo ℹ️, Testo 💬, Posizione 📍, Telemetria 📊, Routing 🔄. |
- 🔘 Impostazioni GPIO Pulsante Utente: Definisce il numero del pin GPIO per il pulsante utente se mancante.
- 🔔 Configurazione GPIO Buzzer PWM: Assegna il pin GPIO per gli avvisi del buzzer 📢.
- ⏱️ Intervallo di Trasmissione NodeInfo: Imposta l'intervallo per le trasmissioni automatiche di NodeInfo ℹ️.
- 👆 Doppio Tap come Pressione del Pulsante: Abilita il gesto doppio tap se è presente l'accelerometro.
- 🚫 Disabilita la Funzione Triplo Click: Disattiva la scorciatoia triplo click per il toggle GPS 📍.
- 🌍 Definizione del Fuso Orario (TZDEF): Definisce gli offset orari locali ⏰ usando stringhe POSIX TZ.
- 💡 LED Heartbeat Disabilitato: Ferma il lampeggio del LED ✨ per modalità stealth o risparmio energetico 🔋.
📱 Accessibilità Client Configurazione Dispositivo
🤖 Android
- Apri la App Meshtastic 📲.
- Naviga: ⋮ (3 puntini) ➡️ Configurazione Radio ➡️ Dispositivo.
🍎 Apple
Tutte le opzioni di configurazione (eccetto il Server NTP 🌐) sono disponibili su iOS, iPadOS e macOS in Impostazioni ➡️ Configurazione Dispositivo ➡️ Dispositivo.
💻 CLI
Tutte le opzioni sono accessibili tramite la CLI Python 🐍. Esempi di comandi sotto:
| Impostazione ⚙️ | Valori Accettabili ✅ | Predefinito 📌 |
| device.role 🎭 | CLIENTE 👤, CLIENTE_MUTO 🤫, ROUTER 📡, RIPETITORE 🔄, TRACCIATORE 📍, SENSORE 🌡️ | CLIENTE 👤 |
| device.rebroadcast_mode 🔁 | TUTTI 📡, ALL_SKIP_DECODING 🚫, SOLO_LOCALE 📍 | TUTTI 📡 |
| device.button_gpio 🔘 | 0 – 34 🔢 | 0 |
| device.buzzer_gpio 🔔 | 0 – 34 🔢 | 0 |
