Repository navigation
v0.4.0
What's New
Relay Nodes Tab
- New Relay tab (tab 7) showing nodes observed relaying traffic, ranked by relay count
- One row per relay byte with best-scoring candidate as the displayed identity
- Tap any row for a candidate detail dialog showing all candidates with scores, roles, hop distance, RSSI/SNR, and recency
- CLIENT_MUTE nodes excluded — nodes with role=1 can't relay and are filtered out
- Legacy relay footer — shows packet count (and RSSI/SNR when available) for relayed packets from older firmware without the
relay_nodefield
Search / Filter Bar
- Compact search bar on all tabs except Summary, between the tab row and content
- Automatically clears when switching tabs
- Case-insensitive substring matching on relevant fields per tab:
- Msgs: sender, recipient, message text, gateway
- Gates: short name, long name, gateway ID, last-byte hex
- Nodes: config key, short name, hex node ID
- Pkts: sender, packet type, gateway, relay hex byte
- TR: from/to names, route node names, gateway
- Relay: node short name, relay byte hex
Bug Fixes
- Notification persistence:
notifiedPacketIdssaved to SharedPreferences — no more notification flood after app kill/restart - DB role parsing fixed: now uses official Meshtastic protobuf enum names (
TAKnotATAK,TAK_TRACKERnotATAK_TRACKER); addedROUTER_LATEandCLIENT_BASEroles - CLIENT role (0) now stored: nodes with default CLIENT role show "Client" instead of "Unknown" in relay detail dialog
- Node role tracking: roles populated from both NODEINFO packets over MQTT and PostgreSQL
rolecolumn at startup
Full Changelog: v0.3.0...v0.4.0