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
73.75k stars 30.86k forks source link

Evohome fails with: Invalid zone type 'HeatingZone' #110047

Closed cherssen closed 9 months ago

cherssen commented 9 months ago

The problem

Since the upgrade to 2024.2.0, HA is not loading my EU-based Evohome configuration anymore. Issue raised in the Logs is:

Logger: evohomeasync2
Source: components/evohome/__init__.py:240
First occurred: 8:31:50 PM (9 occurrences)
Last logged: 8:31:50 PM

Zone 8942489 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)
Zone 8942490 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)
Zone 8942491 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)
Zone 8942492 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)
Zone 8942493 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)`

What version of Home Assistant Core has the issue?

core-2024.2.0

What was the last working version of Home Assistant Core?

core-2024.1.6

What type of installation are you running?

Home Assistant OS

Integration causing the issue

evohome

Link to integration documentation on our website

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

Diagnostics information

No response

Example YAML snippet

No response

Anything in the logs that might be useful for us?

2024-02-08 20:31:50.718 INFO (MainThread) [evohomeasync2.broker] GET https://tccna.honeywell.com/WebAPI/emea/api/v1/location/installationInfo?userId=5623785&includeTemperatureControlSystems=True (200) = [{'locationInfo': {'locationId': '6992390', 'name': 'Home', 'streetAddress': '-REDACTED-', 'city': 'Auderghem', 'country': 'Belgium', 'postcode': '-REDACTED-', 'locationType': 'Residential', 'useDaylightSaveSwitching': True, 'timeZone': {'timeZoneId': 'RomanceStandardTime', 'displayName': '(UTC+01:00) Brussels, Copenhagen, Madrid, Paris', 'offsetMinutes': 60, 'currentOffsetMinutes': 60, 'supportsDaylightSaving': True}, 'locationOwner': {'userId': '-REDACTED-', 'username': '-REDACTED-', 'firstname': '-REDACTED-', 'lastname': '-REDACTED-'}}, 'gateways': [{'gatewayInfo': {'gatewayId': '6613390', 'mac': '-REDACTED-', 'crc': '-REDACTED-', 'isWiFi': False}, 'temperatureControlSystems': [{'systemId': '8942494', 'modelType': 'EvoTouch', 'zones': [{'zoneId': '8942485', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Comedor', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942486', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Cocina', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942487', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Hab nosotros', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942488', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Hab Mapi', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942489', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Hab visitas', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942490', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Bano', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942491', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Apagar', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942492', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Secador toalla', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942493', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Sala', 'zoneType': 'ZoneTemperatureControl'}], 'allowedSystemModes': [{'systemMode': 'Auto', 'canBePermanent': True, 'canBeTemporary': False}, {'systemMode': 'AutoWithEco', 'canBePermanent': True, 'canBeTemporary': True, 'maxDuration': '1.00:00:00', 'timingResolution': '01:00:00', 'timingMode': 'Duration'}, {'systemMode': 'AutoWithReset', 'canBePermanent': True, 'canBeTemporary': False}, {'systemMode': 'Away', 'canBePermanent': True, 'canBeTemporary': True, 'maxDuration': '99.00:00:00', 'timingResolution': '1.00:00:00', 'timingMode': 'Period'}, {'systemMode': 'DayOff', 'canBePermanent': True, 'canBeTemporary': True, 'maxDuration': '99.00:00:00', 'timingResolution': '1.00:00:00', 'timingMode': 'Period'}, {'systemMode': 'HeatingOff', 'canBePermanent': True, 'canBeTemporary': False}, {'systemMode': 'Custom', 'canBePermanent': True, 'canBeTemporary': True, 'maxDuration': '99.00:00:00', 'timingResolution': '1.00:00:00', 'timingMode': 'Period'}]}]}]}]

2024-02-08 20:31:50.721 INFO (MainThread) [evohomeasync2] Response may be invalid (schema mismatch): GET location/installationInfo?userId=5623785&includeTemperatureControlSystems=True: value must be one of ['MixingValve', 'RadiatorZone', 'Thermostat', 'UnderfloorHeating', 'Unknown', 'ZoneValves'] for dictionary value @ data[0]['gateways'][0]['temperatureControlSystems'][0]['zones'][0]['zoneType']

2024-02-08 20:31:50.722 WARNING (MainThread) [evohomeasync2] Zone 8942485 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)
2024-02-08 20:31:50.722 WARNING (MainThread) [evohomeasync2] Zone 8942486 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)
2024-02-08 20:31:50.722 WARNING (MainThread) [evohomeasync2] Zone 8942487 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)
2024-02-08 20:31:50.722 WARNING (MainThread) [evohomeasync2] Zone 8942488 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)
2024-02-08 20:31:50.722 WARNING (MainThread) [evohomeasync2] Zone 8942489 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)
2024-02-08 20:31:50.723 WARNING (MainThread) [evohomeasync2] Zone 8942490 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)
2024-02-08 20:31:50.723 WARNING (MainThread) [evohomeasync2] Zone 8942491 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)
2024-02-08 20:31:50.723 WARNING (MainThread) [evohomeasync2] Zone 8942492 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)
2024-02-08 20:31:50.723 WARNING (MainThread) [evohomeasync2] Zone 8942493 ignored: Invalid zone type 'HeatingZone' (is it a ghost zone?)

Additional information

No response

home-assistant[bot] commented 9 months ago

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

Code owner commands Code owners of `evohome` 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 evohome` 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)


evohome documentation evohome source (message by IssueLinks)

zxdavb commented 9 months ago

Thanks for your efforts in reporting this bug.

I believe have identified the cause, and I can make a quick fix. It should be available to the HA cores devs for them to review/approve after I do some testing - maybe a few days.

It is not necessary, but would be really helpful if you could provide the following JSON, so I can add this edge-case to the evohome-async test suite.

  1. Add this logging to configuration.json and restart HA:
    logger:
    logs:
    homeassistant.components.evohome: debug

If you can, pull these three lines from home-assistant.log:

2023-11-02 11:24:05.950 DEBUG (MainThread) [homeassistant.components.evohome] Config = {...

2023-11-02 11:24:07.256 DEBUG (MainThread) [homeassistant.components.evohome] Status = {...

2023-11-02 11:24:07.623 DEBUG (MainThread) [homeassistant.components.evohome] Schedule[...] = {...

If not, I would appreciate you posting them here when you can (after rolling back to an earlier HA, or receiving the fix I am about to post).

Note that personally-identifiable information is redacted from these JSON, except for zone names.

cherssen commented 9 months ago

Thanks for looking into this bug!

Here is the requested output retrieved after rolling back to 2024.1.6:

2024-02-08 22:10:23.659 DEBUG (MainThread) [homeassistant.components.evohome] Config = {'locationInfo': {'timeZone': {'timeZoneId': 'RomanceStandardTime', 'displayName': '(UTC+01:00) Brussels, Copenhagen, Madrid, Paris', 'offsetMinutes': 60, 'currentOffsetMinutes': 60, 'supportsDaylightSaving': True}}, 'gateways': [{'temperatureControlSystems': [{'systemId': '8942494', 'modelType': 'EvoTouch', 'zones': [{'zoneId': '8942485', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Comedor', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942486', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Cocina', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942487', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Hab nosotros', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942488', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Hab Mapi', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942489', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Hab visitas', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942490', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Bano', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942491', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Apagar', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942492', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Secador toalla', 'zoneType': 'ZoneTemperatureControl'}, {'zoneId': '8942493', 'modelType': 'HeatingZone', 'setpointCapabilities': {'maxHeatSetpoint': 35.0, 'minHeatSetpoint': 5.0, 'valueResolution': 0.5, 'canControlHeat': True, 'canControlCool': False, 'allowedSetpointModes': ['PermanentOverride', 'FollowSchedule', 'TemporaryOverride'], 'maxDuration': '1.00:00:00', 'timingResolution': '00:10:00'}, 'scheduleCapabilities': {'maxSwitchpointsPerDay': 6, 'minSwitchpointsPerDay': 1, 'timingResolution': '00:10:00', 'setpointValueResolution': 0.5}, 'name': 'Sala', 'zoneType': 'ZoneTemperatureControl'}], 'allowedSystemModes': [{'systemMode': 'Auto', 'canBePermanent': True, 'canBeTemporary': False}, {'systemMode': 'AutoWithEco', 'canBePermanent': True, 'canBeTemporary': True, 'maxDuration': '1.00:00:00', 'timingResolution': '01:00:00', 'timingMode': 'Duration'}, {'systemMode': 'AutoWithReset', 'canBePermanent': True, 'canBeTemporary': False}, {'systemMode': 'Away', 'canBePermanent': True, 'canBeTemporary': True, 'maxDuration': '99.00:00:00', 'timingResolution': '1.00:00:00', 'timingMode': 'Period'}, {'systemMode': 'DayOff', 'canBePermanent': True, 'canBeTemporary': True, 'maxDuration': '99.00:00:00', 'timingResolution': '1.00:00:00', 'timingMode': 'Period'}, {'systemMode': 'HeatingOff', 'canBePermanent': True, 'canBeTemporary': False}, {'systemMode': 'Custom', 'canBePermanent': True, 'canBeTemporary': True, 'maxDuration': '99.00:00:00', 'timingResolution': '1.00:00:00', 'timingMode': 'Period'}]}]}]}

2024-02-08 22:10:23.930 DEBUG (MainThread) [homeassistant.components.evohome] Status = {'locationId': '6992390', 'gateways': [{'gatewayId': '6613390', 'temperatureControlSystems': [{'systemId': '8942494', 'zones': [{'zoneId': '8942485', 'temperatureStatus': {'temperature': 22.5, 'isAvailable': True}, 'activeFaults': [], 'setpointStatus': {'targetHeatTemperature': 18.0, 'setpointMode': 'FollowSchedule'}, 'name': 'Comedor'}, {'zoneId': '8942486', 'temperatureStatus': {'temperature': 19.0, 'isAvailable': True}, 'activeFaults': [], 'setpointStatus': {'targetHeatTemperature': 18.0, 'setpointMode': 'FollowSchedule'}, 'name': 'Cocina'}, {'zoneId': '8942487', 'temperatureStatus': {'temperature': 22.5, 'isAvailable': True}, 'activeFaults': [], 'setpointStatus': {'targetHeatTemperature': 23.0, 'setpointMode': 'FollowSchedule'}, 'name': 'Hab nosotros'}, {'zoneId': '8942488', 'temperatureStatus': {'temperature': 23.0, 'isAvailable': True}, 'activeFaults': [], 'setpointStatus': {'targetHeatTemperature': 24.0, 'setpointMode': 'FollowSchedule'}, 'name': 'Hab Mapi'}, {'zoneId': '8942489', 'temperatureStatus': {'temperature': 21.5, 'isAvailable': True}, 'activeFaults': [], 'setpointStatus': {'targetHeatTemperature': 18.0, 'setpointMode': 'FollowSchedule'}, 'name': 'Hab visitas'}, {'zoneId': '8942490', 'temperatureStatus': {'temperature': 22.5, 'isAvailable': True}, 'activeFaults': [], 'setpointStatus': {'targetHeatTemperature': 18.0, 'setpointMode': 'FollowSchedule'}, 'name': 'Bano'}, {'zoneId': '8942491', 'temperatureStatus': {'temperature': 27.0, 'isAvailable': True}, 'activeFaults': [], 'setpointStatus': {'targetHeatTemperature': 21.0, 'setpointMode': 'FollowSchedule'}, 'name': 'Apagar'}, {'zoneId': '8942492', 'temperatureStatus': {'temperature': 27.0, 'isAvailable': True}, 'activeFaults': [], 'setpointStatus': {'targetHeatTemperature': 5.0, 'setpointMode': 'FollowSchedule'}, 'name': 'Secador toalla'}, {'zoneId': '8942493', 'temperatureStatus': {'temperature': 19.5, 'isAvailable': True}, 'activeFaults': [], 'setpointStatus': {'targetHeatTemperature': 18.0, 'setpointMode': 'FollowSchedule'}, 'name': 'Sala'}], 'activeFaults': [], 'systemModeStatus': {'mode': 'Auto', 'isPermanent': True}}], 'activeFaults': []}]}

2024-02-08 22:10:26.344 DEBUG (MainThread) [homeassistant.components.evohome] Schedule['Comedor'] = {'DailySchedules': [{'DayOfWeek': 0, 'Switchpoints': [{'heatSetpoint': 20.0, 'TimeOfDay': '06:00:00'}, {'heatSetpoint': 18.0, 'TimeOfDay': '08:00:00'}, {'heatSetpoint': 20.0, 'TimeOfDay': '18:00:00'}, {'heatSetpoint': 18.0, 'TimeOfDay': '20:00:00'}]}, {'DayOfWeek': 1, 'Switchpoints': [{'heatSetpoint': 20.0, 'TimeOfDay': '06:00:00'}, {'heatSetpoint': 18.0, 'TimeOfDay': '08:00:00'}, {'heatSetpoint': 20.0, 'TimeOfDay': '18:00:00'}, {'heatSetpoint': 18.0, 'TimeOfDay': '20:00:00'}]}, {'DayOfWeek': 2, 'Switchpoints': [{'heatSetpoint': 20.0, 'TimeOfDay': '06:00:00'}, {'heatSetpoint': 18.0, 'TimeOfDay': '08:00:00'}, {'heatSetpoint': 20.0, 'TimeOfDay': '18:00:00'}, {'heatSetpoint': 18.0, 'TimeOfDay': '20:00:00'}]}, {'DayOfWeek': 3, 'Switchpoints': [{'heatSetpoint': 20.0, 'TimeOfDay': '06:00:00'}, {'heatSetpoint': 18.0, 'TimeOfDay': '08:00:00'}, {'heatSetpoint': 20.0, 'TimeOfDay': '18:00:00'}, {'heatSetpoint': 18.0, 'TimeOfDay': '20:00:00'}]}, {'DayOfWeek': 4, 'Switchpoints': [{'heatSetpoint': 20.0, 'TimeOfDay': '06:00:00'}, {'heatSetpoint': 18.0, 'TimeOfDay': '08:00:00'}, {'heatSetpoint': 20.0, 'TimeOfDay': '18:00:00'}, {'heatSetpoint': 18.0, 'TimeOfDay': '20:00:00'}]}, {'DayOfWeek': 5, 'Switchpoints': [{'heatSetpoint': 20.0, 'TimeOfDay': '08:00:00'}, {'heatSetpoint': 18.0, 'TimeOfDay': '20:00:00'}]}, {'DayOfWeek': 6, 'Switchpoints': [{'heatSetpoint': 20.0, 'TimeOfDay': '08:00:00'}, {'heatSetpoint': 18.0, 'TimeOfDay': '20:00:00'}]}]}`

<>

zxdavb commented 9 months ago

If you know how to edit your manifest.json, you could try making this:

  "requirements": ["evohome-async==0.4.17"]

... look like this:

  "requirements": ["evohome-async==0.4.18"]

Doing that should fix your problem - let me know if you managed it, and how you got on.

cherssen commented 9 months ago

Integration copied to custom components, and loads successfully in 2024.2.0 I'll keep monitoring in the coming days. Thanks for the quick fix!