Core: Tado Component Platform Error

Created on 5 Apr 2017  Â·  63Comments  Â·  Source: home-assistant/core

Make sure you are running the latest version of Home Assistant before reporting an issue.

You should only file an issue if you found a bug. Feature and enhancement requests should go in the Feature Requests section of our community forum:

Home Assistant release (hass --version):
0.41.0

Python release (python3 --version):
Python 3.4.2

Component/platform:
Component: Tado

Description of problem:
Cannot get the Tado component to load. Have tried on two HASS builds, a manual install and AIO install. My device is a Tado AC Smart Control.

Get the following error on startup in the logs.

17-04-05 14:31:36 ERROR (MainThread) [homeassistant.components.climate] Error while setting up platform tado
Traceback (most recent call last):
  File "/srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages/homeassistant/helpers/entity_component.py", line 153, in _async_setup_platform
    entity_platform.schedule_add_entities, discovery_info
  File "/usr/lib/python3.4/asyncio/futures.py", line 388, in __iter__
    yield self  # This tells Task to wait for completion.
  File "/usr/lib/python3.4/asyncio/tasks.py", line 286, in _wakeup
    value = future.result()
  File "/usr/lib/python3.4/asyncio/futures.py", line 277, in result
    raise self._exception
  File "/usr/lib/python3.4/concurrent/futures/thread.py", line 54, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages/homeassistant/components/climate/tado.py", line 51, in setup_platform
    zone['id']))
  File "/srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages/homeassistant/components/climate/tado.py", line 65, in create_climate_device
    min_temp = float(capabilities["temperatures"]["celsius"]["min"])
KeyError: 'temperatures'

Expected:

Problem-relevant configuration.yaml entries and steps to reproduce:




    1. 2.
  1. 3.

Traceback (if applicable):


Additional info:

tado

All 63 comments

It seems that the capabilities-structure deliver a different content, or a wrong one! The only thing I can do is to do a check before. I can't reproduce this error!

I have more of less the same issue:

17-04-10 09:57:36 ERROR (MainThread) [homeassistant.helpers.entity] Update for climate.hot_water fails
Traceback (most recent call last):
  File "/srv/homeassistant/lib/python3.4/site-packages/homeassistant/helpers/entity.py", line 225, in async_update_ha_state
    None, self.update)
  File "/usr/lib/python3.4/asyncio/futures.py", line 388, in __iter__
    yield self  # This tells Task to wait for completion.
  File "/usr/lib/python3.4/asyncio/tasks.py", line 286, in _wakeup
    value = future.result()
  File "/usr/lib/python3.4/asyncio/futures.py", line 277, in result
    raise self._exception
  File "/usr/lib/python3.4/concurrent/futures/thread.py", line 54, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/srv/homeassistant/lib/python3.4/site-packages/homeassistant/components/climate/tado.py", line 209, in update
    sensor_data['insideTemperature']['celsius'])

@azzab80 is it possible for you to get me the json object wich is beeing delivered for the ac smart thermostat? I do not have access to one of those, so I am not able to see, which structure is delivered!

It is easy doing this with chrome for example! Just open the development console and activate the "network" tab. Open my.tado.com and login. When you scroll through the list of accessed urls there should be one with the name "capabilities". For me it looks like this:

{
   "type":"HEATING",
   "temperatures":{
      "celsius":{
         "min":5,
         "max":25,
         "step":1.0
      },
      "fahrenheit":{
         "min":41,
         "max":77,
         "step":1.0
      }
   }
}

@CrazyChaos is it possible to do the same for your device? The result of the "state" query would be interesting.

for me it look like this:

{
   "tadoMode":"HOME",
   "geolocationOverride":false,
   "geolocationOverrideDisableTime":null,
   "preparation":null,
   "setting":{
      "type":"HEATING",
      "power":"ON",
      "temperature":{
         "celsius":21.00,
         "fahrenheit":69.80
      }
   },
   "overlayType":null,
   "overlay":null,
   "openWindow":null,
   "link":{
      "state":"ONLINE"
   },
   "activityDataPoints":{
      "heatingPower":{
         "type":"PERCENTAGE",
         "percentage":0.00,
         "timestamp":"2017-04-10T08:49:10.884Z"
      }
   },
   "sensorDataPoints":{
      "insideTemperature":{
         "celsius":21.77,
         "fahrenheit":71.19,
         "timestamp":"2017-04-10T08:48:37.204Z",
         "type":"TEMPERATURE",
         "precision":{
            "celsius":1.0,
            "fahrenheit":1.0
         }
      },
      "humidity":{
         "type":"PERCENTAGE",
         "percentage":31.90,
         "timestamp":"2017-04-10T08:48:37.204Z"
      }
   }
}

Hi @wmalgadey ,

Yeah sure no problem.

AUTO : {swings: ["OFF", "ON"]} swings : ["OFF", "ON"] 0 : "OFF" 1 : "ON" COOL : {temperatures: {celsius: {min: 19, max: 30, step: 1}, fahrenheit: {min: 66, max: 86, step: 1}},…} DRY : {swings: ["OFF", "ON"]} FAN : {swings: ["OFF", "ON"]} HEAT : {temperatures: {celsius: {min: 17, max: 28, step: 1}, fahrenheit: {min: 63, max: 82, step: 1}},…} fanSpeeds : ["HIGH", "MIDDLE", "LOW"] 0 : "HIGH" 1 : "MIDDLE" 2 : "LOW" temperatures : {celsius: {min: 17, max: 28, step: 1}, fahrenheit: {min: 63, max: 82, step: 1}} celsius : {min: 17, max: 28, step: 1} fahrenheit : {min: 63, max: 82, step: 1} max : 82 min : 63 step : 1 type : "AIR_CONDITIONING"

Please let me know if can help with anything else.

Cheers,
Aaron

@azzab80 that looks a bit awkward ;) I can see the the structure, and that there are differences, but it is not enough to change the code. Is it possible, that you paste the structure formatted (I did mine with https://jsonformatter.curiousconcept.com/).

If you are on the network-tab in chrome, and you selected one entry on the left, in the right pane you can select the response tab. There you will see the unformatted response!

Ah yep. Was wondering how to get the formatting right. Capabilities:

{  
   "type":"AIR_CONDITIONING",
   "AUTO":{  
      "swings":[  
         "OFF",
         "ON"
      ]
   },
   "COOL":{  
      "temperatures":{  
         "celsius":{  
            "min":19,
            "max":30,
            "step":1.0
         },
         "fahrenheit":{  
            "min":66,
            "max":86,
            "step":1.0
         }
      },
      "fanSpeeds":[  
         "HIGH",
         "MIDDLE",
         "LOW"
      ]
   },
   "DRY":{  
      "swings":[  
         "OFF",
         "ON"
      ]
   },
   "FAN":{  
      "swings":[  
         "OFF",
         "ON"
      ]
   },
   "HEAT":{  
      "temperatures":{  
         "celsius":{  
            "min":17,
            "max":28,
            "step":1.0
         },
         "fahrenheit":{  
            "min":63,
            "max":82,
            "step":1.0
         }
      },
      "fanSpeeds":[  
         "HIGH",
         "MIDDLE",
         "LOW"
      ]
   }
}

State:
`{  
   "tadoMode":"HOME",
   "geolocationOverride":false,
   "geolocationOverrideDisableTime":null,
   "preparation":null,
   "setting":{  
      "type":"AIR_CONDITIONING",
      "power":"OFF"
   },
   "overlayType":"MANUAL",
   "overlay":{  
      "type":"MANUAL",
      "setting":{  
         "type":"AIR_CONDITIONING",
         "power":"OFF"
      },
      "termination":{  
         "type":"MANUAL",
         "projectedExpiry":null
      }
   },
   "openWindow":null,
   "link":{  
      "state":"ONLINE"
   },
   "activityDataPoints":{  

   },
   "sensorDataPoints":{  
      "insideTemperature":{  
         "celsius":23.62,
         "fahrenheit":74.52,
         "timestamp":"2017-04-10T11:08:01.881Z",
         "type":"TEMPERATURE",
         "precision":{  
            "celsius":0.1,
            "fahrenheit":0.1
         }
      },
      "humidity":{  
         "type":"PERCENTAGE",
         "percentage":51.40,
         "timestamp":"2017-04-10T11:08:01.881Z"
      }
   }
}

I have to add some more functionality here. Currently only heating-devices are possible. Let's see, what I can do here ;)

Much appreciated!

@azzab80 can you turn your ac on and post the result of the state again?

@wmalgadey I need to do this @ home, I am behind proxy on work... Get back to you later.

Sure

{  
   "tadoMode":"HOME",
   "geolocationOverride":false,
   "geolocationOverrideDisableTime":null,
   "preparation":null,
   "setting":{  
      "type":"AIR_CONDITIONING",
      "power":"ON",
      "mode":"COOL",
      "temperature":{  
         "celsius":20.00,
         "fahrenheit":68.00
      },
      "fanSpeed":"LOW"
   },
   "overlayType":"MANUAL",
   "overlay":{  
      "type":"MANUAL",
      "setting":{  
         "type":"AIR_CONDITIONING",
         "power":"ON",
         "mode":"COOL",
         "temperature":{  
            "celsius":20.00,
            "fahrenheit":68.00
         },
         "fanSpeed":"LOW"
      },
      "termination":{  
         "type":"MANUAL",
         "projectedExpiry":null
      }
   },
   "openWindow":null,
   "link":{  
      "state":"ONLINE"
   },
   "activityDataPoints":{  

   },
   "sensorDataPoints":{  
      "insideTemperature":{  
         "celsius":23.44,
         "fahrenheit":74.19,
         "timestamp":"2017-04-10T12:30:23.595Z",
         "type":"TEMPERATURE",
         "precision":{  
            "celsius":0.1,
            "fahrenheit":0.1
         }
      },
      "humidity":{  
         "type":"PERCENTAGE",
         "percentage":50.20,
         "timestamp":"2017-04-10T12:30:23.595Z"
      }
   }
}

Here is state. Can't get the format right... Looks good before I post it...

{  
   tadoMode:"HOME",
   geolocationOverride:false,
   geolocationOverrideDisableTime:null,
   preparation:null,
   …
}activityDataPoints:{  

}geolocationOverride:falsegeolocationOverrideDisableTime:nulllink:{  
   state:"ONLINE"
}state:"ONLINE"openWindow:nulloverlay:nulloverlayType:nullpreparation:nullsensorDataPoints:{  

}setting:{  
   type:"HOT_WATER",
   power:"ON",
   temperature:{  
      celsius:55,
      fahrenheit:131
   }
}power:"ON"temperature:{  
   celsius:55,
   fahrenheit:131
}celsius:55fahrenheit:131type:"HOT_WATER"tadoMode:"HOME"

@CrazyChaos can you post the unformatted result?

If you are on the network-tab in chrome, and you selected one entry on the left, in the right pane you can select the response tab. There you will see the unformatted response!

Alright, hereby:

{  
   "tadoMode":"AWAY",
   "geolocationOverride":false,
   "geolocationOverrideDisableTime":null,
   "preparation":null,
   "setting":{  
      "type":"HOT_WATER",
      "power":"OFF",
      "temperature":null
   },
   "overlayType":null,
   "overlay":null,
   "openWindow":null,
   "link":{  
      "state":"ONLINE"
   },
   "activityDataPoints":{  

   },
   "sensorDataPoints":{  

   }
}

@CrazyChaos how often do you get this the error message? I am going to add a check to this part, but it looks like your response is the same like it is supposed to be!

Uhm, well per minute one entry in the Home Assistant log...

KeyError: 'insideTemperature'

@CrazyChaos I added a new issue #7059 for your problem.

I added some changes to support the ac mode of your device. I am not able to test this. Could you grab the current changes and confirm the changes? Then I will create a merge request

Thanks @wmalgadey Gave it a test and got following error:

17-04-12 10:29:25 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/lib/python3.4/asyncio/tasks.py", line 237, in _step
    result = next(coro)
  File "/srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages/homeassistant/helpers/entity_component.py", line 120, in _async_setup_platform
    self.hass, self.config, self.domain, platform_type)
  File "/srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages/homeassistant/setup.py", line 238, in async_prepare_setup_platform
    platform = loader.get_platform(domain, platform_name)
  File "/srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages/homeassistant/loader.py", line 103, in get_platform
    return get_component(PLATFORM_FORMAT.format(domain, platform))
  File "/srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages/homeassistant/loader.py", line 141, in get_component
    module = importlib.import_module(path)
  File "/srv/homeassistant/homeassistant_venv/lib/python3.4/importlib/__init__.py", line 109, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 2254, in _gcd_import
  File "<frozen importlib._bootstrap>", line 2237, in _find_and_load
  File "<frozen importlib._bootstrap>", line 2226, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1200, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1129, in _exec
  File "<frozen importlib._bootstrap>", line 1467, in exec_module
  File "<frozen importlib._bootstrap>", line 1572, in get_code
  File "<frozen importlib._bootstrap>", line 1532, in source_to_code
  File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed
  File "/srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages/homeassistant/components/climate/tado.py", line 32
    CONST_MODE_FAN_HIGH = 'High',
                        ^
SyntaxError: invalid syntax

I removed:
FAN_MODES_LIST = {
CONST_MODE_FAN_HIGH = 'High',
CONST_MODE_FAN_MIDDLE = 'Middle',
CONST_MODE_FAN_LOW = 'Low',
CONST_MODE_OFF = 'Off',
}

and now the climate platform starts up ok. However under operation mode in the Home Assistant frontend I see:
Smart Schedule
Timer
Tado Mode
Manual
Off

I would expect to see just Heating, Cooling and Off as it does both heats and cools.

I can imagine this will be very difficult to code without a test device so I could send you @wmalgadey my Tado username and password if you feel like tackling this some more? Just don't try and freeze me! hehe

@azzab80 if this is ok for you! I have no problem with that.

Easiest way to send the password?

per email I suppose! use [email protected], it is my private email.

Not sure if I should add this here but i have some tado error in logs, which may be relevant?. The platform seems to work as i get all the sensors set up just fine though.
Also wanted to say thanks for building this component, it's awesome! Do you think it could be adapted to add a hot water sensor too? In my case it would just report whether hot water is on or not
Cheers
James

Home Assistant
0.42.3

The following errors have been logged this session:

17-04-12 21:51:35 ERROR (MainThread) [homeassistant.components.climate] Error while setting up platform tado
Traceback (most recent call last):
  File "/usr/src/app/homeassistant/helpers/entity_component.py", line 153, in _async_setup_platform
    entity_platform.schedule_add_entities, discovery_info
  File "uvloop/future.pyx", line 230, in __iter__ (uvloop/loop.c:110600)
  File "uvloop/future.pyx", line 432, in uvloop.loop.BaseTask._fast_wakeup (uvloop/loop.c:113980)
  File "uvloop/future.pyx", line 101, in uvloop.loop.BaseFuture._result_impl (uvloop/loop.c:108900)
  File "/usr/local/lib/python3.5/concurrent/futures/thread.py", line 55, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/app/homeassistant/components/climate/tado.py", line 49, in setup_platform
    tado, hass, zone, zone['name'], zone['id']))
  File "/usr/src/app/homeassistant/components/climate/tado.py", line 63, in create_climate_device
    min_temp = float(capabilities['temperatures']['celsius']['min'])
KeyError: 'temperatures'

@jimbob1001 #7059 references the same kind of zone. I will look into this. The error can be fixed without a problem. But I do not know exactly how to handle the "just hot water"-type :) up to now!

@azzab80 I added your tado login to my config. I just changed the code, so everything should work now. To switch the fan on or off I have to do this on my.tado.com to add it to the api interface.

Tell me when I can do this! (please add your timezone :))

Excellent work!

Feel free to do it whenever @wmalgadey

I will need some more time! I have a lot to do in the next 10 days! Sorry :(

No need to apologise @wmalgadey . Appreciate your efforts so far!

No worries m8, take your time but keep me posted. Would appreciate that.


Van: Wolfgang Malgadey notifications@github.com
Verzonden: donderdag 20 april 2017 21:29
Aan: home-assistant/home-assistant
CC: CrazyChaos; Mention
Onderwerp: Re: [home-assistant/home-assistant] Tado Component Platform Error (#6943)

I will need some more time! I have a lot to do in the next 10 days! Sorry :(

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/home-assistant/home-assistant/issues/6943#issuecomment-295870994, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ALKqnKiKwej8_T5Z_aqRUInfhOntCjEmks5rx7IdgaJpZM4Mzvfl.

So did this ever get fixed, i have a tado climate controlling a split AC, and its not showing up under home assistant

I did some tests yesterday. I could push a fix, so you can see the devices. Because I have no AC device, it is not so easy to test, if it is working as expected!

Hi, thank you very much for addressing this issue.

I have the same problem. The Tado component was working for me but today i received this error :

ERROR (MainThread) [homeassistant.components.climate] Error while setting up platform tado

Home-assistant version: 0.45.1

It doesn't work anymore. I'm using a Tado thermostat at home.

Do you think there is a solution? What could be the problem?
Kind regards,
Filip

@Filhgd, is there more to this error message? Some kind of tracelog or so?

@wmalgadey

First of: a big thank you for looking at my message ;-)

I've just noticed this: https://github.com/home-assistant/home-assistant/issues/8010

Could it be a problem with the Tado API?

More info:

2017-06-13 07:19:34 ERROR (MainThread) [homeassistant.components.climate] Error while setting up platform tado
Traceback (most recent call last):
  File "/srv/homeassistant/lib/python3.4/site-packages/homeassistant/helpers/entity_component.py", line 155, in _async_setup_platform
    entity_platform.schedule_add_entities, discovery_info
  File "/usr/lib/python3.4/asyncio/futures.py", line 388, in __iter__
    yield self  # This tells Task to wait for completion.
  File "/usr/lib/python3.4/asyncio/tasks.py", line 286, in _wakeup
    value = future.result()
  File "/usr/lib/python3.4/asyncio/futures.py", line 277, in result
    raise self._exception
  File "/usr/lib/python3.4/concurrent/futures/thread.py", line 54, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/srv/homeassistant/lib/python3.4/site-packages/homeassistant/components/climate/tado.py", line 38, in setup_platform
    tado = hass.data[DATA_TADO]
KeyError: 'tado_data'
2017-06-13 07:19:42 ERROR (Thread-11) [homeassistant.components.tado] Unable to connect to mytado with username and password
2017-06-13 07:19:42 ERROR (MainThread) [homeassistant.setup] Setup failed for tado: Component failed to initialize.

It worked yesterday with the same configuration and i didn't change my username or password.

Kind regards

Yes it is a problem with the api. The authentication challenge changed!

https://github.com/wmalgadey/PyTado/issues/1 fixes this

TY!

Can is ask a noob question (because i'm a new user to home assistant)?

How can i change the interface.py file in my own home assistant (hassbian) installation?
I looked for it but couldn't find it. Only the Tado component in my python map but this isn't the same i think.

Thank you very much!

We have to make a change request to the home-assistant repo. This is not trivial. If you want to test the current features or changes, you have to use my custom component (https://github.com/wmalgadey/tado_component). Just copy it to homeassistant directory (where the configuration.yaml is), remove the tado config and add the tado_v1 config like in the project readme described.

I am just preparing to merge this repo with the current hass development. Give me some time, that I can prepare the master branch.

done migrating the current development to the custom component (https://github.com/wmalgadey/tado_component/releases/tag/1.1.0)

@amirandap the problem in this issue is fixed in 1.1.0 of the custom component. Adding it to the next hass release is the next step.

@wmalgadey thanks will try your solution this weekend

@amirandap I think you meant @wmalgadey?

@wmalgadey ty! I did it and everything is working again ;-)

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.

Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment :+1:

This is still not working for me:

2017-10-29 12:30:28 ERROR (MainThread) [homeassistant.components.climate] Error while setting up platform tado
Traceback (most recent call last):

  File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/helpers/entity_component.py", line 170, in _async_setup_platform
    SLOW_SETUP_MAX_WAIT, loop=self.hass.loop)

  File "/usr/lib/python3.5/asyncio/tasks.py", line 400, in wait_for
    return fut.result()

  File "/usr/lib/python3.5/asyncio/futures.py", line 293, in result
    raise self._exception

  File "/usr/lib/python3.5/concurrent/futures/thread.py", line 55, in run
    result = self.fn(*self.args, **self.kwargs)

  File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/climate/tado.py", line 60, in setup_platform
    tado, hass, zone, zone['name'], zone['id']))

  File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/climate/tado.py", line 74, in create_climate_device
    temperatures = capabilities['HEAT']['temperatures']
KeyError: 'HEAT'

@amirandap what devices do you use in your zones?

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.

Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment :+1:

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates.

Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment :+1:

Hi @wmalgadey, I've got the same issue as @amirandap .
I got 3 zones

  1. Tado° Smart Thermostat Starter Kit V2
  2. Tado° additional Smart Thermostat
  3. Tado° Smart AC Control V1

Any more information you need?

Error while setting up platform tado
Traceback (most recent call last):
  File "/usr/src/app/homeassistant/helpers/entity_platform.py", line 128, in _async_setup_platform
    SLOW_SETUP_MAX_WAIT, loop=hass.loop)
  File "/usr/local/lib/python3.6/asyncio/tasks.py", line 358, in wait_for
    return fut.result()
  File "/usr/local/lib/python3.6/concurrent/futures/thread.py", line 56, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/app/homeassistant/components/climate/tado.py", line 64, in setup_platform
    tado, hass, zone, zone['name'], zone['id'])
  File "/usr/src/app/homeassistant/components/climate/tado.py", line 81, in create_climate_device
    temperatures = capabilities['HEAT']['temperatures']
KeyError: 'HEAT'

I am quite busy in the moment. We already tried some changes here, but without success.

Let me look into it on this weekend, maybe I find a new idea, where to look at.

I am quite busy in the moment. We already tried some changes here, but without success.

Let me look into it on this weekend, maybe I find a new idea, where to look at.

I can try and help, I believe this is the same issue from this issue:

https://github.com/wmalgadey/tado_component/issues/23

My AC does not have any heat functionality, probably why it failed to retrieve the key 'HEAT'. I've retrieve the API response for you to investigate.

https://my.tado.com/api/v2/homes/#####/zones

[
    {
        "id": 1,
        "name": "1st Floor",
        "type": "HEATING",
        "dateCreated": "2015-12-21T15:46:45.000Z",
        "deviceTypes": [
            "RU01"
        ],
        "devices": [
            {
                "deviceType": "RU01",
                "serialNo": "######",
                "shortSerialNo": "######",
                "currentFwVersion": "49.4",
                "connectionState": {
                    "value": true,
                    "timestamp": "2018-10-19T14:58:25.106Z"
                },
                "characteristics": {
                    "capabilities": [
                        "INSIDE_TEMPERATURE_MEASUREMENT",
                        "IDENTIFY",
                        "OPEN_WINDOW_DETECTION"
                    ]
                },
                "batteryState": "NORMAL",
                "duties": [
                    "ZONE_UI",
                    "ZONE_DRIVER",
                    "ZONE_LEADER"
                ]
            }
        ],
        "reportAvailable": false,
        "supportsDazzle": true,
        "dazzleEnabled": true,
        "dazzleMode": {
            "supported": true,
            "enabled": true
        },
        "openWindowDetection": {
            "supported": true,
            "enabled": false,
            "timeoutInSeconds": 900
        }
    },
    {
        "id": 2,
        "name": "2nd Floor",
        "type": "HEATING",
        "dateCreated": "2016-03-23T10:09:09.143Z",
        "deviceTypes": [
            "RU01"
        ],
        "devices": [
            {
                "deviceType": "RU01",
                "serialNo": "######",
                "shortSerialNo": "######",
                "currentFwVersion": "49.4",
                "connectionState": {
                    "value": true,
                    "timestamp": "2018-10-19T14:45:40.084Z"
                },
                "characteristics": {
                    "capabilities": [
                        "INSIDE_TEMPERATURE_MEASUREMENT",
                        "IDENTIFY",
                        "OPEN_WINDOW_DETECTION"
                    ]
                },
                "batteryState": "LOW",
                "duties": [
                    "ZONE_UI",
                    "ZONE_DRIVER",
                    "ZONE_LEADER"
                ]
            }
        ],
        "reportAvailable": false,
        "supportsDazzle": true,
        "dazzleEnabled": true,
        "dazzleMode": {
            "supported": true,
            "enabled": true
        },
        "openWindowDetection": {
            "supported": true,
            "enabled": false,
            "timeoutInSeconds": 900
        }
    },
    {
        "id": 4,
        "name": "Air Conditioning",
        "type": "AIR_CONDITIONING",
        "dateCreated": "2018-05-18T11:52:11.481Z",
        "deviceTypes": [
            "WR01"
        ],
        "devices": [
            {
                "deviceType": "WR01",
                "serialNo": "######",
                "shortSerialNo": "######",
                "currentFwVersion": "45.13",
                "connectionState": {
                    "value": true,
                    "timestamp": "2018-10-19T14:57:01.984Z"
                },
                "characteristics": {
                    "capabilities": [
                        "INSIDE_TEMPERATURE_MEASUREMENT"
                    ]
                },
                "accessPointWiFi": {
                    "ssid": "######"
                },
                "commandTableUploadState": "FINISHED",
                "duties": [
                    "ZONE_UI",
                    "ZONE_DRIVER",
                    "ZONE_LEADER"
                ]
            }
        ],
        "reportAvailable": false,
        "supportsDazzle": false,
        "dazzleEnabled": true,
        "dazzleMode": {
            "supported": false
        },
        "openWindowDetection": {
            "supported": false
        }
    }
]

https://my.tado.com/api/v2/homes/#####/zones/#/state?
MANUAL CONTROL STANDBY

{
    "tadoMode": "HOME",
    "geolocationOverride": false,
    "geolocationOverrideDisableTime": null,
    "preparation": null,
    "setting": {
        "type": "AIR_CONDITIONING",
        "power": "ON",
        "mode": "COOL",
        "temperature": {
            "celsius": 24,
            "fahrenheit": 75.2
        }
    },
    "overlayType": "MANUAL",
    "overlay": {
        "type": "MANUAL",
        "setting": {
            "type": "AIR_CONDITIONING",
            "power": "ON",
            "mode": "COOL",
            "temperature": {
                "celsius": 24,
                "fahrenheit": 75.2
            }
        },
        "termination": {
            "type": "MANUAL",
            "projectedExpiry": null
        }
    },
    "openWindow": null,
    "nextScheduleChange": null,
    "link": {
        "state": "ONLINE"
    },
    "activityDataPoints": {
        "acPower": {
            "timestamp": "2018-10-19T08:11:51.373Z",
            "type": "POWER",
            "value": "OFF"
        }
    },
    "sensorDataPoints": {
        "insideTemperature": {
            "celsius": 24.14,
            "fahrenheit": 75.45,
            "timestamp": "2018-10-19T14:57:01.993Z",
            "type": "TEMPERATURE",
            "precision": {
                "celsius": 0.1,
                "fahrenheit": 0.1
            }
        },
        "humidity": {
            "type": "PERCENTAGE",
            "percentage": 51.8,
            "timestamp": "2018-10-19T14:57:01.993Z"
        }
    }
}

MANUAL CONTROL ON

{
    "tadoMode": "HOME",
    "geolocationOverride": false,
    "geolocationOverrideDisableTime": null,
    "preparation": null,
    "setting": {
        "type": "AIR_CONDITIONING",
        "power": "ON",
        "mode": "COOL",
        "temperature": {
            "celsius": 23,
            "fahrenheit": 73.4
        }
    },
    "overlayType": "MANUAL",
    "overlay": {
        "type": "MANUAL",
        "setting": {
            "type": "AIR_CONDITIONING",
            "power": "ON",
            "mode": "COOL",
            "temperature": {
                "celsius": 23,
                "fahrenheit": 73.4
            }
        },
        "termination": {
            "type": "MANUAL",
            "projectedExpiry": null
        }
    },
    "openWindow": null,
    "nextScheduleChange": null,
    "link": {
        "state": "ONLINE"
    },
    "activityDataPoints": {
        "acPower": {
            "timestamp": "2018-10-19T15:08:11.207Z",
            "type": "POWER",
            "value": "ON"
        }
    },
    "sensorDataPoints": {
        "insideTemperature": {
            "celsius": 24.14,
            "fahrenheit": 75.45,
            "timestamp": "2018-10-19T14:57:01.993Z",
            "type": "TEMPERATURE",
            "precision": {
                "celsius": 0.1,
                "fahrenheit": 0.1
            }
        },
        "humidity": {
            "type": "PERCENTAGE",
            "percentage": 51.8,
            "timestamp": "2018-10-19T14:57:01.993Z"
        }
    }
}

Hope this helps

https://my.tado.com/api/v2/homes/#####/zones/#/capabilities

{
    "type": "AIR_CONDITIONING",
    "COOL": {
        "temperatures": {
            "celsius": {
                "min": 18,
                "max": 30,
                "step": 1
            },
            "fahrenheit": {
                "min": 64,
                "max": 86,
                "step": 1
            }
        }
    }
}

https://my.tado.com/api/v2/homes/#####/zones/#/overlay

{
    "type": "MANUAL",
    "setting": {
        "type": "AIR_CONDITIONING",
        "power": "ON",
        "mode": "COOL",
        "temperature": {
            "celsius": 24,
            "fahrenheit": 75.2
        }
    },
    "termination": {
        "type": "MANUAL",
        "projectedExpiry": null
    }
}

could somebody test any changes? maybe in a separate branch from the hass-repository, or from my custom component (https://github.com/wmalgadey/tado_component)? What will be the best place for you?

@wmalgadey I can test it just need a reminder on how to override the default plugin. You can put it in your own branch I can check it out and report back

I made some changes to the default component in https://github.com/wmalgadey/home-assistant/tree/tado_ac.

I am just trying to upload the pytado library to pypi

The upload worked, please give me some feedback. I try to update my custom component too, but not today or this week, sorry :/

Is this still an issue you are experiencing? Can you please try upgrading to the latest version of Home Assistant (0.90) and report back if this is still a problem? Thanks!

Is this still an issue you are experiencing? Can you please try upgrading to the latest version of Home Assistant (0.90) and report back if this is still a problem? Thanks!

I would close this issue. I did create a new issue wich should cover this issue in more detail (https://github.com/home-assistant/home-assistant/issues/22712).

Closing. Please open a new issue if there are more errors with stack traces.

Was this page helpful?
0 / 5 - 0 ratings