π MQTT Node Tracking
This release adds the ability to distinguish between RF-connected and MQTT-connected nodes in your mesh network.
New Features
MQTT Node Identification
- π Globe icon displays for nodes connected via MQTT
- "Show MQTT" checkbox on map to filter MQTT nodes (defaults to enabled)
- Captures
via_mqttfield from NodeInfo protobuf (field 8) - Visual distinction between RF and MQTT connectivity
Connection Reliability Improvements
- βΎοΈ Removed 10-attempt reconnection limit - now retries forever
- β±οΈ Increased max backoff delay from 30s to 60s
- π Exponential backoff sequence: 1s β 2s β 4s β 8s β 16s β 32s β 60s (capped)
- System will continuously attempt reconnection until successful or manually disconnected
Documentation
- π New FAQ section: "What do the icons in the Node List mean?"
- Comprehensive reference for all node icons and indicators
- Covers MQTT, telemetry, weather, PKC, favorites, and more
Technical Details
Database Changes
- Added
viaMqttboolean column to nodes table - Automatic migration for existing databases
- Backward compatible with previous versions
API Changes
DeviceInfointerface now includes optionalviaMqttfield/api/nodesendpoint returnsviaMqttstatus for each node- MapContext includes
showMqttNodesstate
Testing
- β 4 new database tests for viaMqtt field handling
- β MapContext tests for showMqttNodes state
- β All 621 tests passing
- β TypeScript compilation successful
Files Changed
13 files changed, 221 insertions(+), 21 deletions(-)
Upgrade Notes
Automatic Migration
- Database schema will automatically migrate on first startup
- No manual intervention required
- Existing nodes will default to
viaMqtt: false
Breaking Changes
- None - fully backward compatible
How It Works
MQTT nodes are identified when:
- Your node receives NodeInfo with
via_mqtt=truefrom the mesh - The node was witnessed through an MQTT broker connection
- Remote nodes relay information about MQTT-connected nodes
Screenshots
The π globe icon appears next to MQTT nodes in the Node List, and the "Show MQTT" checkbox in map controls allows filtering their display.
Full Changelog: v2.6.5...v2.6.6
π€ Generated with Claude Code
π MeshMonitor v2.6.6
π¦ Installation
Docker (recommended):
docker run -d \
--name meshmonitor \
-p 8080:3001 \
-v meshmonitor-data:/data \
ghcr.io/Yeraze/meshmonitor:v2.6.6π§ͺ Testing
β
All tests passed
β
TypeScript checks passed
β
Docker images built for linux/amd64, linux/arm64, linux/arm/v7
π Changes
See commit history for detailed changes.