From 4bcc551b61a23d2a1e40c6aabe0d3edddf243352 Mon Sep 17 00:00:00 2001 From: Thomas55555 <59625598+Thomas55555@users.noreply.github.com> Date: Thu, 2 Jan 2025 12:28:48 +0100 Subject: [PATCH] Add sw_version to apsystems (#134441) --- homeassistant/components/apsystems/coordinator.py | 3 +++ homeassistant/components/apsystems/entity.py | 3 ++- tests/components/apsystems/conftest.py | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/homeassistant/components/apsystems/coordinator.py b/homeassistant/components/apsystems/coordinator.py index e56cb826840..2535c66c4ac 100644 --- a/homeassistant/components/apsystems/coordinator.py +++ b/homeassistant/components/apsystems/coordinator.py @@ -29,6 +29,8 @@ class ApSystemsSensorData: class ApSystemsDataCoordinator(DataUpdateCoordinator[ApSystemsSensorData]): """Coordinator used for all sensors.""" + device_version: str + def __init__(self, hass: HomeAssistant, api: APsystemsEZ1M) -> None: """Initialize my coordinator.""" super().__init__( @@ -46,6 +48,7 @@ class ApSystemsDataCoordinator(DataUpdateCoordinator[ApSystemsSensorData]): raise UpdateFailed from None self.api.max_power = device_info.maxPower self.api.min_power = device_info.minPower + self.device_version = device_info.devVer async def _async_update_data(self) -> ApSystemsSensorData: try: diff --git a/homeassistant/components/apsystems/entity.py b/homeassistant/components/apsystems/entity.py index 519f4fffb61..7770b451680 100644 --- a/homeassistant/components/apsystems/entity.py +++ b/homeassistant/components/apsystems/entity.py @@ -21,7 +21,8 @@ class ApSystemsEntity(Entity): """Initialize the APsystems entity.""" self._attr_device_info = DeviceInfo( identifiers={(DOMAIN, data.device_id)}, - serial_number=data.device_id, manufacturer="APsystems", model="EZ1-M", + serial_number=data.device_id, + sw_version=data.coordinator.device_version.split(" ")[1], ) diff --git a/tests/components/apsystems/conftest.py b/tests/components/apsystems/conftest.py index 7a48ff7db3f..92af6885c0b 100644 --- a/tests/components/apsystems/conftest.py +++ b/tests/components/apsystems/conftest.py @@ -38,7 +38,7 @@ def mock_apsystems() -> Generator[MagicMock]: mock_api = mock_client.return_value mock_api.get_device_info.return_value = ReturnDeviceInfo( deviceId="MY_SERIAL_NUMBER", - devVer="1.0.0", + devVer="EZ1 1.0.0", ssid="MY_SSID", ipAddr="127.0.01", minPower=0,