# Telemetry & Monitoring

# Environmental Sensors & Telemetry

MeshCore nodes can be equipped with environmental sensors to report weather data, air quality, and precise positioning across the mesh. This turns repeater nodes into distributed sensor stations.

## Supported sensor types

<table id="bkmrk-sensormeasurementsin"><thead><tr><th>Sensor</th><th>Measurements</th><th>Interface</th><th>Cost</th><th>Notes</th></tr></thead><tbody><tr><td>**BME280**</td><td>Temperature, humidity, barometric pressure</td><td>I²C or SPI</td><td>$3 - 8</td><td>Most common; accurate; fast response</td></tr><tr><td>**BME680**</td><td>Temperature, humidity, pressure, VOC/air quality index</td><td>I²C or SPI</td><td>$8 - 15</td><td>Adds air quality score; best for environmental monitoring</td></tr><tr><td>**SHT31**</td><td>Temperature, humidity</td><td>I²C</td><td>$5 - 10</td><td>Higher accuracy than BME280 for humidity; no pressure</td></tr><tr><td>**GPS modules**</td><td>Latitude, longitude, altitude, speed, heading</td><td>UART</td><td>$5 - 25</td><td>See GPS module comparison below</td></tr><tr><td>**INA219 / INA260**</td><td>Voltage, current, power draw</td><td>I²C</td><td>$2 - 5</td><td>Battery and solar monitoring; useful for remote health checks</td></tr></tbody></table>

## GPS module comparison

<table id="bkmrk-moduleconstellations"><thead><tr><th>Module</th><th>Constellations</th><th>Current draw</th><th>Cold fix time</th><th>Notes</th></tr></thead><tbody><tr><td>**u-blox M8N**</td><td>GPS, GLONASS, BeiDou</td><td>~25 mA</td><td>~30 s</td><td>Common in T-Echo, T-Beam; good urban performance</td></tr><tr><td>**u-blox M10**</td><td>GPS, GLONASS, BeiDou, Galileo</td><td>~15 mA</td><td>~25 s</td><td>Newer generation; lower power, better accuracy</td></tr><tr><td>**u-blox MAX-M10S**</td><td>GPS, GLONASS, BeiDou, Galileo</td><td>~5 mA</td><td>~25 s</td><td>Ultra-low power; T-Deck Plus; best for battery nodes</td></tr><tr><td>**Quectel L76K**</td><td>GPS, GLONASS, BeiDou</td><td>~20 mA</td><td>~35 s</td><td>Budget option; lower sensitivity than u-blox</td></tr><tr><td>**UC6580**</td><td>GPS, GLONASS, BeiDou, Galileo, QZSS, NavIC (L1+L5)</td><td>~30 mA</td><td>~20 s</td><td>Heltec T096; dual-band L1+L5; highest precision available</td></tr></tbody></table>

**Note:** GPS draws significant power (~15 - 30 mA active). For repeater deployments where position is static, configure the node to fix position at startup and then disable GPS polling to save power.

## Connecting a BME280 to common boards

Most MeshCore-compatible boards expose I²C headers. Standard connection:

<table id="bkmrk-bme280-pinrak4631-%2F-"><thead><tr><th>BME280 pin</th><th>RAK4631 / WisBlock</th><th>Heltec V4 / V3</th><th>T-Echo</th></tr></thead><tbody><tr><td>VCC</td><td>3.3V</td><td>3.3V (pin 13)</td><td>3.3V</td></tr><tr><td>GND</td><td>GND</td><td>GND (pin 14)</td><td>GND</td></tr><tr><td>SDA</td><td>IO1 (SDA)</td><td>GPIO 41</td><td>SDA (P0.26)</td></tr><tr><td>SCL</td><td>IO2 (SCL)</td><td>GPIO 42</td><td>SCL (P0.27)</td></tr><tr><td>SDO</td><td>GND (I²C addr 0x76)</td><td>GND</td><td>GND</td></tr><tr><td>CSB</td><td>3.3V (I²C mode)</td><td>3.3V</td><td>3.3V</td></tr></tbody></table>

## Enabling telemetry in MeshCore firmware

Sensor support is compiled into the firmware for supported boards. For custom sensor connections:

```
# In platformio.ini build flags, add sensor definition:
build_flags =
 -DHAS_BME280=1
 -DBME280_I2C_ADDR=0x76

# Then rebuild and flash
pio run -e your_target --target upload

```

Pre-built firmware with BME280 support is available for RAK4631 WisBlock (which has a dedicated sensor slot) and select Heltec builds. Check the MeshCore firmware releases page for available variants.

## Telemetry data in the mesh

Sensor data is included in periodic telemetry packets broadcast by the node. Other nodes and apps that receive these packets display:

- Temperature and humidity at the repeater's physical location
- Barometric pressure trend (useful for weather monitoring)
- Air quality index (BME680 only)
- Battery voltage and solar input (if INA219 connected)

The [RegionMesh](https://wiki.meshamerica.com/books/north-american-networks/page/regionmesh) community operates several telemetry-equipped repeaters on hilltops and tower sites, providing real-time weather data for the surrounding area via the mesh network.

## Network monitoring with MQTT

For operators managing multiple nodes, MeshCore can be bridged to MQTT for centralized monitoring:

- Run a MeshCore Room Server (running on dedicated nRF52840 or ESP32 hardware)
- All mesh traffic (messages, telemetry, node advertisements) is forwarded to MQTT topics
- Visualize with Grafana + InfluxDB for historical trending
- Alert on node disappearance (node stops advertising = possible power failure)

See the *Room Servers &amp; Gateways* section for MQTT bridge setup details.