Describe the bug
Follow-up from topic #331 (comment)
@vincentwolsink IP = 192.168.1.248
Error communcating with API. Reinstalling the integration doesn't fix it.
Account type
Envoy
Home Assistant
- Version: core-2026.7.2 on Home Assistant OS
Additional context
If you look closely you can see that I sometimes get a short connection and a bit of data:
Relevant snippet of Home Assistant error log.
Below the debug-log
2026-07-17 22:08:47.617 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Checking Token value: [GECENSUREERD_TOKEN]
2026-07-17 22:08:47.617 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Token is populated: [GECENSUREERD_TOKEN]
2026-07-17 22:08:47.617 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] TOKEN TYPE: installer
2026-07-17 22:08:47.618 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Token expired on: 2026-07-09 05:45:11
2026-07-17 22:08:47.618 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Found Expired token - Retrieving new token
2026-07-17 22:08:47.618 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Fetching Entrez token
2026-07-17 22:08:48.785 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Entrez Token: [GECENSUREERD_TOKEN]
2026-07-17 22:08:48.786 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] TOKEN TYPE: installer
2026-07-17 22:08:48.786 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Token expires at: 2026-07-18 10:08:48
2026-07-17 22:08:48.786 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] HTTP POST Attempt: https://[ENVOY_IP]/auth/check_jwt
2026-07-17 22:08:48.787 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] HTTP POST Data: None
2026-07-17 22:09:18.794 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] TransportError:
2026-07-17 22:09:18.795 DEBUG (MainThread) [custom_components.enphase_envoy] Finished fetching envoy Envoy [ENVOY_SERIAL] data in 31.179 seconds (success: False)
2026-07-17 22:09:18.796 INFO (MainThread) [custom_components.enphase_envoy] Config entry 'Envoy [ENVOY_SERIAL]' for enphase_envoy integration not ready yet: Error communicating with API: ; Retrying in 10 seconds
2026-07-17 22:09:18.796 DEBUG (MainThread) [custom_components.enphase_envoy] Full exception
Traceback (most recent call last):
File "/usr/local/lib/python3.14/site-packages/httpx/_transports/default.py", line 101, in map_httpcore_exceptions
yield
... [TRACEBACK INGEKORT] ...
File "/usr/local/lib/python3.14/site-packages/httpcore/_exceptions.py", line 14, in map_exceptions
raise to_exc(exc) from exc
httpcore.ConnectTimeout
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/config/custom_components/enphase_envoy/init.py", line 102, in async_update_data
await envoy_reader.get_data()
File "/config/custom_components/enphase_envoy/envoy_reader.py", line 1250, in get_data
await self.init_authentication()
File "/config/custom_components/enphase_envoy/envoy_reader.py", line 1089, in init_authentication
await self._get_enphase_token()
File "/config/custom_components/enphase_envoy/envoy_reader.py", line 1022, in _get_enphase_token
await self._refresh_token_cookies()
File "/config/custom_components/enphase_envoy/envoy_reader.py", line 1033, in _refresh_token_cookies
token_validation = await self._async_post(
^^^^^^^^^^^^^^^^^^^^^^^
ENDPOINT_URL_CHECK_JWT.format(self.host)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
... [TRACEBACK INGEKORT] ...
File "/usr/local/lib/python3.14/site-packages/httpx/_transports/default.py", line 118, in map_httpcore_exceptions
raise mapped_exc(message) from exc
httpx.ConnectTimeout
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 435, in _async_refresh
self.data = await self._async_update_data()
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 315, in _async_update_data
return await self.update_method()
File "/config/custom_components/enphase_envoy/init.py", line 106, in async_update_data
raise UpdateFailed(f"Error communicating with API: {err}") from err
homeassistant.helpers.update_coordinator.UpdateFailed: Error communicating with API:
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 798, in __async_setup_with_context
result = await component.async_setup_entry(hass, self)
File "/config/custom_components/enphase_envoy/init.py", line 125, in async_setup_entry
await coordinator.async_config_entry_first_refresh()
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 325, in async_config_entry_first_refresh
await self._async_config_entry_first_refresh()
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 360, in _async_config_entry_first_refresh
raise ex
homeassistant.exceptions.ConfigEntryNotReady: Error communicating with API:
Describe the bug
Follow-up from topic #331 (comment)
@vincentwolsink IP = 192.168.1.248
Error communcating with API. Reinstalling the integration doesn't fix it.
Account type
Envoy
Metered with CTs installed
Metered without CTs
Standard
FW version: D8.3.5169
Amount of micro inverters connected: 16
Home Assistant
Additional context
If you look closely you can see that I sometimes get a short connection and a bit of data:
Relevant snippet of Home Assistant error log.
Below the debug-log
2026-07-17 22:08:47.617 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Checking Token value: [GECENSUREERD_TOKEN]
2026-07-17 22:08:47.617 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Token is populated: [GECENSUREERD_TOKEN]
2026-07-17 22:08:47.617 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] TOKEN TYPE: installer
2026-07-17 22:08:47.618 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Token expired on: 2026-07-09 05:45:11
2026-07-17 22:08:47.618 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Found Expired token - Retrieving new token
2026-07-17 22:08:47.618 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Fetching Entrez token
2026-07-17 22:08:48.785 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Entrez Token: [GECENSUREERD_TOKEN]
2026-07-17 22:08:48.786 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] TOKEN TYPE: installer
2026-07-17 22:08:48.786 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] Token expires at: 2026-07-18 10:08:48
2026-07-17 22:08:48.786 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] HTTP POST Attempt: https://[ENVOY_IP]/auth/check_jwt
2026-07-17 22:08:48.787 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] HTTP POST Data: None
2026-07-17 22:09:18.794 DEBUG (MainThread) [custom_components.enphase_envoy.envoy_reader] TransportError:
2026-07-17 22:09:18.795 DEBUG (MainThread) [custom_components.enphase_envoy] Finished fetching envoy Envoy [ENVOY_SERIAL] data in 31.179 seconds (success: False)
2026-07-17 22:09:18.796 INFO (MainThread) [custom_components.enphase_envoy] Config entry 'Envoy [ENVOY_SERIAL]' for enphase_envoy integration not ready yet: Error communicating with API: ; Retrying in 10 seconds
2026-07-17 22:09:18.796 DEBUG (MainThread) [custom_components.enphase_envoy] Full exception
Traceback (most recent call last):
File "/usr/local/lib/python3.14/site-packages/httpx/_transports/default.py", line 101, in map_httpcore_exceptions
yield
... [TRACEBACK INGEKORT] ...
File "/usr/local/lib/python3.14/site-packages/httpcore/_exceptions.py", line 14, in map_exceptions
raise to_exc(exc) from exc
httpcore.ConnectTimeout
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/config/custom_components/enphase_envoy/init.py", line 102, in async_update_data
await envoy_reader.get_data()
File "/config/custom_components/enphase_envoy/envoy_reader.py", line 1250, in get_data
await self.init_authentication()
File "/config/custom_components/enphase_envoy/envoy_reader.py", line 1089, in init_authentication
await self._get_enphase_token()
File "/config/custom_components/enphase_envoy/envoy_reader.py", line 1022, in _get_enphase_token
await self._refresh_token_cookies()
File "/config/custom_components/enphase_envoy/envoy_reader.py", line 1033, in _refresh_token_cookies
token_validation = await self._async_post(
^^^^^^^^^^^^^^^^^^^^^^^
ENDPOINT_URL_CHECK_JWT.format(self.host)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
... [TRACEBACK INGEKORT] ...
File "/usr/local/lib/python3.14/site-packages/httpx/_transports/default.py", line 118, in map_httpcore_exceptions
raise mapped_exc(message) from exc
httpx.ConnectTimeout
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 435, in _async_refresh
self.data = await self._async_update_data()
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 315, in _async_update_data
return await self.update_method()
File "/config/custom_components/enphase_envoy/init.py", line 106, in async_update_data
raise UpdateFailed(f"Error communicating with API: {err}") from err
homeassistant.helpers.update_coordinator.UpdateFailed: Error communicating with API:
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 798, in __async_setup_with_context
result = await component.async_setup_entry(hass, self)
File "/config/custom_components/enphase_envoy/init.py", line 125, in async_setup_entry
await coordinator.async_config_entry_first_refresh()
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 325, in async_config_entry_first_refresh
await self._async_config_entry_first_refresh()
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 360, in _async_config_entry_first_refresh
raise ex
homeassistant.exceptions.ConfigEntryNotReady: Error communicating with API: