Skip to main content

Telemetry Module: Device, Environment, and Power

The Telemetry module broadcasts sensor data from your node across the mesh - battery voltage, temperature, humidity, barometric pressure, and more. Other nodes receive this data and display it in the app, and it can be forwarded to external systems via MQTT. Note that telemetry (battery state, temperature, and occupancy-correlated patterns) is broadcast on the channel and, on any channel with an MQTT uplink, is republished to the broker externally. Disable telemetry types you do not need on sensitive or privacy-critical nodes.

Enabling Telemetry

In the Meshtastic app: Radio Config → Modules → Telemetry

Via CLI:

meshtastic --set telemetry.device_update_interval 9001800
meshtastic --set telemetry.environment_update_interval 9001800
meshtastic --set telemetry.power_update_interval 9001800

Intervals are in seconds. Setting to 0 disables that telemetry type. The default ofdevice 900telemetry update interval is 1800 seconds (1530 minutes), which is appropriate for most deployments. Setting an interval to 0 selects the default (1800 s) - it does not disable that telemetry type. To disable a telemetry type, set its *_measurement_enabled flag to false instead.

Device Telemetry

Device telemetry is always available - it reports internal state from the node itself, no external sensors required:

FieldSourceNotes
Battery level (%)Hardware ADCAccuracy varies by board; some boards always report 100% if battery not detected
Voltage (V)Hardware ADCUseful for deriving SoC for LiFePO4 packs
Channel utilization (%)Radio statsPercentage of airtime used; over 25% indicates congestion
Air utilization TX (%)Radio statsPercentage of time this node was transmitting
Uptime (seconds)System clockResets on power cycle

Environment Telemetry

Requires an external I2C sensor. Supported sensors include:include (accuracy figures are from each sensor's manufacturer datasheet):

SensorMeasuresI2C AddressNotes
BME280Temp, Humidity, Pressure0x76 or 0x77Most popular; inexpensive; not suitable for air quality
BME680 / BME688 (BME68x)Temp, Humidity, Pressure, VOC/IAQgas resistance0x76 or 0x77AddsReports airgas resistance (a VOC/air-quality index;proxy), requiresnot 5-minutea warmupfully-calibrated IAQ index, in Meshtastic; the gas sensor element needs a warm-up period before readings stabilize
SHT31Temp, Humidity0x44 or 0x45High accuracy; ±0.3°C, ±2% RH (per Sensirion SHT3x datasheet)
MCP9808Temperature only0x18-0x1F0x18±0.25°C accuracy;accuracy for(per precisionMicrochip temperatureMCP9808 monitoringdatasheet, which is address-selectable across 0x18-0x1F); Meshtastic auto-detects it at 0x18
SHTC3Temp, Humidity0x70Low power; used on some integrated boards
meshtastic --set telemetry.environment_measurement_enabled true
meshtastic --set telemetry.environment_screen_enabled true

Power Telemetry

Requires ana INA219supported orI2C INA260 currentcurrent/voltage sensor on the I2Cbus: bus.INA219, INA226, INA260, or INA3221. Reports voltage, current draw, and calculated power consumption - useful for monitoring solar systems and diagnosing battery drain.

meshtastic --set telemetry.power_measurement_enabled true

Telemetry Intervals and Airtime Impact

Every telemetry broadcast consumes airtime. At Long Fast preset, a small telemetry packet takes approximatelyroughly 0.3-0.5 seconds of airtime. At 15-30-minute intervals with one sensor type, this is negligible. But if you enable all three telemetry types at 5-minute intervals on a busy network, the combined airtime impact becomes meaningful. As a guideline:

  • Fixed infrastructure nodes: 15-30 minute intervals are appropriate
  • Portable/personal nodes: 30-60 minute intervals to reduce network load
  • Emergency operations (where battery monitoring is critical): 5-minute intervals acceptable