v1.7.0 - MeshMapper Coverage Support and Safer Legacy Routing
v1.7.0
This release adds MeshMapper coverage support, maintains legacy coverage map compatibility, and improves route accuracy on older 1-byte networks.
New in v1.7.0
All new ENV's in https://github.com/yellowcooln/meshcore-mqtt-live-map/blob/main/VERSIONS.md#v170-03-20-2026
Coverage API support
- Added support for two coverage providers:
- Legacy coverage maps using
/get-samples - MeshMapper using
https://meshmapper.net/coverage.php
- Legacy coverage maps using
- Legacy coverage map support remains unchanged and fully compatible
- MeshMapper API documentation:
- https://wiki.meshmapper.net/coverage-api/
- Access requires a Coverage API key provisioned by a Master administrator
- Each key is scoped to a specific region or multiregion group and includes a daily rate limit
- To avoid exhausting API limits:
- The server caches MeshMapper data hourly
- All user requests are served from the cached dataset instead of hitting the API directly
MeshMapper server-side caching
- Added server-side MeshMapper coverage sync
- Coverage data is downloaded and stored locally on the server
- Map requests now use the local cache instead of querying MeshMapper directly
- Added cooldown handling for MeshMapper API rate limits
- Added MeshMapper-specific configuration options:
- API key
- Cache file path
- Sync interval
- Rate-limit cooldown
Coverage age filtering
- Added
COVERAGE_MAX_AGE_DAYS - Full MeshMapper dataset is cached locally
- Only the most recent
Ndays are served to the map - Default coverage window is
30days
Safer 1-byte route resolution
- Tightened handling of ambiguous 1-byte route prefixes
- Removed weak matching when multiple nodes share the same first byte
- Ambiguous 1-byte hops now require stronger validation before rendering
- Reduces false long-distance links on large 1-byte meshes
Timing consistency fixes
- Improved route expiry behavior after page load
- Improved MQTT online indicator timing
- Route and MQTT timing now align with server time instead of relying solely on the browser clock
Testing
- Added coverage tests for:
- Legacy coverage maps
- MeshMapper integration
- Cache behavior
- Rate-limit cooldown handling
- Coverage age filtering
- Added regression tests for ambiguous 1-byte route handling