Skip to main content

Telemetry Module Configuration

The Telemetry Module provides four types of data over the mesh: Device metrics (Battery Level, Voltage, Channel Utilization and Airtime) from your Meshtastic device, Environment Metrics, Air Quality Metrics, and Health metrics (Heart rate, Oxygen Saturation and body temperature).

Supported sensors connected to the I2C bus of the device will be automatically detected at startup. The Environment Telemetry, Air Quality, and Health Telemetry modules must be enabled for them to be instrumented and their readings sent over the mesh.

Currently Supported Sensor Types

SensorI2C AddressData Points
BMP0850x76, 0x77Temperature and barometric pressure
BMP1800x76, 0x77Temperature and barometric pressure
BMP2800x76, 0x77Temperature and barometric pressure
BME2800x76, 0x77Temperature, barometric pressure and humidity
BME68x0x76, 0x77Temperature, barometric pressure, humidity and air resistance
MCP98080x18Temperature
INA2600x40, 0x41, 0x43Current and Voltage
INA2190x40, 0x41, 0x43Current and Voltage
INA32210x423-channel Current and Voltage
LPS220x5D, 0x5CBarometric pressure
SHTC30x70Temperature and humidity
SHT310x44Temperature and humidity
PMSA003I0x12Concentration units by size and particle counts by size
DFROBOT_LARK0x42Temperature, barometric pressure, humidity, wind direction, wind speed
MAX301020x57Heart Rate, Oxygen Saturation, and body temperature
MLX906140x5ABody temperature

Module Config Values

Environment Telemetry Enabled

Enable the Environment Telemetry (Sensors).

Environment Metrics Update Interval

How often we should send Environment(Sensor) Metrics over the mesh.

Default is 1800 seconds (30 minutes).

Device Metrics Update Interval

How often we should send Device Metrics over the mesh.

Default is 1800 seconds (30 minutes).

Device Metrics to a connected client app will always be sent once per minute, regardless of this setting.

Environment Screen Enabled

Show the environment telemetry data on the device display.

Default is false.

Display Fahrenheit

The sensor is always read in Celsius, but the user can opt to display in Fahrenheit (on the device display only) using this setting.

Default is false.

Air Quality Enabled

This option is used to enable/disable the sending of air quality metrics from an attached supported sensor over the mesh network.

Default is false.

Air Quality Interval

This option is used to configure the interval (in seconds) that should be used to send air quality metrics from an attached supported sensor over the mesh network.

Default is 1800 seconds (30 minutes).

Power Metrics Enabled

This option is used to enable/disable the sending of power telemetry as gathered by an attached supported voltage/current sensor. Note that this does not need to be enabled to monitor the voltage of the battery.

Default is false.

Power Metrics Interval

This option is used to configure the interval (in seconds) that should be used to send power metrics from an attached supported sensor over the mesh network.

Health Telemetry Enabled

This option is used to enable/disable the sending of health data from an attached supported sensor over the mesh network.

Default is false.

Health Telemetry Interval

This option is used to configure the interval (in seconds) that should be used to send health data from an attached supported sensor over the mesh network.

Default is 1800 seconds (30 minutes).

Telemetry Config Client Availability

Apple

info

All telemetry module config options are available on iOS, iPadOS and macOS at Settings > Module Configuration > Telemetry (Sensors).

Examples

RAK 4631 with BME680 Environment Sensor

Setup of a RAK 4631 with Environment Sensor

Requirements:

  • RAK4631
  • Environment Sensor

Steps:

  • configure the device:
meshtastic --set telemetry.environment_measurement_enabled true --set telemetry.environment_screen_enabled true --set telemetry.environment_display_fahrenheit true
tip

While the above values serve as an example and can be modified to fit your specific needs, it is advisable to chain multiple commands together, as demonstrated in the example. This approach will minimize the number of necessary reboots.

  • Device will reboot after command is sent.
  • When the device boots again it should say "Telemetry" and it may show the sensor data
  • If this does not appear to have any effects, run:
meshtastic --noproto

And examine the serial logs for Telemetry diagnostic information.

Supporting Additional Sensors

Environment Metrics

The environment metrics in the telemetry module supports a limited amount of fields as they are stored in memory on the device. Support for sensors that provide one or more of the following fields can potentially be added to the main firmware provided there is a GPL licensed library for us to include to support it, and the library size is not prohibitive.

  • Temperature
  • Relative Humidity
  • Barometric Pressure
  • Gas Resistance (AQI)
  • Voltage
  • Current

Supporting Other Sensor types

For other interesting sensor types and use cases we need to add a portnum for more generic telemetry packets and a second MCU will be required to interact with the sensor and process the data to be sent over the mesh. This data will not be stored in the nodedb on the device.