# 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](https://wiki.meshamerica.com/books/hardware-guide/page/meshtastic-app): **Radio Config → Modules → Telemetry**

Via CLI:

```
meshtastic --set telemetry.device_update_interval 1800
meshtastic --set telemetry.environment_update_interval 1800
meshtastic --set telemetry.power_update_interval 1800
```

Intervals are in seconds. The default device telemetry update interval is 1800 seconds (30 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:

<table id="bkmrk-fieldsourcenotes-bat"><thead><tr><th>Field</th><th>Source</th><th>Notes</th></tr></thead><tbody><tr><td>Battery level (%)</td><td>Hardware ADC</td><td>Accuracy varies by board; some boards always report 100% if battery not detected</td></tr><tr><td>Voltage (V)</td><td>Hardware ADC</td><td>Useful for deriving SoC for LiFePO4 packs</td></tr><tr><td>Channel utilization (%)</td><td>Radio stats</td><td>Percentage of airtime used; over 25% indicates congestion</td></tr><tr><td>Air utilization TX (%)</td><td>Radio stats</td><td>Percentage of time this node was transmitting</td></tr><tr><td>Uptime (seconds)</td><td>System clock</td><td>Resets on power cycle</td></tr></tbody></table>

## Environment Telemetry

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

<table id="bkmrk-sensormeasuresi2c-ad"><thead><tr><th>Sensor</th><th>Measures</th><th>I2C Address</th><th>Notes</th></tr></thead><tbody><tr><td>BME280</td><td>Temp, Humidity, Pressure</td><td>0x76 or 0x77</td><td>Most popular; inexpensive; not suitable for air quality</td></tr><tr><td>BME680 / BME688 (BME68x)</td><td>Temp, Humidity, Pressure, gas resistance</td><td>0x76 or 0x77</td><td>Reports gas resistance (a VOC/air-quality proxy), not a fully-calibrated IAQ index, in Meshtastic; the gas sensor element needs a warm-up period before readings stabilize</td></tr><tr><td>SHT31</td><td>Temp, Humidity</td><td>0x44 or 0x45</td><td>High accuracy; ±0.3°C, ±2% RH (per Sensirion SHT3x datasheet)</td></tr><tr><td>MCP9808</td><td>Temperature only</td><td>0x18</td><td>±0.25°C accuracy (per Microchip MCP9808 datasheet, which is address-selectable across 0x18-0x1F); Meshtastic auto-detects it at 0x18</td></tr><tr><td>SHTC3</td><td>Temp, Humidity</td><td>0x70</td><td>Low power; used on some integrated boards</td></tr></tbody></table>

```
meshtastic --set telemetry.environment_measurement_enabled true
meshtastic --set telemetry.environment_screen_enabled true
```

## Power Telemetry

Requires a supported I2C current/voltage sensor on the 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 roughly 0.3-0.5 seconds of airtime. At 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