home-assistant/core · error · ConfigEntryError

smart_meter_unavailable

smart_meter_unavailable

Error message

This account no longer has a smart meter associated with it.

What it means

Raised as ConfigEntryError (translation smart_meter_unavailable) when _aw.validate_smart_meter() throws SmartMeterUnavailableError after successful auth: the account no longer has an associated smart meter, so there is nothing this integration can poll. ConfigEntryError marks the entry as a hard setup error (no automatic retry); the user must fix the account or remove the entry.

Source

Thrown at homeassistant/components/anglian_water/__init__.py:67

        await auth.send_refresh_request()
    except ConsentRequiredError as err:
        async_create_consent_required_issue(hass, entry.data[CONF_ACCOUNT_NUMBER])
        raise ConfigEntryNotReady(
            translation_domain=DOMAIN,
            translation_key="consent_required",
        ) from err
    except (ExpiredAccessTokenError, InvalidGrantError, SelfAssertedError) as err:
        raise ConfigEntryAuthFailed(
            translation_domain=DOMAIN,
            translation_key="auth_expired",
        ) from err

    _aw = AnglianWater(authenticator=auth)

    try:
        await _aw.validate_smart_meter(entry.data[CONF_ACCOUNT_NUMBER])
    except SmartMeterUnavailableError as err:
        raise ConfigEntryError(
            translation_domain=DOMAIN, translation_key="smart_meter_unavailable"
        ) from err

    hass.config_entries.async_update_entry(
        entry, data={**entry.data, CONF_ACCESS_TOKEN: auth.refresh_token}
    )
    entry.runtime_data = coordinator = AnglianWaterUpdateCoordinator(
        hass=hass, api=_aw, config_entry=entry
    )

    await coordinator.async_config_entry_first_refresh()
    await hass.config_entries.async_forward_entry_setups(entry, _PLATFORMS)
    return True


async def async_unload_entry(
    hass: HomeAssistant, entry: AnglianWaterConfigEntry
) -> bool:

View on GitHub (pinned to 58a3fdb3ea)

Solutions

  1. Verify on the Anglian Water portal that a smart meter is still active on that account number.
  2. If the account number changed, delete the entry and set the integration up again with the new details.
  3. If the meter was genuinely removed, delete the integration entry — the error will not clear itself.
Defensive patterns

Strategy: validation

Try / catch

ConfigEntryError has no retry semantics — catch nothing; verify the account/meter on the portal and recreate or delete the entry.

Prevention

When it happens

Trigger: validate_smart_meter(account_number) where the API reports no smart meter device on the account — meter swapped out, account closed/migrated, or wrong account number in the entry.

Common situations: Customer switched tariff/provider or replaced the meter; account number typo entered during config; Anglian Water migrated the account to a new system.

Related errors


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