home-assistant/core · error · HomeAssistantError

update_failed

update_failed

Error message

Failed to fetch firmware update information from the BleBox device: {error}

What it means

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.

Source

Thrown at homeassistant/components/blebox/update.py:93

            self._in_progress_old_version is not None
            and self._in_progress_old_version == self._feature.installed_version
        )

    def _sync_sw_version(self) -> None:
        """Sync installed firmware version to the device registry."""
        if self.device_entry:
            dr.async_get(self.hass).async_update_device(
                self.device_entry.id,
                sw_version=self._feature.installed_version,
            )

    @override
    async def async_update(self) -> None:
        """Update state and refresh sw_version in device registry."""
        try:
            await self._feature.async_update()
        except Error as ex:
            raise HomeAssistantError(
                translation_domain=DOMAIN,
                translation_key="update_failed",
                translation_placeholders={"error": str(ex)},
            ) from ex
        self._sync_sw_version()

    @property
    @override
    def installed_version(self) -> str | None:
        """Version installed and in use."""
        return self._feature.installed_version

    @property
    @override
    def latest_version(self) -> str | None:
        """Latest version available for install."""
        return self._feature.latest_version

View on GitHub (pinned to 58a3fdb3ea)

Solutions

  1. Confirm the BleBox device is reachable over HTTP at its configured address.
  2. Pin a static IP / DHCP reservation for the device.
  3. Update the integration and python-blebox library in case endpoint handling was fixed.
  4. Retry once the device is back online; the entity recovers on the next successful update.
Defensive patterns

Strategy: retry

Try / catch

from homeassistant.exceptions import HomeAssistantError

try:
    await update_entity.async_update()
except HomeAssistantError as err:
    if err.translation_key == "update_failed":
        _LOGGER.warning("Firmware info fetch failed: %s", err)

Prevention

When it happens

Trigger: 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.

Common situations: Device powered off or Wi-Fi dropped; DHCP renewed the device IP; device busy during a firmware upgrade; intermittent 2.4 GHz connectivity.

Related errors


AI-assisted analysis of home-assistant/core@58a3fdb3ea (2026-08-14). Data as JSON: /api/errors/88fe9bf75473c82f. Report an issue: GitHub.