home-assistant/core · error · ConfigEntryNotReady

Can not connect to host

Error message

Can not connect to host

What it means

ConfigEntryNotReady('Can not connect to host') raised from BlinkCoordinator._async_setup when api.start() raises aiohttp ClientError or TimeoutError. ConfigEntryNotReady tells Home Assistant setup failed transiently; the entry stays in SETUP_RETRY and the coordinator retries with exponential backoff.

Source

Thrown at homeassistant/components/blink/coordinator.py:52

        self, hass: HomeAssistant, config_entry: BlinkConfigEntry, api: Blink
    ) -> None:
        """Initialize the data service."""
        self.api = api
        super().__init__(
            hass,
            _LOGGER,
            config_entry=config_entry,
            name=DOMAIN,
            update_interval=timedelta(seconds=SCAN_INTERVAL),
        )

    @override
    async def _async_setup(self):
        """Set up the coordinator."""
        try:
            await self.api.start()
        except (ClientError, TimeoutError) as ex:
            raise ConfigEntryNotReady("Can not connect to host") from ex
        except (BlinkTwoFARequiredError, UnauthorizedError) as ex:
            raise ConfigEntryAuthFailed("Required Blink re-authentication") from ex
        except Exception as ex:
            raise ConfigEntryError("Unknown error connecting to Blink") from ex

        if not self.api.available:
            raise ConfigEntryNotReady

    @override
    async def _async_update_data(self) -> dict[str, Any]:
        """Async update wrapper."""
        try:
            return await self.api.refresh(force=True)
        except UnauthorizedError as ex:
            raise ConfigEntryAuthFailed("Blink API authorization failed") from ex

View on GitHub (pinned to 58a3fdb3ea)

Solutions

  1. Wait: Home Assistant retries setup automatically with backoff; check status changes to SETUP_RETRY then LOADED
  2. Verify connectivity to Blink endpoints (curl https://rest.prod.immedia-semi.com) from the HA host
  3. Check DNS/firewall/ad-blocker isn't blocking or rate-limiting Blink domains
  4. If it persists for hours, check Blink status pages/community for an outage or API change
Defensive patterns

Strategy: retry

Try / catch

# In a custom coordinator wrapping blink: catch and translate
try:
    await api.start()
except (ClientError, TimeoutError) as ex:
    raise ConfigEntryNotReady("Can not connect to host") from ex

Prevention

When it happens

Trigger: Initial blinkpy login/startup HTTP request fails: DNS failure, TCP refused, TLS error (aiohttp ClientError) or the request exceeds the timeout during Blink's (historically slow) authentication handshake.

Common situations: Blink cloud outage or throttling; local network down or DNS broken; overly aggressive firewall/pihole blocking Blink endpoints; slow Blink auth servers during regional incidents; container without network at startup.

Related errors


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