From 3a59a862d54a1482eca7be084d38313a4a97cc78 Mon Sep 17 00:00:00 2001 From: Erik Montnemery Date: Tue, 29 Oct 2024 17:50:43 +0100 Subject: [PATCH] Report update_percentage in smlight update entity (#129383) --- homeassistant/components/smlight/update.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/homeassistant/components/smlight/update.py b/homeassistant/components/smlight/update.py index cb28a197860..c1149fe3315 100644 --- a/homeassistant/components/smlight/update.py +++ b/homeassistant/components/smlight/update.py @@ -153,9 +153,8 @@ class SmUpdateEntity(SmEntity, UpdateEntity): """Update install progress on event.""" progress = int(progress.data) - if progress > 1: - self._attr_in_progress = progress - self.async_write_ha_state() + self._attr_update_percentage = progress + self.async_write_ha_state() def _update_done(self) -> None: """Handle cleanup for update done.""" @@ -166,6 +165,10 @@ class SmUpdateEntity(SmEntity, UpdateEntity): remove_cb() self._unload.clear() + self._attr_in_progress = False + self._attr_update_percentage = None + self.async_write_ha_state() + @callback def _update_finished(self, event: MessageEvent) -> None: """Handle event for update finished.""" @@ -186,6 +189,7 @@ class SmUpdateEntity(SmEntity, UpdateEntity): if not self.coordinator.in_progress and self._firmware: self.coordinator.in_progress = True self._attr_in_progress = True + self._attr_update_percentage = None self.register_callbacks() await self.coordinator.client.fw_update(self._firmware)