Per-device connectivity diagnostics
New per-device diagnostic entities so you can see — at a glance and on a dashboard — how fresh each device's data and commands are, per transport.
New entities (per device, in the Diagnostic section)
- Last Update Received (timestamp) — when this device last delivered data over any transport, rendered as relative "X ago".
- Last Command Sent (timestamp) — when a command was last sent to this device.
- Connectivity (connectivity) — overall reachability, with the full per-transport breakdown as attributes:
cloud_api_last_received / _last_sent,mqtt_last_received / _last_sent,ble_last_received / _last_sent, plus availability + last failure reason.
Under the hood
TransportHealthnow tracks direction separately — receive (poll read / inbound MQTT push) vs send (outbound command). A REST control both sends and receives, so it stamps both; native MQTT publishes are send-only.- Added a per-device MQTT receive timestamp (previously hub-level only).
- The diagnostics download now mirrors the directional
last_received/last_sentkeys.
The granular per-transport ×3 connectivity sensors remain opt-in via the Expose transport entities option.
🙏 Huge thanks
Special shout-out to @jeffarndt for outstanding real-world testing of the H5059-on-H5044 leak sensor support (#87). Across multiple rounds he captured debug logs through leak→clear cycles, pulled diagnostics downloads across 5 sensors, and came back for a precise single-probe trip that let us conclusively finish the multiSync wet decoder and prove the slot→sensor mapping in production. That kind of careful QA is exactly what a safety device deserves. Thank you! 💧
Full Changelog: v2026.6.4...v2026.6.5