home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
72.01k stars 30.17k forks source link

Unexpected error calling config validator: Sky Connect #119446

Closed seanq93 closed 2 months ago

seanq93 commented 3 months ago

The problem

When I upgrade from core 2024.4.4 to any version higher, I lose all automations. The errors I can find say:

Logger: homeassistant.setup Source: setup.py:269 First occurred: 1:19:38 PM (1 occurrences) Last logged: 1:19:38 PM Setup failed for 'automation': Invalid config.

When I attempt to validate the config before doing a restart in the broken state, I get:

Unexpected error calling config validator: 84:fd:27:xx:xx:xx:xx (MAC masked for privacy)

What version of Home Assistant Core has the issue?

core 2024.6.1

What was the last working version of Home Assistant Core?

core 2024.4.4

What type of installation are you running?

Home Assistant OS

Integration causing the issue

ZHA Integration

Link to integration documentation on our website

https://www.home-assistant.io/integrations/zha/

Diagnostics information

Full log:

Logger: homeassistant.config
Source: config.py:1541
First occurred: 1:19:38 PM (1 occurrences)
Last logged: 1:19:38 PM

Unknown error calling automation config validator - 84:fd:27:xx:xx:xx:xx:xx
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config.py", line 1541, in async_process_component_config
    await config_validator.async_validate_config(hass, config), []
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/automation/config.py", line 264, in async_validate_config
    await _try_async_validate_config_item(hass, p_config)
  File "/usr/src/homeassistant/homeassistant/components/automation/config.py", line 242, in _try_async_validate_config_item
    return await _async_validate_config_item(hass, config, False, True)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/automation/config.py", line 177, in _async_validate_config_item
    automation_config[CONF_TRIGGER] = await async_validate_trigger_config(
                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/trigger.py", line 245, in async_validate_trigger_config
    conf = await platform.async_validate_trigger_config(hass, conf)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/device_automation/trigger.py", line 50, in async_validate_trigger_config
    return await async_validate_device_automation_config(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/device_automation/helpers.py", line 119, in async_validate_device_automation_config
    await getattr(platform, DYNAMIC_VALIDATOR[automation_type])(hass, config),
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/zha/device_trigger.py", line 51, in async_validate_trigger_config
    _, triggers = _get_device_trigger_data(hass, config[CONF_DEVICE_ID])
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/zha/device_trigger.py", line 34, in _get_device_trigger_data
    zha_device = async_get_zha_device(hass, device_id)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/zha/core/helpers.py", line 277, in async_get_zha_device
    return zha_gateway.devices[ieee]
           ~~~~~~~~~~~~~~~~~~~^^^^^^
KeyError: 84:fd:27:xx:xx:xx:xx:xx

Example YAML snippet

No response

Anything in the logs that might be useful for us?

When I upgrade from core 2024.4.4 to any version higher, I lose all automations. The errors I can find say:

    Logger: homeassistant.setup Source: setup.py:269 First occurred: 1:19:38 PM (1 occurrences) Last logged: 1:19:38 PM Setup failed for 'automation': Invalid config.

When I attempt to validate the config before doing a restart in the broken state, I get:

    Unexpected error calling config validator: 84:fd:27:xx:xx:xx:xx (MAC masked for privacy)

Additional information

A bit about my setup:
Raspberry Pi 4B plus an external SSD
ZigBee over SkyConnect (SKU SG-HA-SKY-ZB-GTW-1)
Intermediate user, I only have access to the files in the same directory as configuration.yaml and child folders.
I am not an expert by any means, I have a few webhooks and automations purely in YAML flying about but nothing too complex.

I suspect the SkyConnect is the issue, as the MAC address when I google it comes up as Silicon Labs, but it does not appear to be the mac address of the SkyConnect device itself because that's showing as different under IEEE in the device details page.

At the moment I have fallen back to the last working condition of 2024.4.4 but I'd love to be able to be up to date again.

home-assistant[bot] commented 3 months ago

Hey there @dmulcahey, @adminiuga, @puddly, @thejulianjes, mind taking a look at this issue as it has been labeled with an integration (zha) you are listed as a code owner for? Thanks!

Code owner commands Code owners of `zha` can trigger bot actions by commenting: - `@home-assistant close` Closes the issue. - `@home-assistant rename Awesome new title` Renames the issue. - `@home-assistant reopen` Reopen the issue. - `@home-assistant unassign zha` Removes the current integration label and assignees on the issue, add the integration domain after the command. - `@home-assistant add-label needs-more-information` Add a label (needs-more-information, problem in dependency, problem in custom component) to the issue. - `@home-assistant remove-label needs-more-information` Remove a label (needs-more-information, problem in dependency, problem in custom component) on the issue.

(message by CodeOwnersMention)


zha documentation zha source (message by IssueLinks)

seanq93 commented 3 months ago

@puddly @dmulcahey @Adminiuga @TheJulianJES I found https://github.com/home-assistant/core/issues/115459 which states that the issue was resolved in 2024.5.0, however upgrading today to 2024.6.3

`Logger: homeassistant.setup Source: setup.py:269 First occurred: 12:51:10 PM (1 occurrences) Last logged: 12:51:10 PM

Setup failed for 'automation': Invalid config.`

2024-06-20 12:51:10.652 ERROR (MainThread) [homeassistant.config] Unknown error calling automation config validator - 84:fd:27:ff:fe:6e:b1:64

Any assistance would be greatly appreciated.

seanq93 commented 3 months ago

Full log:

`2024-06-20 12:50:17.827 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration tapo which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant 2024-06-20 12:50:17.829 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration alexa_media which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant 2024-06-20 12:50:17.832 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration meross_lan which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant 2024-06-20 12:50:17.835 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration scheduler which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant 2024-06-20 12:50:17.837 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration ytube_music_player which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant 2024-06-20 12:50:17.840 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration meross_cloud which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant 2024-06-20 12:50:17.842 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration teamtracker which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant 2024-06-20 12:50:17.844 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration spook which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant 2024-06-20 12:50:17.847 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration hacs which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant 2024-06-20 12:50:17.849 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration localtuya which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant 2024-06-20 12:50:17.851 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration spook_inverse which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant 2024-06-20 12:50:38.436 WARNING (ImportExecutor_0) [py.warnings] /usr/local/lib/python3.12/site-packages/sleekxmppfs/thirdparty/mini_dateutil.py:163: SyntaxWarning: invalid escape sequence '\s' _iso8601_parser = re.compile("""

2024-06-20 12:50:46.889 WARNING (MainThread) [homeassistant.helpers.frame] Detected that custom integration 'hacs' accesses hass.components.frontend. This is deprecated and will stop working in Home Assistant 2024.9, it should be updated to import functions used from frontend directly at custom_components/hacs/frontend.py, line 68: hass.components.frontend.async_register_built_in_panel(, please create a bug report at https://github.com/hacs/integration/issues 2024-06-20 12:50:54.990 ERROR (MainThread) [homeassistant.components.mqtt.client] Unable to connect to the MQTT broker: Connection Refused: not authorised. 2024-06-20 12:51:05.582 WARNING (MainThread) [custom_components.meross_cloud] Skip MQTT cert validation option set to: False 2024-06-20 12:51:06.437 WARNING (MainThread) [custom_components.meross_cloud]

Meross Cloud Custom component Developed by Alberto Geniola Low level library version: 0.4.7.2b3

This custom component is under development and not yet ready for production use. In case of errors/misbehave, please report it here: https://github.com/albertogeniola/meross-homeassistant/issues

If you like this extension and you want to support it, please consider donating.

List of devices reported by HTTP API:

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 312, in _async_refresh self.data = await self._async_update_data() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/components/speedtestdotnet/coordinator.py", line 78, in _async_update_data raise UpdateFailed("Selected server is not found.") from err homeassistant.helpers.update_coordinator.UpdateFailed: Selected server is not found.

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/speedtestdotnet/init.py", line 38, in _async_finish_startup await coordinator.async_config_entry_first_refresh() File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 284, in async_config_entry_first_refresh raise ex homeassistant.exceptions.ConfigEntryNotReady: Selected server is not found. 2024-06-20 12:51:25.972 WARNING (MainThread) [zigpy.application] Unknown device AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x19E0) 2024-06-20 12:51:55.564 ERROR (MainThread) [homeassistant.components.ring.coordinator] Error fetching devices data: Error communicating with API for device Front Yard: HTTP error with status code 504 during query of url https://api.ring.com/clients_api/doorbots/76004963/history: 504 Server Error: Gateway Time-out for url: https://api.ring.com/clients_api/doorbots/76004963/history?limit=10 2024-06-20 12:52:33.065 WARNING (MainThread) [zigpy.application] Unknown device AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x4C4A) 2024-06-20 12:53:04.997 WARNING (MainThread) [zigpy.application] Unknown device AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x9EED) 2024-06-20 12:53:11.553 WARNING (MainThread) [zigpy.application] Unknown device AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x774B) 2024-06-20 12:53:17.909 WARNING (MainThread) [zigpy.application] Unknown device AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x6DBA) 2024-06-20 12:53:20.029 WARNING (MainThread) [zigpy.application] Unknown device AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x6DBA) 2024-06-20 12:53:23.135 WARNING (MainThread) [zigpy.application] Unknown device AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x83BC) 2024-06-20 12:53:23.804 WARNING (MainThread) [zigpy.application] Unknown device AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x83BC) 2024-06-20 12:53:24.456 WARNING (MainThread) [zigpy.application] Unknown device AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x83BC) 2024-06-20 12:55:14.814 ERROR (MainThread) [zigpy.zcl] [0x774B:1:0x0500] Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/zigpy/device.py", line 342, in request return await req.result ^^^^^^^^^^^^^^^^ asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/zigpy/endpoint.py", line 265, in request return await self.device.request( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/zigpy/device.py", line 341, in request async with asyncio_timeout(timeout): File "/usr/local/lib/python3.12/asyncio/timeouts.py", line 115, in aexit raise TimeoutError from exc_val TimeoutError

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/zha/core/cluster_handlers/init.py", line 81, in wrapper with wrap_zigpy_exceptions(): File "/usr/local/lib/python3.12/contextlib.py", line 158, in exit self.gen.throw(value) File "/usr/src/homeassistant/homeassistant/components/zha/core/cluster_handlers/init.py", line 64, in wrap_zigpy_exceptions raise HomeAssistantError( homeassistant.exceptions.HomeAssistantError: Failed to send request: device did not respond

2024-06-20 12:55:16.622 WARNING (MainThread) [zigpy.application] Unknown device AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x2495)`

seanq93 commented 3 months ago

Disabled ZHA, performed upgrade, and re-enabled ZHA. Everything worked correctly when re-enabled, however after restarting, the same issue occured.

puddly commented 3 months ago

Can you enable ZHA debug logging in your config (https://www.home-assistant.io/integrations/zha/#debug-logging) and try the upgrade once more? This should put more context into your /config/home-assistant.log files.

puddly commented 3 months ago

Can you ZIP the log file and attach it to a new comment? The log text above it cut off. You'll have to do it from the GitHub website.

seanq93 commented 3 months ago

Hey @puddly were these logs the ones you needed?

seanq93 commented 2 months ago

@puddly @dmulcahey @Adminiuga @TheJulianJES any followups?

puddly commented 2 months ago

Did you migrate your Zigbee configuration from a previous stick?

seanq93 commented 2 months ago

Closing this ticket as I have found that there was a rogue automation in the automations.yaml that was causing problems. I am not sure why this automation was causing such a crippling issue, or why it was so hard to hunt down what the problem was, but this is it's code:

`- id: '1715403579731' alias: TvSceneRemote description: '' trigger: