From aa6fc013ec1a2f453cf46a20d75e1c7629473b92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20BOU=C3=89?= Date: Fri, 6 Dec 2024 14:03:41 +0100 Subject: [PATCH 1/6] Matter 1.4 rename BridgedDevice device type BREAKING change in the client: BridgedDevice is renamed to BridgedNode in the device types with Matter 1.4 --- homeassistant/components/matter/adapter.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/homeassistant/components/matter/adapter.py b/homeassistant/components/matter/adapter.py index 0ccd3e065ffb0..dad780d9a8725 100644 --- a/homeassistant/components/matter/adapter.py +++ b/homeassistant/components/matter/adapter.py @@ -5,7 +5,7 @@ from typing import TYPE_CHECKING, cast from chip.clusters import Objects as clusters -from matter_server.client.models.device_types import BridgedDevice +from matter_server.client.models.device_types import BridgedNode from matter_server.common.models import EventType, ServerInfoMessage from homeassistant.config_entries import ConfigEntry @@ -162,7 +162,7 @@ def _create_device_registry( ( x for x in endpoint.device_types - if x.device_type != BridgedDevice.device_type + if x.device_type != BridgedNode.device_type ), None, ) From 2449758bed39330515a8dc74733bad95c023976d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20BOU=C3=89?= Date: Fri, 6 Dec 2024 17:00:41 +0100 Subject: [PATCH 2/6] `ColorMode` enum type is renamed to `ColorModeEnum` --- homeassistant/components/matter/light.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/homeassistant/components/matter/light.py b/homeassistant/components/matter/light.py index 6d184bcc01f71..662899e688376 100644 --- a/homeassistant/components/matter/light.py +++ b/homeassistant/components/matter/light.py @@ -37,9 +37,9 @@ ) COLOR_MODE_MAP = { - clusters.ColorControl.Enums.ColorMode.kCurrentHueAndCurrentSaturation: ColorMode.HS, - clusters.ColorControl.Enums.ColorMode.kCurrentXAndCurrentY: ColorMode.XY, - clusters.ColorControl.Enums.ColorMode.kColorTemperature: ColorMode.COLOR_TEMP, + clusters.ColorControl.Enums.ColorModeEnum.kCurrentHueAndCurrentSaturation: ColorMode.HS, + clusters.ColorControl.Enums.ColorModeEnum.kCurrentXAndCurrentY: ColorMode.XY, + clusters.ColorControl.Enums.ColorModeEnum.kColorTemperature: ColorMode.COLOR_TEMP, } # there's a bug in (at least) Espressif's implementation of light transitions @@ -258,7 +258,7 @@ def _get_color_mode(self) -> ColorMode: """Get color mode from matter.""" color_mode = self.get_matter_attribute_value( - clusters.ColorControl.Attributes.ColorMode + clusters.ColorControl.Attributes.ColorModeEnum ) assert color_mode is not None From 180f0f3f7963c90901f580ed93c111d1b59b5017 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20BOU=C3=89?= Date: Fri, 6 Dec 2024 17:32:10 +0100 Subject: [PATCH 3/6] Item `ColorTemperature` renamed to `ColorTemperatureMireds` --- homeassistant/components/matter/light.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/homeassistant/components/matter/light.py b/homeassistant/components/matter/light.py index 662899e688376..13c7725c23a15 100644 --- a/homeassistant/components/matter/light.py +++ b/homeassistant/components/matter/light.py @@ -39,7 +39,7 @@ COLOR_MODE_MAP = { clusters.ColorControl.Enums.ColorModeEnum.kCurrentHueAndCurrentSaturation: ColorMode.HS, clusters.ColorControl.Enums.ColorModeEnum.kCurrentXAndCurrentY: ColorMode.XY, - clusters.ColorControl.Enums.ColorModeEnum.kColorTemperature: ColorMode.COLOR_TEMP, + clusters.ColorControl.Enums.ColorModeEnum.kColorTemperatureMireds: ColorMode.COLOR_TEMP, } # there's a bug in (at least) Espressif's implementation of light transitions From 24dee73f33731835f4302cbcea6c821d23538b2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20BOU=C3=89?= Date: Fri, 6 Dec 2024 22:20:07 +0100 Subject: [PATCH 4/6] Update ColorControl bitmaps and attributes --- homeassistant/components/matter/light.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/homeassistant/components/matter/light.py b/homeassistant/components/matter/light.py index 13c7725c23a15..96b7b0a6ba86d 100644 --- a/homeassistant/components/matter/light.py +++ b/homeassistant/components/matter/light.py @@ -258,7 +258,7 @@ def _get_color_mode(self) -> ColorMode: """Get color mode from matter.""" color_mode = self.get_matter_attribute_value( - clusters.ColorControl.Attributes.ColorModeEnum + clusters.ColorControl.Attributes.ColorMode ) assert color_mode is not None @@ -346,21 +346,21 @@ def _update_from_device(self) -> None: if ( capabilities - & clusters.ColorControl.Bitmaps.ColorCapabilities.kHueSaturationSupported + & clusters.ColorControl.Bitmaps.ColorCapabilitiesBitmap.kHueSaturation ): supported_color_modes.add(ColorMode.HS) self._supports_color = True if ( capabilities - & clusters.ColorControl.Bitmaps.ColorCapabilities.kXYAttributesSupported + & clusters.ColorControl.Bitmaps.ColorCapabilitiesBitmap.kXy ): supported_color_modes.add(ColorMode.XY) self._supports_color = True if ( capabilities - & clusters.ColorControl.Bitmaps.ColorCapabilities.kColorTemperatureSupported + & clusters.ColorControl.Bitmaps.ColorCapabilitiesBitmap.kColorTemperature ): supported_color_modes.add(ColorMode.COLOR_TEMP) self._supports_color_temperature = True From e1a60d99d46cddb17003d1f8b763db30b977a6c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20BOU=C3=89?= Date: Tue, 24 Dec 2024 09:44:38 +0100 Subject: [PATCH 5/6] Bump Python Matter server to 7.0.0 (Matter 1.4) --- homeassistant/components/matter/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/homeassistant/components/matter/manifest.json b/homeassistant/components/matter/manifest.json index 4573fe1740189..669fa1af8c435 100644 --- a/homeassistant/components/matter/manifest.json +++ b/homeassistant/components/matter/manifest.json @@ -7,6 +7,6 @@ "dependencies": ["websocket_api"], "documentation": "https://www.home-assistant.io/integrations/matter", "iot_class": "local_push", - "requirements": ["python-matter-server==6.6.0"], + "requirements": ["python-matter-server==7.0.0"], "zeroconf": ["_matter._tcp.local.", "_matterc._udp.local."] } From d593be2d7b71c16a1ae6be4142b27c8447a20de5 Mon Sep 17 00:00:00 2001 From: Ludovic BOUE Date: Tue, 24 Dec 2024 09:50:04 +0100 Subject: [PATCH 6/6] Bump requirements to Python Matter server to 7.0.0 --- requirements_all.txt | 2 +- requirements_test_all.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements_all.txt b/requirements_all.txt index dfdd11f26ce38..302940c27e171 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -2371,7 +2371,7 @@ python-linkplay==0.0.20 # python-lirc==1.2.3 # homeassistant.components.matter -python-matter-server==6.6.0 +python-matter-server==7.0.0 # homeassistant.components.xiaomi_miio python-miio==0.5.12 diff --git a/requirements_test_all.txt b/requirements_test_all.txt index eba507b39e68b..68c26eb45d546 100644 --- a/requirements_test_all.txt +++ b/requirements_test_all.txt @@ -1898,7 +1898,7 @@ python-kasa[speedups]==0.8.0 python-linkplay==0.0.20 # homeassistant.components.matter -python-matter-server==6.6.0 +python-matter-server==7.0.0 # homeassistant.components.xiaomi_miio python-miio==0.5.12