Open aidanlane opened 3 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!
(message by CodeOwnersMention)
evohome documentation evohome source (message by IssueLinks)
These work correct when using evohome-async client:
On: await tcs.set_mode(SystemMode.HEAT)
Off: await tcs.set_mode(SystemMode.OFF)
This also works correctly with evohome-async client:
child: HotWater | Zone = tcs.zones_by_id['REDACTED']
print(child.temperature)
await child.set_temperature(19.0)
Thanks for your submission. This integration was written for - tested on - evohome. It should be able to support all TCC-based systems, but their are some subtle differences:
HeatingOff
(as per evohome), whereas FocusPro requires Off
. This should be easy enough to fix.VacationHold
mode for zones whereas that evohome does notThis should be fixed easily enough, but there are two confounding factors:
For EvoTouch (EvoTouch/HeatingZone) temperature control systems (TCSs, aka controllers) we have the following allowedSystemModes
:
{"systemMode": "HeatingOff", "canBePermanent": true, "canBeTemporary": false},
{"systemMode": "Auto", "canBePermanent": true, "canBeTemporary": false},
{"systemMode": "AutoWithReset", "canBePermanent": true, "canBeTemporary": false},
{"systemMode": "AutoWithEco", "canBePermanent": true, "canBeTemporary": true, "maxDuration": "1.00:00:00", "timingResolution": "01:00:00", "timingMode": "Duration"},
{"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": "Custom", "canBePermanent": true, "canBeTemporary": true, "maxDuration": "99.00:00:00", "timingResolution": "1.00:00:00", "timingMode": "Period"}
Later versions of the above definitely can support Cool
mode, but I am yet to receive the corresponding JSON.
For EvoTouch/RoundWireless and EvoTouch/RoundModulation TCSs we have the following allowedSystemModes
:
{"systemMode": "HeatingOff", "canBePermanent": true, "canBeTemporary": false}
{"systemMode": "Auto", "canBePermanent": true, "canBeTemporary": false},
{"systemMode": "AutoWithEco", "canBePermanent": true, "canBeTemporary": true, "maxDuration": "1.00:00:00", "timingResolution": "01:00:00", "timingMode": "Duration"},
{"systemMode": "Away", "canBePermanent": true, "canBeTemporary": true, "maxDuration": "99.00:00:00", "timingResolution": "1.00:00:00", "timingMode": "Period"},
These systems are simply a subset of the first schema, above.
However, for FocusProWifi TCSs we have the following allowedSystemModes
:
{"systemMode": "Off", "canBePermanent": true, "canBeTemporary": false},
{"systemMode": "Heat", "canBePermanent": true, "canBeTemporary": false},
{"systemMode": "Cool", "canBePermanent": true, "canBeTemporary": false}
Not all systems support Cool
(in which case that mode is absent).
There are other differences. Regarding zone modes...
For all EvoTouch zones, we have the following allowedSetpointModes
["PermanentOverride", "FollowSchedule", "TemporaryOverride"]
However, for FocusProWifi zones we have:
["PermanentOverride", "FollowSchedule", "TemporaryOverride", "VacationHold"],
I note the following issues, which are relevant here:
Thanks for your super speedy reply, insights, and research @zxdavb!
Is there something I can help with? I can put my old coding hat back onπ and help with some of the blockers.
Is there something I can help with?
I think it's time to get config flow into this integration. Here's where I'll be working on it: origin/evo_config_flow
This is the first PR: #118385
Exciting! Let me know if you want me to test anything π
I am still working on this - latest PR is #119432
Thanks!
@aidanlane Have a look at: https://github.com/zxdavb/evohome-async/wiki/Hass:-Evohome-Debug-Logs
If you could post those debug log entries here, I'd be grateful!
If you can't, I'll post an updated evohome-async client - let me know.
The problem
Temperature visible, but cannot control turn system on or off, nor set temperature (the UI dial doesn't move position at all).
e.g. when trying to switch it off, I see this error in the Home Assistant UI:
See diagnostics information below.
Please let me know if there's anything I can do to help - thanks!
What version of Home Assistant Core has the issue?
core-2024.5.5
What was the last working version of Home Assistant Core?
No response
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
Debug info from evohome-async client:
Example YAML snippet
No response
Anything in the logs that might be useful for us?
No response
Additional information
No response