Features
- expand Matter device registration/mapping across supported device families (WallDimmer, WallSwitch, Serena tilt-only blinds, occupancy sensors, and Pico remotes) using
api.matter.deviceTypes.* - refactor platform layout into dedicated HAP and Matter modules (
Platform.HAP.ts,Platform.Matter.ts) and add Matter cluster helpers in device classes
Bug Fixes
- Matter registration: set required accessory metadata on root object (fixes missing
manufacturervalidation failures) - Matter registration: constrain bridged accessory display names to Matter nodeLabel length limits (fixes
Behaviors have errorson long room/device names) - Pico Matter composed endpoints: explicitly apply GenericSwitch
SwitchServerbehavior (GenericSwitch.with(SwitchServer)), restoring expected per-button rendering in Apple Home - Pico Matter behavior: move to GenericSwitch state updates for button presses, expand Pico button map coverage, and include Pico4Button in Matter GenericSwitch registration mapping
- add
options.excludedDeviceTypessupport to skip selected device types in both HAP and Matter registration paths (including removing cached accessories for explicitly excluded types) - remove legacy
options.filterBlindstoggle and rely onoptions.excludedDeviceTypesfor Serena blind exclusion - excluded-device cleanup: in Matter mode, unregister excluded cached accessories from both HAP and Matter registries for deterministic removal
- Pico button mapping robustness: improve
Pico3ButtonRaiseLoweralias resolution (includingFavoritecenter-button naming variants) and skip unknown button definitions without failing whole-remote initialization - Matter command handling: add explicit handlers so WallDimmer and WallSwitch On/Off/Level commands always dispatch LEAP
GoToLevelrequests - Matter blind control: add
windowCovering.goToTiltPercentagehandler for Serena tilt-only blinds to map Matter tilt commands to LEAP blind tilt writes - Matter external-state sync: propagate unsolicited bridge updates back into Matter cluster state for WallDimmer (
onOff+levelControl), WallSwitch (onOff), Serena tilt-only blinds (windowCoveringtilt), and occupancy sensors (occupancySensing) - Pico Matter composed endpoint polish: use
BridgedNodeas Pico parent in composed mode and provide partdisplayNamevalues to avoid undefined child labels in UI
Maintenance
- align imports/file naming with ESM casing expectations and update docs output
- bump Homebridge beta compatibility to
^2.0.0-beta.110and refresh lint/tooling dependencies
Full Changelog: v3.1.0...v3.1.1