Home Assistant release with the issue: 0.106.2
Last working Home Assistant release (if known):
Operating environment (Hass.io/Docker/Windows/etc.): Docker
Integration: https://www.home-assistant.io/integrations/tado
Description of problem:
Tado AC V3+ controlling a air conditioner/heat pump. Current temperature and target temperature shows correct in Lovelace. The device can be switched on/off, but changing HVAC-mode or setting a temperature setting returns error:
Could not set zone overlay: b'{"errors":[{"code":"setting.notSupported","title":"fan speed not in supported fan speeds [AUTO, HIGH, LOW, MIDDLE]"}]}'
Hey there @michaelarnauts, mind taking a look at this issue as its been labeled with a integration (tado) you are listed as a codeowner for? Thanks!
@pw4056 fixed in https://github.com/home-assistant/core/pull/32564
Should be fixed in https://github.com/home-assistant/core/pull/32564
@pw4056 This one is going to need another round before it gets fixed. There is a bit more coordination that needs to happen before we can solve it for good. Sorry for the delay
Thank you. I really appreciate all your effort and work.
@pw4056 @michaelarnauts and I have been testing in #33195 and we are looking for some additional help to verify the changes don't cause any regressions anything.
I've updated the code here for convince https://github.com/bdraco/tado.git or you can pull the PR in #33195
To try the new code with Home Assistant 0.107 and later:
cd <YOUR HOMEASSISTANT CONFIG PATH>
mkdir custom_components
cd custom_components
git clone https://github.com/bdraco/tado
git pull
Restart
If there is a problem you can wipe custom_components/tado and restart.
@bdraco I'm using 107.7 I get no errors in the log, but the only thing that works is to turn Tado to "off". Any other command, like setting temperature, setting operation to "heat" or similar has no effect and it returns back to its previous value.
@bdraco I'm using 107.7 I get no errors in the log, but the only thing that works is to turn Tado to "off". Any other command, like setting temperature, setting operation to "heat" or similar has no effect and it returns back to its previous value.
That鈥檚 expected with 0.107.7. Did you try the steps I outlined above?
I did, or similar I hope:
Created a folder "tado" in my "custom_components" folder. I pulled your git and copied the files to mentioned folder. (7 -.py files and 2 -.json files). Then I restarted Home Assistant.
I did, or similar I hope:
Created a folder "tado" in my "custom_components" folder. I pulled your git and copied the files to mentioned folder. (7 -.py files and 2 -.json files). Then I restarted Home Assistant.
When home assistant started up did you get a warning about using a custom tado in the log?
You should be able to see what is going on by setting the log level to debug for
custom_components.tado
When switching from "Auto" to "heat":
2020-03-28 02:37:51 DEBUG (SyncWorker_19) [custom_components.tado.climate] Switching to HEAT for zone Air Conditioning (1) with temperature 21.03 掳C
2020-03-28 02:37:51 DEBUG (SyncWorker_19) [custom_components.tado] Set overlay for zone 1: overlay_mode=TADO_MODE, temp=21.03, duration=None, type=AIR_CONDITIONING, mode=HEAT fan_speed=AUTO
2020-03-28 02:37:51 DEBUG (SyncWorker_19) [custom_components.tado] Updating zone 1
2020-03-28 02:37:51 DEBUG (SyncWorker_19) [custom_components.tado] Dispatching update to zone 1: <PyTado.zone.TadoZone object at 0x7fea5c428850>
2020-03-28 02:37:56 DEBUG (SyncWorker_9) [custom_components.tado] Updating zone 1
2020-03-28 02:37:56 DEBUG (SyncWorker_9) [custom_components.tado] Dispatching update to zone 1: <PyTado.zone.TadoZone object at 0x7fea5af7f4d0>
2020-03-28 02:37:56 DEBUG (SyncWorker_9) [custom_components.tado] Updating device 400337
2020-03-28 02:37:56 DEBUG (SyncWorker_9) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:30:03.250Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
When switching from "Auto" to "heat":
`2020-03-28 02:37:51 DEBUG (SyncWorker_19) [custom_components.tado.climate] Switching to HEAT for zone Air Conditioning (1) with temperature 21.03 掳C
2020-03-28 02:37:51 DEBUG (SyncWorker_19) [custom_components.tado] Set overlay for zone 1: overlay_mode=TADO_MODE, temp=21.03, duration=None, type=AIR_CONDITIONING, mode=HEAT fan_speed=AUTO
2020-03-28 02:37:51 DEBUG (SyncWorker_19) [custom_components.tado] Updating zone 1
2020-03-28 02:37:51 DEBUG (SyncWorker_19) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:37:56 DEBUG (SyncWorker_9) [custom_components.tado] Updating zone 1
2020-03-28 02:37:56 DEBUG (SyncWorker_9) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:37:56 DEBUG (SyncWorker_9) [custom_components.tado] Updating device 400337
2020-03-28 02:37:56 DEBUG (SyncWorker_9) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:30:03.250Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}`
When switching from "Auto" to "heat":
Thanks. Does it show any errors in the log?
It should show the zone json that tado is returning every so often. That would be helpful to see as well to know if it鈥檚 not accepting the state change or if it鈥檚 not reporting it.
Also does your air con support setting the fan speed in the tado app?
If you aren鈥檛 seeing the full return from the api setting the following for the logging.
@pw4056 I modified the below example as this should be more useful
logger:
default: info
logs:
custom_components.tado: debug
PyTado: debug
Should give more details
With these settings:
logger:
default: critical
logs:
custom_components.tado: debug
requests: debug
This is what I see:
2020-03-28 02:56:47 DEBUG (SyncWorker_17) [custom_components.tado] Updating zone 1
2020-03-28 02:56:47 DEBUG (SyncWorker_17) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:56:47 DEBUG (SyncWorker_17) [custom_components.tado] Updating device 400337
2020-03-28 02:56:47 DEBUG (SyncWorker_17) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 02:57:03 DEBUG (SyncWorker_3) [custom_components.tado] Updating zone 1
2020-03-28 02:57:03 DEBUG (SyncWorker_3) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:57:03 DEBUG (SyncWorker_3) [custom_components.tado] Updating device 400337
2020-03-28 02:57:03 DEBUG (SyncWorker_3) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 02:57:19 DEBUG (SyncWorker_13) [custom_components.tado] Updating zone 1
2020-03-28 02:57:19 DEBUG (SyncWorker_13) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:57:19 DEBUG (SyncWorker_13) [custom_components.tado] Updating device 400337
2020-03-28 02:57:19 DEBUG (SyncWorker_13) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 02:57:32 DEBUG (SyncWorker_8) [custom_components.tado.climate] Switching to HEAT for zone Air Conditioning (1) with temperature 20.96 掳C
2020-03-28 02:57:32 DEBUG (SyncWorker_8) [custom_components.tado] Set overlay for zone 1: overlay_mode=TADO_MODE, temp=20.96, duration=None, type=AIR_CONDITIONING, mode=HEAT fan_speed=AUTO
2020-03-28 02:57:32 DEBUG (SyncWorker_8) [custom_components.tado] Updating zone 1
2020-03-28 02:57:32 DEBUG (SyncWorker_8) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:57:35 DEBUG (SyncWorker_10) [custom_components.tado] Updating zone 1
2020-03-28 02:57:35 DEBUG (SyncWorker_10) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:57:35 DEBUG (SyncWorker_10) [custom_components.tado] Updating device 400337
2020-03-28 02:57:35 DEBUG (SyncWorker_10) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 02:57:51 DEBUG (SyncWorker_7) [custom_components.tado] Updating zone 1
2020-03-28 02:57:51 DEBUG (SyncWorker_7) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:57:51 DEBUG (SyncWorker_7) [custom_components.tado] Updating device 400337
2020-03-28 02:57:51 DEBUG (SyncWorker_7) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 02:58:07 DEBUG (SyncWorker_11) [custom_components.tado] Updating zone 1
2020-03-28 02:58:07 DEBUG (SyncWorker_11) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:58:07 DEBUG (SyncWorker_11) [custom_components.tado] Updating device 400337
2020-03-28 02:58:07 DEBUG (SyncWorker_11) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 02:58:23 DEBUG (SyncWorker_8) [custom_components.tado] Updating zone 1
2020-03-28 02:58:23 DEBUG (SyncWorker_8) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:58:23 DEBUG (SyncWorker_8) [custom_components.tado] Updating device 400337
2020-03-28 02:58:23 DEBUG (SyncWorker_8) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 02:58:39 DEBUG (SyncWorker_10) [custom_components.tado] Updating zone 1
2020-03-28 02:58:39 DEBUG (SyncWorker_10) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:58:39 DEBUG (SyncWorker_10) [custom_components.tado] Updating device 400337
2020-03-28 02:58:39 DEBUG (SyncWorker_10) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 02:58:55 DEBUG (SyncWorker_6) [custom_components.tado] Updating zone 1
2020-03-28 02:58:55 DEBUG (SyncWorker_6) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:58:55 DEBUG (SyncWorker_6) [custom_components.tado] Updating device 400337
2020-03-28 02:58:55 DEBUG (SyncWorker_6) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 02:59:11 DEBUG (SyncWorker_17) [custom_components.tado] Updating zone 1
2020-03-28 02:59:11 DEBUG (SyncWorker_17) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:59:11 DEBUG (SyncWorker_17) [custom_components.tado] Updating device 400337
2020-03-28 02:59:11 DEBUG (SyncWorker_17) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 02:59:27 DEBUG (SyncWorker_0) [custom_components.tado] Updating zone 1
2020-03-28 02:59:27 DEBUG (SyncWorker_0) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:59:27 DEBUG (SyncWorker_0) [custom_components.tado] Updating device 400337
2020-03-28 02:59:27 DEBUG (SyncWorker_0) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 02:59:43 DEBUG (SyncWorker_16) [custom_components.tado] Updating zone 1
2020-03-28 02:59:43 DEBUG (SyncWorker_16) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:59:43 DEBUG (SyncWorker_16) [custom_components.tado] Updating device 400337
2020-03-28 02:59:43 DEBUG (SyncWorker_16) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 02:59:59 DEBUG (SyncWorker_4) [custom_components.tado] Updating zone 1
2020-03-28 02:59:59 DEBUG (SyncWorker_4) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 02:59:59 DEBUG (SyncWorker_4) [custom_components.tado] Updating device 400337
2020-03-28 02:59:59 DEBUG (SyncWorker_4) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 03:00:15 DEBUG (SyncWorker_5) [custom_components.tado] Updating zone 1
2020-03-28 03:00:15 DEBUG (SyncWorker_5) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:00:15 DEBUG (SyncWorker_5) [custom_components.tado] Updating device 400337
2020-03-28 03:00:15 DEBUG (SyncWorker_5) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 03:00:31 DEBUG (SyncWorker_7) [custom_components.tado] Updating zone 1
2020-03-28 03:00:31 DEBUG (SyncWorker_7) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:00:31 DEBUG (SyncWorker_7) [custom_components.tado] Updating device 400337
2020-03-28 03:00:31 DEBUG (SyncWorker_7) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 03:00:47 DEBUG (SyncWorker_17) [custom_components.tado] Updating zone 1
2020-03-28 03:00:47 DEBUG (SyncWorker_17) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:00:47 DEBUG (SyncWorker_17) [custom_components.tado] Updating device 400337
2020-03-28 03:00:47 DEBUG (SyncWorker_17) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 03:01:03 DEBUG (SyncWorker_15) [custom_components.tado] Updating zone 1
2020-03-28 03:01:03 DEBUG (SyncWorker_15) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:01:03 DEBUG (SyncWorker_15) [custom_components.tado] Updating device 400337
2020-03-28 03:01:03 DEBUG (SyncWorker_15) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 03:01:19 DEBUG (SyncWorker_9) [custom_components.tado] Updating zone 1
2020-03-28 03:01:19 DEBUG (SyncWorker_9) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:01:19 DEBUG (SyncWorker_9) [custom_components.tado] Updating device 400337
2020-03-28 03:01:19 DEBUG (SyncWorker_9) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 03:01:35 DEBUG (SyncWorker_13) [custom_components.tado] Updating zone 1
2020-03-28 03:01:35 DEBUG (SyncWorker_13) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:01:35 DEBUG (SyncWorker_13) [custom_components.tado] Updating device 400337
2020-03-28 03:01:35 DEBUG (SyncWorker_13) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 03:01:51 DEBUG (SyncWorker_2) [custom_components.tado] Updating zone 1
2020-03-28 03:01:51 DEBUG (SyncWorker_2) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:01:51 DEBUG (SyncWorker_2) [custom_components.tado] Updating device 400337
2020-03-28 03:01:51 DEBUG (SyncWorker_2) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 03:02:07 DEBUG (SyncWorker_11) [custom_components.tado] Updating zone 1
2020-03-28 03:02:07 DEBUG (SyncWorker_11) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:02:07 DEBUG (SyncWorker_11) [custom_components.tado] Updating device 400337
2020-03-28 03:02:07 DEBUG (SyncWorker_11) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 03:02:23 DEBUG (SyncWorker_9) [custom_components.tado] Updating zone 1
2020-03-28 03:02:23 DEBUG (SyncWorker_9) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:02:23 DEBUG (SyncWorker_9) [custom_components.tado] Updating device 400337
2020-03-28 03:02:23 DEBUG (SyncWorker_9) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 03:02:38 DEBUG (SyncWorker_0) [custom_components.tado] Updating zone 1
2020-03-28 03:02:38 DEBUG (SyncWorker_0) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:02:38 DEBUG (SyncWorker_0) [custom_components.tado] Updating device 400337
2020-03-28 03:02:38 DEBUG (SyncWorker_0) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T01:54:54.753Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
Getting closer! With the added PyTado line you should see the PUT call and the GET that comes after it. Example
2020-03-28 02:09:14 DEBUG (SyncWorker_4) [custom_components.tado.climate] Switching to COOL for zone Air Conditioning (3) with temperature 22.3 掳C
2020-03-28 02:09:14 DEBUG (SyncWorker_4) [custom_components.tado] Set overlay for zone 3: overlay_mode=TADO_MODE, temp=22.3, duration=None, type=AIR_CONDITIONING, mode=COOL fan_speed=AUTO
2020-03-28 02:09:14 DEBUG (SyncWorker_4) [PyTado.interface] api call: PUT: <snip>', 'Mime-Type': 'application/json;charset=UTF-8'}, data b'{"setting": {"type": "AIR_CONDITIONING", "power": "ON", "temperature": {"celsius": 22.3}, "fanSpeed": "AUTO", "mode": "COOL"}, "termination": {"type": "TADO_MODE"}}'
2020-03-28 02:09:14 DEBUG (SyncWorker_4) [PyTado.interface] api call: PUT: zones/3/overlay, response {"type":"MANUAL","setting":{"type":"AIR_CONDITIONING","power":"ON","mode":"COOL","temperature":{"celsius":22.22,"fahrenheit":72.00},"fanSpeed":"AUTO"},"termination":{"type":"TADO_MODE","typeSkillBasedApp":"TADO_MODE","projectedExpiry":null}}
2020-03-28 02:09:14 DEBUG (SyncWorker_4) [PyTado.interface] api call: GET: zones/3/state, response {"tadoMode":"HOME","geolocationOverride":false,"geolocationOverrideDisableTime":null,"preparation":null,"setting":{"type":"AIR_CONDITIONING","power":"ON","mode":"COOL","temperature":{"celsius":22.22,"fahrenheit":72.00},"fanSpeed":"AUTO"},"overlayType":"MANUAL","overlay":{"type":"MANUAL","setting":{"type":"AIR_CONDITIONING","power":"ON","mode":"COOL","temperature":{"celsius":22.22,"fahrenheit":72.00},"fanSpeed":"AUTO"},"termination":{"type":"TADO_MODE","typeSkillBasedApp":"TADO_MODE","projectedExpiry":null}},"openWindow":null,"nextScheduleChange":null,"nextTimeBlock":{"start":"2020-03-28T03:00:00.000Z"},"link":{"state":"ONLINE"},"activityDataPoints":{"acPower":{"timestamp":"2020-03-28T02:08:20.023Z","type":"POWER","value":"OFF"}},"sensorDataPoints":{"insideTemperature":{"celsius":21.88,"fahrenheit":71.38,"timestamp":"2020-03-28T02:08:35.168Z","type":"TEMPERATURE","precision":{"celsius":0.1,"fahrenheit":0.1}},"humidity":{"type":"PERCENTAGE","percentage":54.50,"timestamp":"2020-03-28T02:08:35.168Z"}}}
How about this? (I've only removed the tokens)
2020-03-28 03:16:44 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for tado 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.
2020-03-28 03:16:44 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for garbage_collection 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.
2020-03-28 03:16:44 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for fontawesome 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.
2020-03-28 03:16:44 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for 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.
2020-03-28 03:16:48 DEBUG (SyncWorker_19) [PyTado.interface] api call: GET: zones, headers {'Referer': 'https://my.tado.com/', 'Content-Type': 'application/json', 'Authorization': '[REMOVED]'}, data None
2020-03-28 03:16:48 DEBUG (SyncWorker_19) [PyTado.interface] api call: GET: zones, response [{"id":1,"name":"Air Conditioning","type":"AIR_CONDITIONING","dateCreated":"2019-11-26T10:11:33.351Z","deviceTypes":["WR02"],"devices":[{"deviceType":"WR02","serialNo":"WR2508001792","shortSerialNo":"WR2508001792","currentFwVersion":"59.5","connectionState":{"value":true,"timestamp":"2020-03-28T02:09:27.830Z"},"characteristics":{"capabilities":["INSIDE_TEMPERATURE_MEASUREMENT","IDENTIFY"]},"accessPointWiFi":{"ssid":"tado1792"},"commandTableUploadState":"FINISHED","duties":["ZONE_UI","ZONE_DRIVER","ZONE_LEADER"]}],"reportAvailable":false,"supportsDazzle":true,"dazzleEnabled":true,"dazzleMode":{"supported":true,"enabled":true},"openWindowDetection":{"supported":true,"enabled":true,"timeoutInSeconds":900}}]
2020-03-28 03:16:48 DEBUG (SyncWorker_19) [custom_components.tado] Updating zone 1
2020-03-28 03:16:48 DEBUG (SyncWorker_19) [PyTado.interface] api call: GET: zones/1/state, headers {'Referer': 'https://my.tado.com/', 'Content-Type': 'application/json', 'Authorization': '[REMOVED]'}, data None
2020-03-28 03:16:48 DEBUG (SyncWorker_19) [PyTado.interface] api call: GET: zones/1/state, response {"tadoMode":"HOME","geolocationOverride":false,"geolocationOverrideDisableTime":null,"preparation":null,"setting":{"type":"AIR_CONDITIONING","power":"ON","mode":"HEAT","temperature":{"celsius":20.00,"fahrenheit":68.00},"fanSpeed":"AUTO","swing":"ON"},"overlayType":null,"overlay":null,"openWindow":null,"nextScheduleChange":{"start":"2020-03-28T04:30:00Z","setting":{"type":"AIR_CONDITIONING","power":"ON","mode":"HEAT","temperature":{"celsius":23.00,"fahrenheit":73.40},"fanSpeed":"AUTO","swing":"ON"}},"nextTimeBlock":{"start":"2020-03-28T04:30:00.000Z"},"link":{"state":"ONLINE"},"activityDataPoints":{"acPower":{"timestamp":"2020-03-27T23:02:22.260Z","type":"POWER","value":"ON"}},"sensorDataPoints":{"insideTemperature":{"celsius":20.88,"fahrenheit":69.58,"timestamp":"2020-03-28T02:09:27.830Z","type":"TEMPERATURE","precision":{"celsius":0.1,"fahrenheit":0.1}},"humidity":{"type":"PERCENTAGE","percentage":42.30,"timestamp":"2020-03-28T02:09:27.830Z"}}}
2020-03-28 03:16:48 DEBUG (SyncWorker_19) [PyTado.zone] Processing data from zone 1
2020-03-28 03:16:48 DEBUG (SyncWorker_19) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:16:48 DEBUG (SyncWorker_19) [custom_components.tado] Updating device 400337
2020-03-28 03:16:48 DEBUG (SyncWorker_19) [PyTado.interface] api call: GET: devices, headers {'Referer': 'https://my.tado.com/', 'Content-Type': 'application/json', 'Authorization': '[REMOVED]'}, data None
2020-03-28 03:16:48 DEBUG (SyncWorker_19) [PyTado.interface] api call: GET: devices, response [{"deviceType":"WR02","serialNo":"WR2508001792","shortSerialNo":"WR2508001792","currentFwVersion":"59.5","connectionState":{"value":true,"timestamp":"2020-03-28T02:09:27.830Z"},"characteristics":{"capabilities":["INSIDE_TEMPERATURE_MEASUREMENT","IDENTIFY"]},"accessPointWiFi":{"ssid":"tado1792"},"commandTableUploadState":"FINISHED"}]
2020-03-28 03:16:48 DEBUG (SyncWorker_19) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T02:09:27.830Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 03:16:51 DEBUG (SyncWorker_10) [PyTado.interface] api call: GET: zones/1/capabilities, headers {'Referer': 'https://my.tado.com/', 'Content-Type': 'application/json', 'Authorization': '[REMOVED]'}, data None
2020-03-28 03:16:51 DEBUG (SyncWorker_10) [PyTado.interface] api call: GET: zones/1/capabilities, response {"type":"AIR_CONDITIONING","AUTO":{"fanSpeeds":["AUTO","HIGH","MIDDLE","LOW"],"swings":["OFF","ON"]},"COOL":{"temperatures":{"celsius":{"min":18,"max":30,"step":1.0},"fahrenheit":{"min":64,"max":86,"step":1.0}},"fanSpeeds":["AUTO","HIGH","MIDDLE","LOW"],"swings":["OFF","ON"]},"DRY":{"swings":["OFF","ON"]},"FAN":{"fanSpeeds":["AUTO","HIGH","MIDDLE","LOW"],"swings":["OFF","ON"]},"HEAT":{"temperatures":{"celsius":{"min":16,"max":30,"step":1.0},"fahrenheit":{"min":61,"max":86,"step":1.0}},"fanSpeeds":["AUTO","HIGH","MIDDLE","LOW"],"swings":["OFF","ON"]}}
2020-03-28 03:16:51 DEBUG (SyncWorker_10) [custom_components.tado.climate] Capabilities for zone 1: {'type': 'AIR_CONDITIONING', 'AUTO': {'fanSpeeds': ['AUTO', 'HIGH', 'MIDDLE', 'LOW'], 'swings': ['OFF', 'ON']}, 'COOL': {'temperatures': {'celsius': {'min': 18, 'max': 30, 'step': 1.0}, 'fahrenheit': {'min': 64, 'max': 86, 'step': 1.0}}, 'fanSpeeds': ['AUTO', 'HIGH', 'MIDDLE', 'LOW'], 'swings': ['OFF', 'ON']}, 'DRY': {'swings': ['OFF', 'ON']}, 'FAN': {'fanSpeeds': ['AUTO', 'HIGH', 'MIDDLE', 'LOW'], 'swings': ['OFF', 'ON']}, 'HEAT': {'temperatures': {'celsius': {'min': 16, 'max': 30, 'step': 1.0}, 'fahrenheit': {'min': 61, 'max': 86, 'step': 1.0}}, 'fanSpeeds': ['AUTO', 'HIGH', 'MIDDLE', 'LOW'], 'swings': ['OFF', 'ON']}}
2020-03-28 03:17:05 DEBUG (SyncWorker_16) [custom_components.tado] Updating zone 1
2020-03-28 03:17:05 DEBUG (SyncWorker_16) [PyTado.interface] api call: GET: zones/1/state, headers {'Referer': 'https://my.tado.com/', 'Content-Type': 'application/json', 'Authorization': '[REMOVED]'}, data None
2020-03-28 03:17:05 DEBUG (SyncWorker_16) [PyTado.interface] api call: GET: zones/1/state, response {"tadoMode":"HOME","geolocationOverride":false,"geolocationOverrideDisableTime":null,"preparation":null,"setting":{"type":"AIR_CONDITIONING","power":"ON","mode":"HEAT","temperature":{"celsius":20.00,"fahrenheit":68.00},"fanSpeed":"AUTO","swing":"ON"},"overlayType":null,"overlay":null,"openWindow":null,"nextScheduleChange":{"start":"2020-03-28T04:30:00Z","setting":{"type":"AIR_CONDITIONING","power":"ON","mode":"HEAT","temperature":{"celsius":23.00,"fahrenheit":73.40},"fanSpeed":"AUTO","swing":"ON"}},"nextTimeBlock":{"start":"2020-03-28T04:30:00.000Z"},"link":{"state":"ONLINE"},"activityDataPoints":{"acPower":{"timestamp":"2020-03-27T23:02:22.260Z","type":"POWER","value":"ON"}},"sensorDataPoints":{"insideTemperature":{"celsius":20.88,"fahrenheit":69.58,"timestamp":"2020-03-28T02:09:27.830Z","type":"TEMPERATURE","precision":{"celsius":0.1,"fahrenheit":0.1}},"humidity":{"type":"PERCENTAGE","percentage":42.30,"timestamp":"2020-03-28T02:09:27.830Z"}}}
2020-03-28 03:17:05 DEBUG (SyncWorker_16) [PyTado.zone] Processing data from zone 1
2020-03-28 03:17:05 DEBUG (SyncWorker_16) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:17:05 DEBUG (SyncWorker_16) [custom_components.tado] Updating device 400337
2020-03-28 03:17:05 DEBUG (SyncWorker_16) [PyTado.interface] api call: GET: devices, headers {'Referer': 'https://my.tado.com/', 'Content-Type': 'application/json', 'Authorization': '[REMOVED]'}, data None
2020-03-28 03:17:05 DEBUG (SyncWorker_16) [PyTado.interface] api call: GET: devices, response [{"deviceType":"WR02","serialNo":"WR2508001792","shortSerialNo":"WR2508001792","currentFwVersion":"59.5","connectionState":{"value":true,"timestamp":"2020-03-28T02:09:27.830Z"},"characteristics":{"capabilities":["INSIDE_TEMPERATURE_MEASUREMENT","IDENTIFY"]},"accessPointWiFi":{"ssid":"tado1792"},"commandTableUploadState":"FINISHED"}]
2020-03-28 03:17:05 DEBUG (SyncWorker_16) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T02:09:27.830Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 03:17:21 DEBUG (SyncWorker_12) [custom_components.tado] Updating zone 1
2020-03-28 03:17:21 DEBUG (SyncWorker_12) [PyTado.interface] api call: GET: zones/1/state, headers {'Referer': 'https://my.tado.com/', 'Content-Type': 'application/json', 'Authorization': '[REMOVED]'}, data None
2020-03-28 03:17:21 DEBUG (SyncWorker_12) [PyTado.interface] api call: GET: zones/1/state, response {"tadoMode":"HOME","geolocationOverride":false,"geolocationOverrideDisableTime":null,"preparation":null,"setting":{"type":"AIR_CONDITIONING","power":"ON","mode":"HEAT","temperature":{"celsius":20.00,"fahrenheit":68.00},"fanSpeed":"AUTO","swing":"ON"},"overlayType":null,"overlay":null,"openWindow":null,"nextScheduleChange":{"start":"2020-03-28T04:30:00Z","setting":{"type":"AIR_CONDITIONING","power":"ON","mode":"HEAT","temperature":{"celsius":23.00,"fahrenheit":73.40},"fanSpeed":"AUTO","swing":"ON"}},"nextTimeBlock":{"start":"2020-03-28T04:30:00.000Z"},"link":{"state":"ONLINE"},"activityDataPoints":{"acPower":{"timestamp":"2020-03-27T23:02:22.260Z","type":"POWER","value":"ON"}},"sensorDataPoints":{"insideTemperature":{"celsius":20.88,"fahrenheit":69.58,"timestamp":"2020-03-28T02:09:27.830Z","type":"TEMPERATURE","precision":{"celsius":0.1,"fahrenheit":0.1}},"humidity":{"type":"PERCENTAGE","percentage":42.30,"timestamp":"2020-03-28T02:09:27.830Z"}}}
2020-03-28 03:17:21 DEBUG (SyncWorker_12) [PyTado.zone] Processing data from zone 1
2020-03-28 03:17:21 DEBUG (SyncWorker_12) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:17:21 DEBUG (SyncWorker_12) [custom_components.tado] Updating device 400337
2020-03-28 03:17:21 DEBUG (SyncWorker_12) [PyTado.interface] api call: GET: devices, headers {'Referer': 'https://my.tado.com/', 'Content-Type': 'application/json', 'Authorization': '[REMOVED]'}, data None
2020-03-28 03:17:21 DEBUG (SyncWorker_12) [PyTado.interface] api call: GET: devices, response [{"deviceType":"WR02","serialNo":"WR2508001792","shortSerialNo":"WR2508001792","currentFwVersion":"59.5","connectionState":{"value":true,"timestamp":"2020-03-28T02:09:27.830Z"},"characteristics":{"capabilities":["INSIDE_TEMPERATURE_MEASUREMENT","IDENTIFY"]},"accessPointWiFi":{"ssid":"tado1792"},"commandTableUploadState":"FINISHED"}]
2020-03-28 03:17:21 DEBUG (SyncWorker_12) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T02:09:27.830Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
2020-03-28 03:17:22 DEBUG (SyncWorker_3) [custom_components.tado.climate] Switching to HEAT for zone Air Conditioning (1) with temperature 20.88 掳C
2020-03-28 03:17:22 DEBUG (SyncWorker_3) [custom_components.tado] Set overlay for zone 1: overlay_mode=TADO_MODE, temp=20.88, duration=None, type=AIR_CONDITIONING, mode=HEAT fan_speed=AUTO
2020-03-28 03:17:22 DEBUG (SyncWorker_3) [PyTado.interface] api call: PUT: zones/1/overlay, headers {'Referer': 'https://my.tado.com/', 'Content-Type': 'application/json;charset=UTF-8', 'Authorization': '[REMOVED]', 'Mime-Type': 'application/json;charset=UTF-8'}, data b'{"setting": {"type": "AIR_CONDITIONING", "power": "ON", "temperature": {"celsius": 20.88}, "fanSpeed": "AUTO", "mode": "HEAT"}, "termination": {"type": "TADO_MODE"}}'
2020-03-28 03:17:22 DEBUG (SyncWorker_3) [PyTado.interface] api call: PUT: zones/1/overlay, response {"errors":[{"code":"setting.notSupported","title":"swing not in supported swings [OFF, ON]"}]}
2020-03-28 03:17:22 DEBUG (SyncWorker_3) [custom_components.tado] Updating zone 1
2020-03-28 03:17:22 DEBUG (SyncWorker_3) [PyTado.interface] api call: GET: zones/1/state, headers {'Referer': 'https://my.tado.com/', 'Content-Type': 'application/json;charset=UTF-8', 'Authorization': '[REMOVED]', 'Mime-Type': 'application/json;charset=UTF-8'}, data None
2020-03-28 03:17:22 DEBUG (SyncWorker_3) [PyTado.interface] api call: GET: zones/1/state, response {"tadoMode":"HOME","geolocationOverride":false,"geolocationOverrideDisableTime":null,"preparation":null,"setting":{"type":"AIR_CONDITIONING","power":"ON","mode":"HEAT","temperature":{"celsius":20.00,"fahrenheit":68.00},"fanSpeed":"AUTO","swing":"ON"},"overlayType":null,"overlay":null,"openWindow":null,"nextScheduleChange":{"start":"2020-03-28T04:30:00Z","setting":{"type":"AIR_CONDITIONING","power":"ON","mode":"HEAT","temperature":{"celsius":23.00,"fahrenheit":73.40},"fanSpeed":"AUTO","swing":"ON"}},"nextTimeBlock":{"start":"2020-03-28T04:30:00.000Z"},"link":{"state":"ONLINE"},"activityDataPoints":{"acPower":{"timestamp":"2020-03-27T23:02:22.260Z","type":"POWER","value":"ON"}},"sensorDataPoints":{"insideTemperature":{"celsius":20.88,"fahrenheit":69.58,"timestamp":"2020-03-28T02:09:27.830Z","type":"TEMPERATURE","precision":{"celsius":0.1,"fahrenheit":0.1}},"humidity":{"type":"PERCENTAGE","percentage":42.30,"timestamp":"2020-03-28T02:09:27.830Z"}}}
2020-03-28 03:17:22 DEBUG (SyncWorker_3) [PyTado.zone] Processing data from zone 1
2020-03-28 03:17:22 DEBUG (SyncWorker_3) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:17:37 DEBUG (SyncWorker_18) [custom_components.tado] Updating zone 1
2020-03-28 03:17:37 DEBUG (SyncWorker_18) [PyTado.interface] api call: GET: zones/1/state, headers {'Referer': 'https://my.tado.com/', 'Content-Type': 'application/json;charset=UTF-8', 'Authorization': '[REMOVED]', 'Mime-Type': 'application/json;charset=UTF-8'}, data None
2020-03-28 03:17:37 DEBUG (SyncWorker_18) [PyTado.interface] api call: GET: zones/1/state, response {"tadoMode":"HOME","geolocationOverride":false,"geolocationOverrideDisableTime":null,"preparation":null,"setting":{"type":"AIR_CONDITIONING","power":"ON","mode":"HEAT","temperature":{"celsius":20.00,"fahrenheit":68.00},"fanSpeed":"AUTO","swing":"ON"},"overlayType":null,"overlay":null,"openWindow":null,"nextScheduleChange":{"start":"2020-03-28T04:30:00Z","setting":{"type":"AIR_CONDITIONING","power":"ON","mode":"HEAT","temperature":{"celsius":23.00,"fahrenheit":73.40},"fanSpeed":"AUTO","swing":"ON"}},"nextTimeBlock":{"start":"2020-03-28T04:30:00.000Z"},"link":{"state":"ONLINE"},"activityDataPoints":{"acPower":{"timestamp":"2020-03-27T23:02:22.260Z","type":"POWER","value":"ON"}},"sensorDataPoints":{"insideTemperature":{"celsius":20.88,"fahrenheit":69.58,"timestamp":"2020-03-28T02:09:27.830Z","type":"TEMPERATURE","precision":{"celsius":0.1,"fahrenheit":0.1}},"humidity":{"type":"PERCENTAGE","percentage":42.30,"timestamp":"2020-03-28T02:09:27.830Z"}}}
2020-03-28 03:17:37 DEBUG (SyncWorker_18) [PyTado.zone] Processing data from zone 1
2020-03-28 03:17:37 DEBUG (SyncWorker_18) [custom_components.tado] Dispatching update to zone 1:
2020-03-28 03:17:37 DEBUG (SyncWorker_18) [custom_components.tado] Updating device 400337
2020-03-28 03:17:37 DEBUG (SyncWorker_18) [PyTado.interface] api call: GET: devices, headers {'Referer': 'https://my.tado.com/', 'Content-Type': 'application/json;charset=UTF-8', 'Authorization': '[REMOVED]', 'Mime-Type': 'application/json;charset=UTF-8'}, data None
2020-03-28 03:17:37 DEBUG (SyncWorker_18) [PyTado.interface] api call: GET: devices, response [{"deviceType":"WR02","serialNo":"WR2508001792","shortSerialNo":"WR2508001792","currentFwVersion":"59.5","connectionState":{"value":true,"timestamp":"2020-03-28T02:09:27.830Z"},"characteristics":{"capabilities":["INSIDE_TEMPERATURE_MEASUREMENT","IDENTIFY"]},"accessPointWiFi":{"ssid":"tado1792"},"commandTableUploadState":"FINISHED"}]
2020-03-28 03:17:37 DEBUG (SyncWorker_18) [custom_components.tado] Dispatching update to device 400337: {'deviceType': 'WR02', 'serialNo': 'WR2508001792', 'shortSerialNo': 'WR2508001792', 'currentFwVersion': '59.5', 'connectionState': {'value': True, 'timestamp': '2020-03-28T02:09:27.830Z'}, 'characteristics': {'capabilities': ['INSIDE_TEMPERATURE_MEASUREMENT', 'IDENTIFY']}, 'accessPointWiFi': {'ssid': 'tado1792'}, 'commandTableUploadState': 'FINISHED'}
{
"tadoMode": "HOME",
"geolocationOverride": false,
"geolocationOverrideDisableTime": null,
"preparation": null,
"setting": {
"type": "AIR_CONDITIONING",
"power": "ON",
"mode": "HEAT",
"temperature": {
"celsius": 20.00,
"fahrenheit": 68.00
},
"fanSpeed": "AUTO",
"swing": "ON"
},
"overlayType": null,
"overlay": null,
"openWindow": null,
"nextScheduleChange": {
"start": "2020-03-28T04:30:00Z",
"setting": {
"type": "AIR_CONDITIONING",
"power": "ON",
"mode": "HEAT",
"temperature": {
"celsius": 23.00,
"fahrenheit": 73.40
},
"fanSpeed": "AUTO",
"swing": "ON"
}
},
"nextTimeBlock": {
"start": "2020-03-28T04:30:00.000Z"
},
"link": {
"state": "ONLINE"
},
"activityDataPoints": {
"acPower": {
"timestamp": "2020-03-27T23:02:22.260Z",
"type": "POWER",
"value": "ON"
}
},
"sensorDataPoints": {
"insideTemperature": {
"celsius": 20.88,
"fahrenheit": 69.58,
"timestamp": "2020-03-28T02:09:27.830Z",
"type": "TEMPERATURE",
"precision": {
"celsius": 0.1,
"fahrenheit": 0.1
}
},
"humidity": {
"type": "PERCENTAGE",
"percentage": 42.30,
"timestamp": "2020-03-28T02:09:27.830Z"
}
}
}
It looks like it is successfully changing to heat mode. However this is no overlay so it looks like its running the smart schedule?
What does it show in the Home Assistant UI?
After I change it to "heat" it goes back to "Auto" after 3-4 seconds. Same thing when I change the temperature. Nothing changes on my.tado.com.
I see what is wrong.
2020-03-28 03:17:22 DEBUG (SyncWorker_3) [PyTado.interface] api call: PUT: zones/1/overlay, response {"errors":[{"code":"setting.notSupported","title":"swing not in supported swings [OFF, ON]"}]}
Your device has swing and the tado library doesn't know about this.
So it looks like the fan Speed issue is fixed!! This is good news.
Now we need to work on the swing support
{
"type": "AIR_CONDITIONING",
"AUTO": {
"fanSpeeds": ["AUTO", "HIGH", "MIDDLE", "LOW"],
"swings": ["OFF", "ON"]
},
"COOL": {
"temperatures": {
"celsius": {
"min": 18,
"max": 30,
"step": 1.0
},
"fahrenheit": {
"min": 64,
"max": 86,
"step": 1.0
}
},
"fanSpeeds": ["AUTO", "HIGH", "MIDDLE", "LOW"],
"swings": ["OFF", "ON"]
},
"DRY": {
"swings": ["OFF", "ON"]
},
"FAN": {
"fanSpeeds": ["AUTO", "HIGH", "MIDDLE", "LOW"],
"swings": ["OFF", "ON"]
},
"HEAT": {
"temperatures": {
"celsius": {
"min": 16,
"max": 30,
"step": 1.0
},
"fahrenheit": {
"min": 61,
"max": 86,
"step": 1.0
}
},
"fanSpeeds": ["AUTO", "HIGH", "MIDDLE", "LOW"],
"swings": ["OFF", "ON"]
}
}
Good to hear!
That makes sense, I had to go back in my email history and found that I received this from Tado 25.02.2020:
Here at tado掳 we try to optimize our products and to offer the best solution to our customers.
At the moment we are investigating ways to improve and expand the capabilities of our tado掳 Smart AC Controller.
For this we would like to test a new improved command set, which supports the swing function of your AC.
If you are happy to help us improve the tado掳 Smart AC Controller please answer this email and we will update your device.Thank you very much for your time.
We look forward to your reply.Kind regards,
tado掳 Team
@pw4056 I've sent @wmalgadey a PR. Once this is merged, I'll update the Home Assistant PR to include this and get an update to test with
https://github.com/wmalgadey/PyTado/pull/32
Fantastic, thank you again! 馃憤
@pw4056 I pushed an update to https://github.com/bdraco/tado.git that _should_ _hopefully_ fix this for you. Would you please give it a shot.
It works! 馃挴 馃憤
For the swing mode, only option is "OFF", not sure if it's normal? In my tado app I can change the setting between "on" and "off". I have never tried it, and I'm not at home, so I dont know if it actually works on my unit.
Under Developer Tools -> States -> Entity: "climate.air_conditioning" the state attributes looks like this:
hvac_modes:
- 'off'
- auto
- heat
- cool
- heat_cool
- dry
- fan_only
min_temp: 16
max_temp: 30
target_temp_step: 1
fan_modes:
- auto
- high
- medium
- low
preset_modes:
- away
- home
swing_modes:
- 'OFF'
current_temperature: 21.8
temperature: 23
current_humidity: 31.6
fan_mode: auto
hvac_action: heating
preset_mode: home
swing_mode: 'OFF'
friendly_name: Air Conditioning
supported_features: 57
It works! 馃挴 馃憤
For the swing mode, only option is "OFF", not sure if it's normal?
Excellent. Glad to know its fixed!
I only added off for the initial version to narrow the scope so we could focus only on the existing issue. I'll need to send @wmalgadey a followup PR to add support for switching it to ON
Thank you very much for this! 馃憤
I guess this issue can be closed now?
The issue will close when the fix merges
It works! 馃挴 馃憤
For the swing mode, only option is "OFF", not sure if it's normal?Excellent. Glad to know its fixed!
I only added off for the initial version to narrow the scope so we could focus only on the existing issue. I'll need to send @wmalgadey a followup PR to add support for switching it to ON
@pw4056 PR is here for adding reporting of swing mode: https://github.com/wmalgadey/PyTado/pull/33
@pw4056 https://github.com/home-assistant/core/pull/34404 should be in 0.109
Excellent. Well done!