Skip to content
This repository was archived by the owner on Oct 15, 2026. It is now read-only.
scruplelesswizardPublic archive

About

Node-RED flows that decode Meshtastic mesh packets from MQTT and write telemetry to InfluxDB

Topics

Resources

Contributing

Security policy

Stars

18 stars

Watchers

4 watching

Forks

Latest commit

 

History

15 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

meshtastic-node-red

A ready-made Node-RED flow that turns Meshtastic mesh traffic into time-series data. It subscribes to your MQTT broker, decodes the protobuf packets, deduplicates them, resolves node names, and writes measurements to InfluxDB so you can chart your mesh in Grafana.

meshtastic-flow

Features

  • Ingestion from MQTT
  • Protobuf decoding
  • Message deduplication by packet ID (5 minute window, so one packet heard by several gateways is stored once)
  • Annotate integer-based node IDs as hex
  • Annotate packets with known NodeInfo (long name, short name, hardware model)
  • Split by every current port number
  • Writing Mesh, Packet, Position, Device, Environment and Neighbor measurements to InfluxDB
  • Debug nodes on all outputs

Included subflows

  • Ingest from MQTT
  • Measurement: Mesh
  • Measurement: Packet
  • Measurement: Position
  • Measurement: Device Telemetry
  • Measurement: Environment Telemetry
  • Measurement: Neighbors

Requirements

Quick start

  1. Install the two palette modules above (Menu, Manage palette, Install).

  2. Import meshtastic.json (Menu, Import, paste or select the file).

  3. Edit the two config nodes to match your environment. The defaults assume a Docker network:

    Node Default Change to
    MQTT broker (Mosquito) mqtt-mosquitto:1883 your broker host and port, plus credentials if you use them
    InfluxDB (Local InfluxDB) influxdb:8086, database msh your InfluxDB host, and a database you have created
  4. Make sure your Meshtastic nodes publish to the broker. The flow subscribes to msh/+/c/#.

  5. Deploy. Packets should start appearing in the debug sidebar and in InfluxDB.

Measurements written

Measurement Fields
Mesh Links between nodes (source, target) with SNR and RSSI
Packet Receive time, SNR, RSSI, hop limit, priority, delayed
Position Latitude, longitude, altitude, satellites in view, ground speed and track, PDOP
Device Battery level, voltage, channel utilization, TX air utilization
Environment Temperature, relative humidity, barometric pressure, gas resistance
Neighbor Neighbor links from NeighborInfo packets, with SNR

Every point is tagged with the sender and receiver (hex ID, short name, long name, hardware model), the channel and the gateway.

Status: archived

This project is archived and read-only. It is kept as a working reference for decoding Meshtastic MQTT traffic into InfluxDB with Node-RED.

It was last updated for Meshtastic firmware 2.2.15. Firmware 2.3.0 and later changed the MQTT payloads (see #11), so the "Ingest from MQTT" subflow needs modification before it will work with current firmware. You are welcome to fork it.

License

The Unlicense. Public domain.

About

Node-RED flows that decode Meshtastic mesh packets from MQTT and write telemetry to InfluxDB

Topics

Resources

Contributing

Security policy

Stars

18 stars

Watchers

4 watching

Forks

Releases

Packages

Used by

Contributors