1.10.11 (2026-02-04)
Bug Fixes
- #49: add cleaningModeEntity field to entity mapping UI and API (eb83809), closes #49
- #49: dynamic cleaning mode option matching for Dreame vacuums (179ee92), closes #49
- #49: improve error logging for HA action failures - show actual error instead of [object Object] (9068fb8), closes #49
- #49: improve room selection logging and use consistent mode matching (a1067b5), closes #49
- #49: preserve original error in retry utility to fix [object Object] logging (57a6d7f)
- #49: remove room-specific modes from RvcRunMode - use ServiceArea only for room selection (8afdaf3), closes #49
- #49: use room ID instead of array index for mode values to match ServiceArea (33a3816), closes #49
- #76: two-phase debounce for WindowCovering quick swipe handling (0896af3), closes #76
- add debug logging to behavior servers to diagnose initialization errors (602f121)
- add default values before super.initialize() to all behavior servers (#92) (90d5174)
- add detailed debug logging for ServiceArea cluster initialization (#49) (e9cb371)
- add logging to debug thermostat setpoint initialization (f4899a7)
- add missing defaults for AirQuality and ColorControl before super.initialize() (8cfbd81)
- add onOff and enhancedColorMode defaults before super.initialize() (c25cbc6)
- add water_heater to entity mapping dropdown and backend factories (90fc7e7)
- align ColorControl with Matter.js requirements for ExtendedColorLight (1d7806c)
- binary covers (garage doors) now show Open/Close buttons instead of only percentage slider (#78) (67e3c2a)
- capture action and homeAssistant before setTimeout to fix expired context crash (#76) (0509c7d)
- capture entityId and actions before setTimeout to prevent expired context (#76) (8bd6f71)
- correct ServiceArea initialize() to call super.initialize() first (5be3d06)
- debounce WindowCovering position commands to handle rapid Google Home updates (#76) (e28b763)
- define default setpoints in State class to fix NaN validation (#82) (87e5e2a)
- ensure colorTemperatureMireds is never undefined in update() (7f01a3a)
- ensure valid thermostat setpoints before super.initialize() - check for NaN (6d7a735)
- ExtendedColorLightType now only adds features the light actually supports (25e204b)
- frontend: load icon and priority when editing bridge (#81) (1e3eb8b)
- handle undefined thermostat setpoints to prevent NaN errors (#82) (a2bfbc2)
- light: set default ColorControl values before super.initialize() (#92) (fe9966e)
- pass initial supportedAreas to ServiceArea cluster at creation time (#49) (47bc74c)
- pass thermostat attributes in final .set() call to prevent override (37f4edd)
- pass thermostat initial state during registration (Matterbridge pattern) (5af23d8)
- preserve all fields in backup/export restore (priority, icon, filterLifeEntity, cleaningModeEntity) (b5976e2)
- prevent null/undefined from overwriting defaults in update() methods (d9dba0b)
- prevent undefined colorTemperatureMireds from overwriting defaults (34bc40a)
- re-apply thermostat defaults after .with() to prevent NaN validation errors (8d7683c)
- reduce WindowCovering debounce from 500ms to 200ms for quick swipes (#76) (fe2a1ef)
- refactor RvcRunModeServer to pass supportedModes at creation time (#49) (9ba2819)
- remove .with() calls on ClimateThermostatServer to prevent NaN validation errors (c4cad88)
- remove AutoMode feature from ClimateDevice to fix Behaviors have errors (#82) (b943898)
- remove Overkiz/Somfy from Matter semantics platforms - use standard HA inversion (#90) (5bd011c)
- restore exact alpha.194 behavior server code to diagnose ColorTemperatureLight issue (49f1327)
- restore required defaults before super.initialize() in behavior servers (3f9a5b2)
- revert getSystemMode to v1.10.6 behavior - map Auto to Heat/Cool without AutoMode feature (06413bb)
- revert LevelControlServer and ColorControlServer to alpha.194 behavior (a27c09c)
- revert to alpha.194 defaults - remove onLevel, colorMode, enhancedColorMode, onOff defaults (e797541)
- round currentLevel to integer for correct volume display (#79) (eaff2d1)
- save filterLifeEntity in entity mapping API and storage (914e136)
- sensors: add LevelIndication feature and proper min/max values to all concentration sensors (35d1d6f)
- set colorMode default for ColorTemperature-only lights to prevent validation errors (a19f281)
- set ColorTemperature boundaries before values to prevent validation errors (c2b8871)
- set default setpoints before super.initialize() to prevent NaN errors (#82) (a86deb5)
- set RvcRunMode supportedModes before super.initialize() for HomeKit compatibility (#49) (80260af)
- set thermostat defaults on featured base class before extension (#82) (1ac3dd6)
- speaker: remove currentLevelPercent from state - was confusing Google Home (#79) (2bef68d)
- speaker: use 0-100 range for volume in Google Home (#79) (01e6b75)
- speaker: use 0-254 range for volume - Google Home calculates percentage as currentLevel/254 (#79) (fe31c66)
- support nested Dreame room format and fallback to segments (#49) (f7ec6b2)
- suppress Invalid intervalMs errors to prevent FATAL crashes (#74, #76, #79, #80, #82) (e609988)
- temporarily disable ServiceArea cluster to debug vacuum issue (#49) (240df88)
- temporarily disable ServiceArea cluster to fix vacuum initialization (#49) (703278d)
- thermostat auto mode now correctly displays on Matter controllers (#71) (68c7cb1)
- ui: consolidate Backup & Restore section in Health page (#91) (ac4ddb9)
- update Matter.js to 0.16.8 in apps package.json (#49) (a69a55d)
- use dreame_vacuum.vacuum_clean_segment for Dreame vacuums (#49) (44e78aa)
- use ExtendedColorLight for ColorTemperature-only lights to fix initialization errors (435e798)
- use standard thermostat limits to prevent NaN validation errors (a8d56ac)
- use static State class for thermostat defaults (Matter.js pattern) (af0c8c7)
- vacuum: delay room cleaning until RvcRunMode start (#49) (d58863a)
- vacuum: filter out unnamed rooms like 'Room 7' by default (#49) (515c3ac)
- vacuum: handle segment_cleaning and other cleaning states for proper status display (#49) (95a84e0)
- vacuum: re-enable ServiceArea cluster using Matterbridge pattern (127a580)
- vacuum: target correct select entity for Dreame cleaning modes (#49) (77ef1b8)
Features
- add configurable bridge startup priority (#81) (4c3b6ff)
- add debug logging for cover state updates (#88) (437c017)
- add debug logging for ServiceArea cluster initialization (#49) (02580bb)
- add debug logging for vacuum room parsing (#49) (f9e996b)
- add EntityIsolationService to isolate problematic entities at runtime (1f53a24)
- add filter life sensor mapping for Air Purifiers in Entity Mapping UI (c083411)
- add HEPA filter life monitoring for Air Purifiers (47683f1)
- add includeMode (any/all) for AND/OR filter logic (#83) (16940e7)
- add Matter 1.4 Service Area cluster for Apple Home room selection (#49) (709bc8e)
- frontend: add drag-and-drop startup order dashboard (#81) (6b6c98a)
- frontend: add Startup Order button to header navigation (#81) (69f2352)
- merge alpha into main for v2.0.0 release (3f94d6d)
- re-enable ServiceArea cluster for Apple Home room selection (#49) (654c168)
- ui: redesign Backup & Restore with separate boxes and descriptions (e3fc1a4)
- update Matter.js to 0.16.8 for ServiceArea cluster fix (#49) (fe6b0e1)
- vacuum: add configurable cleaningModeEntity for Dreame vacuums (#49) (9165031)
- vacuum: add RvcCleanModeServer for Dreame cleaning modes (Sweeping, Mopping, etc.) (#49) (70f1b7b)