What's Changed
Features
- Remote Admin: expanded device configuration — Added 8 missing fields (rebroadcast mode, timezone, double-tap as button press, disable triple click, LED heartbeat, buzzer mode, button/buzzer GPIO) with full load/save support for remote nodes (#2235)
- Packet Monitor: date display — Time column now shows short date prefix for entries from prior days (#2232)
- Startup environment logging — All environment variables logged at startup with source tracking (#2221)
Bug Fixes
- Device metadata display — Human-readable names for hardware model, role, and position flags on Remote Admin page (#2236)
- Auto key management: non-message requests — Key mismatch errors now detected for NodeInfo, telemetry, and position requests, not just DMs (#2233)
- MQTT transport detection — Now checks newer firmware
transportMechanismenum in addition to legacyviaMqttbool (#2231) - Database purge on PostgreSQL/MySQL — Fixed purge of telemetry, messages, and traceroutes failing on non-SQLite backends (#2230, closes #2228)
- Public key sync — Prevent device sync from overwriting mesh-received public keys (#2229, closes #2210)
- macOS x64 build — Fixed build producing ARM64 binary instead of x86_64 (#2226, closes #2224)
- Channel Database default key — Support default key
AQ==and fix permission check (#2223, closes #2218) - Noisy logs — Reduced INFO-level log spam from poll endpoint and getDeviceConfig (#2222, closes #2219)
Closed Issues
- #2225 — NEIGHBORINFO_APP not received (user config: CORE_PORTNUMS_ONLY rebroadcast mode)
- #2220 — Startup log for effective timing values
Full Changelog: v3.8.7...v3.8.8
🚀 MeshMonitor v3.8.8
📦 Installation
Docker (recommended):
docker run -d \
--name meshmonitor \
-p 8080:3001 \
-v meshmonitor-data:/data \
ghcr.io/Yeraze/meshmonitor:3.8.8🧪 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.