{"record":{"id":"88fe9bf75473c82f","repo":"home-assistant/core","slug":"update-failed-88fe9b","errorCode":"update_failed","errorMessage":"Failed to fetch firmware update information from the BleBox device: {error}","messagePattern":"Failed to fetch firmware update information from the BleBox device: (.+?)","errorType":"exception","errorClass":"HomeAssistantError","httpStatus":null,"severity":"error","filePath":"homeassistant/components/blebox/update.py","lineNumber":93,"sourceCode":"            self._in_progress_old_version is not None\n            and self._in_progress_old_version == self._feature.installed_version\n        )\n\n    def _sync_sw_version(self) -> None:\n        \"\"\"Sync installed firmware version to the device registry.\"\"\"\n        if self.device_entry:\n            dr.async_get(self.hass).async_update_device(\n                self.device_entry.id,\n                sw_version=self._feature.installed_version,\n            )\n\n    @override\n    async def async_update(self) -> None:\n        \"\"\"Update state and refresh sw_version in device registry.\"\"\"\n        try:\n            await self._feature.async_update()\n        except Error as ex:\n            raise HomeAssistantError(\n                translation_domain=DOMAIN,\n                translation_key=\"update_failed\",\n                translation_placeholders={\"error\": str(ex)},\n            ) from ex\n        self._sync_sw_version()\n\n    @property\n    @override\n    def installed_version(self) -> str | None:\n        \"\"\"Version installed and in use.\"\"\"\n        return self._feature.installed_version\n\n    @property\n    @override\n    def latest_version(self) -> str | None:\n        \"\"\"Latest version available for install.\"\"\"\n        return self._feature.latest_version\n","sourceCodeStart":75,"sourceCodeEnd":111,"githubUrl":"https://github.com/home-assistant/core/blob/58a3fdb3ea0538617f0a07efcfba6294de64fd59/homeassistant/components/blebox/update.py#L75-L111","documentation":"The blebox update entity's async_update calls the feature's async_update() to fetch firmware information; if the python-blebox library raises Error (network/protocol failure), it is wrapped in HomeAssistantError with key 'update_failed' ('Failed to fetch firmware update information from the BleBox device: {error}'). The installed version and available-update state cannot be refreshed until the device responds again.","triggerScenarios":"The update entity polls the device's firmware endpoint and the device is unreachable, times out, or returns an error — e.g. device offline, IP changed, or a captive/proxy response that fails parsing.","commonSituations":"Device powered off or Wi-Fi dropped; DHCP renewed the device IP; device busy during a firmware upgrade; intermittent 2.4 GHz connectivity.","solutions":["Confirm the BleBox device is reachable over HTTP at its configured address.","Pin a static IP / DHCP reservation for the device.","Update the integration and python-blebox library in case endpoint handling was fixed.","Retry once the device is back online; the entity recovers on the next successful update."],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":"from homeassistant.exceptions import HomeAssistantError\n\ntry:\n    await update_entity.async_update()\nexcept HomeAssistantError as err:\n    if err.translation_key == \"update_failed\":\n        _LOGGER.warning(\"Firmware info fetch failed: %s\", err)","preventionTips":["Keep the BleBox device reachable (static IP, good Wi-Fi).","Expect transient failures and rely on the entity's next scheduled poll instead of manual retries."],"tags":["home-assistant","blebox","firmware","update-entity","network"],"backgroundTag":null,"analyzedSha":"58a3fdb3ea0538617f0a07efcfba6294de64fd59","analyzedAt":"2026-08-14T20:54:38.818Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}