diff --git a/homeassistant/components/knx/knx_entity.py b/homeassistant/components/knx/knx_entity.py index 31147625d16..670f1ddf44d 100644 --- a/homeassistant/components/knx/knx_entity.py +++ b/homeassistant/components/knx/knx_entity.py @@ -1,4 +1,6 @@ """Base class for KNX devices.""" +from __future__ import annotations + from typing import cast from xknx.devices import Climate as XknxClimate, Device as XknxDevice @@ -32,6 +34,11 @@ class KnxEntity(Entity): """No polling needed within KNX.""" return False + @property + def unique_id(self) -> str | None: + """Return the unique id of the device.""" + return self._device.unique_id + async def async_update(self) -> None: """Request a state update from KNX bus.""" await self._device.sync() diff --git a/homeassistant/components/knx/manifest.json b/homeassistant/components/knx/manifest.json index 629d43092d4..f15e909755c 100644 --- a/homeassistant/components/knx/manifest.json +++ b/homeassistant/components/knx/manifest.json @@ -2,7 +2,7 @@ "domain": "knx", "name": "KNX", "documentation": "https://www.home-assistant.io/integrations/knx", - "requirements": ["xknx==0.17.4"], + "requirements": ["xknx==0.17.5"], "codeowners": ["@Julius2342", "@farmio", "@marvin-w"], "quality_scale": "silver" } diff --git a/requirements_all.txt b/requirements_all.txt index 6ce5d01effe..a741d733598 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -2335,7 +2335,7 @@ xbox-webapi==2.0.8 xboxapi==2.0.1 # homeassistant.components.knx -xknx==0.17.4 +xknx==0.17.5 # homeassistant.components.bluesound # homeassistant.components.rest diff --git a/requirements_test_all.txt b/requirements_test_all.txt index 96bcbcab43d..b761c705de1 100644 --- a/requirements_test_all.txt +++ b/requirements_test_all.txt @@ -1208,7 +1208,7 @@ wolf_smartset==0.1.8 xbox-webapi==2.0.8 # homeassistant.components.knx -xknx==0.17.4 +xknx==0.17.5 # homeassistant.components.bluesound # homeassistant.components.rest