What's Changed
Integration
- Fixed
homematic.device_availabilityandhomematic.device_errorevents being silently dropped whenevent.device_namefrom aiohomematic was empty and the user had not overridden the device name in HA:_fire_device_availability_eventand_on_device_triggernow fall back todevice_entry.namefrom the HA device registry, soEVENT_NAMEis always populated and the event passes schema validation - Automatically remove orphaned entity registry entries — including disabled ones — on integration startup (#3176):
ControlUnit.start_centralschedules_async_cleanup_orphaned_entity_registry_entriesafter the central reachesRUNNING, removing any entry whose underlying aiohomematic data point, hub data point or channel event group no longer exists. Replaces the previous manual workaround of "enable disabled entity → reload → entity gets deleted" - Fixed orphan cleanup wrongly deleting hub-backed entities (
system_update,inbox,service_messages,alarm_messages, program buttons likecreate_backup) on every HA restart: the aiohomematic scheduler fetches these hub data points asynchronously afterstart_central(), so the cleanup is now deferred viaasync_call_later(120 s) and cancelled instop_central, giving the initial scheduler iteration time to populatehub_coordinator.get_hub_data_points()before we evaluate which entries are truly orphaned
Dependencies
Bump aiohomematic to 2026.5.5
- Fixed climate
activitywrongly reportingHEATin cooling mode (HmIP-WTH-1 + HmIP-FALMOT-C12) - Fixed RF dimmer entities flickering between target, intermediate, and final values during ramps by treating
LEVEL_REALas the authoritative status source - Fixed HM
LOWBATnot being reflected inMaintenanceData.low_bat(HM devices now correctly report low-battery state to consumers like the config panel) - Fixed
HmIP-RGBW/HmIP-DRG-DALIturn_offwithtransitionbeing rejected by the CCU (regression from 2026.4.7): the offputParamsetnow usesRAMP_TIME_VALUE/RAMP_TIME_UNITagain, so ramped turn-off works and no longer requires a second click - Fixed RF dimmer
is_on/brightnessbriefly flipping back to the previous state during a ramp (regression from #3166):_effective_levelnow consults the unconfirmed sent value between optimistic state and the group-level fallback, so the sent target stays authoritative until the CCU echoes a matching value - Fixed residual dimmer flicker not fully resolved by 2026.5.4 (#3177 follow-up): the previous fix relied on
unconfirmed_last_value_send, but the tracker was only populated after the backend call returned — an echo arriving while we were still awaitingthrottle.acquire()/setValuecleared the optimistic state and_effective_levelfell back to the stale_dp_group_level. A new_in_flight_commandsmap onInterfaceClient, populated synchronously before the first suspend point inset_value/put_paramsetand dropped infinally, now keeps the sent target authoritative end-to-end
aiohomematic-config remains at 2026.4.7
- No API or behavior changes for the integration since 2.7.0
homematicip-local-frontend (last commit unchanged since 2.7.0)
- Latest commit is "Schedule Card — Valve as Binary, Duration Limits (#57)", already shipped with 2.7.0