MeshMonitor v4.17.1-rc8
Warning
This is a pre-release for testing. It is not tagged latest. Back up your data before upgrading.
Summary
This RC closes two cross-source read leaks: traceroute history and unified telemetry now return only sources the viewer may read. The Unified Telemetry page is now a cross-source dashboard: one chart per favorited series, with one line per source and a Latest tab for current values. The ADS-B features gain OpenSky Network as a feed (OAuth2 client credentials required, honours its rate-limit pause). Aircraft matches are re-checked as a node moves, up to six times per flagging. The traceroute permission is split into Read and Write, and MeshCore trace-path now needs traceroute:write; a migration grants it to existing holders of nodes:write on MeshCore sources. The position estimator now counts each anchor once, so a node heard through one anchor no longer reports a false 50 m confidence, and Node Details explains how an estimate was made. MeshCore can now name unknown route hops from other sources you can read, including meshcore_mqtt feeds; this is off by default. The MQTT bridge gains an optional !hex client ID for single mode, stops after repeated evictions, and counts uplinks dropped while disconnected.
Features
- feat(meshcore): resolve unknown route hops from other sources (#5909) (#5911)
- feat(telemetry): cross-source Telemetry Dashboard on Unified Telemetry (#5896) (#5907)
- feat(adsb): add OpenSky Network as an ADS-B feed (#5877) (#5906)
- feat(adsb): re-check aircraft flight matches as the node moves (#5876) (#5905)
- feat(permissions): split traceroute into Read/Write; MeshCore trace-path takes traceroute:write (#5898) (#5903)
Bug Fixes
- fix(estimator): count unique anchor positions; explain estimates on Node Details (#5900) (#5904)
- fix(mqtt-bridge): single-mode client ID, eviction stop, uplink drop count (#5893) (#5902)
Security
- fix(security): scope traceroute history and unified telemetry to permitted sources (#5901)
Documentation
Chores
- chore: bump version to 4.17.1-rc8 (#5912)
Issues Resolved
- #5909 MeshCore: resolve unknown path hops using nodes from other sources
- #5908 Community Add-on Submission: ShackScreen
- #5900 Position estimator: repeat observations from one anchor inflate nEff
- #5898 Split traceroute permission into read/write
- #5896 Rewrite Unified Telemetry page as a cross-source Telemetry Dashboard
- #5877 Add OpenSky Network as an additional ADS-B source
- #5876 Re-evaluate aircraft flight match when node position diverges
Upgrade Notes
- Migrations 213–215 run on first boot: a
traceroute:writebackfill for MeshCore sources, re-check columns on aircraft flight matches, andmeshcore_nodes.advertSignatureVerified. - Some estimated pins may disappear from the map. Stale estimates are deleted, and single-anchor estimates (5 km) are wider than the map's 2 km display limit.
- Cross-source hop names are off by default: Settings → MeshCore Messaging. MQTT nodes become usable as each sends its next advert after you turn it on.
Full Changelog: v4.17.1-rc7...v4.17.1-rc8
🚀 MeshMonitor v4.17.1-rc8
📦 Installation
Docker (recommended):
docker run -d \
--name meshmonitor \
-p 8080:3001 \
-v meshmonitor-data:/data \
ghcr.io/Yeraze/meshmonitor:4.17.1-rc8🧪 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.