What's Changed
Bug Fixes
- Fix Unwanted Config Entry Reloads: Fixed integration restarting whenever a device's availability changed. The device registry's
disabled_byfield was being updated on availability changes, which Home Assistant interprets as requiring a config entry reload. Entity availability is now handled exclusively through the entity'savailableproperty, which is the correct approach for transient state changes.
Bump aiohomematic to 2026.1.23
Bug Fixes
- Fix State Machine Transition Error on Unload: Allow transition from
FAILEDtoDISCONNECTEDstate. This fixesInvalidStateTransitionErrorwhen unloading the integration while a client is in failed state - Fix Leaked EventBus Subscriptions on Central Stop: Six internal subscription leaks have been fixed across
HubCoordinator,ClientCoordinator,CacheCoordinator,EventCoordinator,CentralUnit, and various client classes. The number of leaked subscriptions logged at shutdown has been reduced from ~7800 to zero - Fix Empty Device List Treated as Error: The
initialize_proxy()method now correctly handles empty device lists from interfaces that don't support RPC callbacks. Previously, an empty device list was incorrectly treated as a connection failure - Fix Ping/Pong Mismatch Issue Not Clearing: The
ping_pong_mismatchrepair issue is now correctly removed when the connection recovers (mismatch_count drops to 0). Previously, the issue remained visible even after recovery due to a type comparison mismatch - Clear Stale Issues on Startup: Transient repair issues (
ping_pong_mismatch,pending_pong_mismatch,unknown_pong_mismatch,fetch_data_failed,interface_not_reachable,xmlrpc_server_receives_no_events) are now automatically deleted when the integration starts. These issues from previous sessions are no longer relevant after a restart