A substantial UI redesign plus a new neighbors feature, graduating from v0.4.0-beta with two additional bug fixes.
What's new
- Neighbors section on repeater nodes — each heard neighbor with color-graded SNR, last-seen time, and 48h contact count, sourced from the integration's
neighbor_*entities. - Glassmorphism redesign across the hub/node, contact, and channel cards — translucent neutral-gray panels, sectioned layout (technical / location / MQTT / traffic / telemetry), online/offline status text, uptime beside the status, and an orange Repeater badge in the header.
- Better battery-voltage detection — recognizes short
_bat_style voltage entities (e.g.sensor.…_bat_<node>) while excluding percentage/level sensors.
Bug fixes since the beta
- Repeaters with many neighbors no longer render permanently offline. On a busy repeater the
_neighbor_*entities could outnumber the node's own entities, defeating the entity-suffix heuristic soonline/uptime/request_successesfailed to resolve. Neighbor entities are now excluded when deriving the node prefix/suffix. (#24) - "MeshCore" casing corrected in the English and Polish empty-state messages.
Localization
- Full parity across English, French, Dutch, German, and Polish (70/70 keys). Polish is a first-class, regression-checked locale.
Security & reliability (carried from 0.3.3–0.3.5)
- Mesh-sourced strings (
adv_name, contact attributes,entity_picture/icon) are HTML-escaped and validated against safe-shape allow-lists. - Repeater detection and online-status fixes for current meshcore-ha entity layouts.
If you're upgrading from ≤0.3.2, all users should update (the escaping fix is a security fix).
Credits
Huge thanks to @dida886 (Damian Mainka) for the glassmorphism redesign, neighbors section, battery-detection improvements, and Polish translation (#20), and to @drewmccal (Drew McCal) for the many-neighbors offline fix (#24). 🙏
Full changelog: v0.3.5...v0.4.0