[OBSOLETE] Tado (Connect)

To @Fuzzyligic I hope this get your attention thanks…

@Fuzzyligic
Firstly, massive thank you for this connector.
I have a 9 Tado zones in my house and I believe with adding your smarthings hub and presence sensor, I will be able to do what I want.
May I ask one question (@invisiblemountain May be able to answer this one too)?
I am looking to have a “lodger mode”, so when the lodger is in the house his heating is ON in the bedroom and his bathroom but to turn it off, when he is away. I believe this can be done as @invisiblemountain has done it with the Cleaner mode (which I would create as well).
My question is whether when the lodger is in, you can set up different temperature for different time periods or whether you can only set one temperature when he is present?
Thanks in advance for your help as it will trigger or cancel my smarthings purchase :slight_smile:
L.

Hi Coume, as an update I used the connectors created by @Fuzzyligic and the free CoRE automation SmartApp for SmartThings, which is working reliably for me. With that, when the presence sensor keyring changes to present, CoRE sets the hot water to on and the heating to a certain temp.
Tado acts as if the person had manually set those values when they walked in. I have not tried, but I imagine you could use @Fuzzyligic’s connectors to set the temp for just one of the additional zones, my set up does the main heating zone, not additional zones. The settings then remain like that until either the keyring changes to absent in which case CoRE sets the temp and hot water to ‘End Manual Control’ - in other words go back to the normal Tado schedule. Or until the next pre-set schedule change in Tado cuts in - irrespective of whether the sensor has left yet or not. So the schedule could switch it off at a certain time even if the lodger is still there. If you wanted to change the temp while the lodger is still there, then I expect you could do that by setting additional time period conditions in CoRE each having a particular temp, and not change the state using the Tado scheduler. I hope that helps.
Hopefully Tado will add a guest mode directly sometime to detect a smartphone without allow it to have rights to change any settings.

1 Like

Hello,
So took the plunge but hitting a very early roadblock! Anyone having issues connecting to Tado?

It seems to fail at the connection/initialization phase.

d972d512-93a2-4d61-b2f9-399070eb13d8 12:22:43: error java.lang.NullPointerException: Cannot invoke method sort() on null object @ line 266
d972d512-93a2-4d61-b2f9-399070eb13d8 12:22:43: debug ___exception: groovyx.net.http.HttpResponseException: Not Found
d972d512-93a2-4d61-b2f9-399070eb13d8 12:22:43: debug Executing ‘sendCommand’
d972d512-93a2-4d61-b2f9-399070eb13d8 12:22:43: debug Http Params ([uri:https://my.tado.com, path:/api/v2/homes/null/zones, requestContentType:application/json, query:[username:XXXXXXXXX@XXXbox.com, password:XXXXXXXXXXXXX]])
d972d512-93a2-4d61-b2f9-399070eb13d8 12:22:43: debug Executing ‘sendCommand.getzones’

Anybody else having issues?

Thanks,
L

ok so the reason it is failing is that you do not have a home id, it is shown as null. now this is gotten by a query immediately when the app is installed. and stored in a state variable.

so this doesn’t work. if you download Insomnia and set up a query like below you can check that you actually get a home it returned (Circled Red) maybe there’s something up here or different with your account (Maybe another Tado API change) but i wont be able to resolve until i see the return.

I can help here. Hello. Long time listener etc

Tado has changed its API again. You now need a new token which you can find here:

https://my.tado.com/webapp/env.js

As I understand it (I’m a tech writer), Tado are being proactive with unofficial apps now and are working together to make them official ahead of a full public API.

So get in touch if you need. The token on that page hasn’t changed in a while but might at some point…

@christhedj
The OAuth token that Tado have defined is only to enable connectivity by client devices. however the wep app users do not have a requirement to use the OAuth authentication. that is not the issue here as i can obtain the correct return on my account and so can others…unless they now have and maintain legacy and new users…in which case i maybe am a legacy user… but either way getting the return from Insomnia for any users affected will allow me to troubleshoot.

How about this @Fuzzyligic

Especially “1- when I manually change the temperature from the ST app, the fan gose to high speed automatically… so a have to change it again to low…”

Thank you for your time…

It does work when I use Insomnia but not when I use ST.
Could it be due to the ’ in my house name?

it shouldn’t be as i don’t process that field in my code.

the only bit i process is the ID

state.homeId = resp.data.homes[0].id

so the thing to do is have the log window open and open the Smart App and run through the settings screen again. it should try to get the id again, and if it fails it should be visible in the log.

Thanks.

Ok, progress has been made.
I cleared the previous install and the “cloud” ones which were not even showing on my phone and the app do retrieve the zones and can connect. However, it fails to create any “Things”.

Below is the log, not sure if it is any helpful?

d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: error Error creating device: physicalgraph.app.exception.UnknownDeviceTypeException: Device type ‘Tado Hot Water Control’ in namespace ‘fuzzysb’ not found.
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Some Devices were not found…creating Child Device Spareroom
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: error Error creating device: physicalgraph.app.exception.UnknownDeviceTypeException: Device type ‘Tado Heating Thermostat’ in namespace ‘fuzzysb’ not found.
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Some Devices were not found…creating Child Device Hot Water
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug In createChildDevice
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug existingDevices Inspected null
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Devices Inspected ‘HEATING|6|Master Bathroom’
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Some Devices were not found…creating Child Device Adeline Bedroom
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug existingDevices Inspected null
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug In createChildDevice
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: error Error creating device: physicalgraph.app.exception.UnknownDeviceTypeException: Device type ‘Tado Heating Thermostat’ in namespace ‘fuzzysb’ not found.
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Some Devices were not found…creating Child Device Lodger Bathroom
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Creating Heating Device Master Bedroom
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Some Devices were not found…creating Child Device Master Bedroom
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug In createChildDevice
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Creating Hot Water Device Hot Water
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Devices Inspected ‘HEATING|2|Master Bedroom’
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug existingDevices Inspected null
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: error Error creating device: physicalgraph.app.exception.UnknownDeviceTypeException: Device type ‘Tado Heating Thermostat’ in namespace ‘fuzzysb’ not found.
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Devices Inspected ‘HEATING|4|Lodger Bedroom’
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Devices Inspected ‘HEATING|10|Adeline Bedroom’
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug In createChildDevice
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Creating Heating Device Adeline Bathroom
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug existingDevices Inspected null
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: error Error creating device: physicalgraph.app.exception.UnknownDeviceTypeException: Device type ‘Tado Heating Thermostat’ in namespace ‘fuzzysb’ not found.
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug existingDevices Inspected null
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug In createChildDevice
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: error Error creating device: physicalgraph.app.exception.UnknownDeviceTypeException: Device type ‘Tado Heating Thermostat’ in namespace ‘fuzzysb’ not found.
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug In createChildDevice
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Some Devices were not found…creating Child Device Adeline Bathroom
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug existingDevices Inspected null
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: error Error creating device: physicalgraph.app.exception.UnknownDeviceTypeException: Device type ‘Tado Heating Thermostat’ in namespace ‘fuzzysb’ not found.
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: error Error creating device: physicalgraph.app.exception.UnknownDeviceTypeException: Device type ‘Tado Heating Thermostat’ in namespace ‘fuzzysb’ not found.
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Creating Heating Device Office
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Some Devices were not found…creating Child Device Office
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Creating Heating Device Downstairs
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Some Devices were not found…creating Child Device Downstairs
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Devices Inspected ‘HEATING|8|Office’
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug existingDevices Inspected null
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug In createChildDevice
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Devices Inspected ‘HEATING|1|Downstairs’
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug getChildDevices(false), children=0
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug [[HEATING|1|Downstairs:Downstairs], [HEATING|2|Master Bedroom:Master Bedroom], [HEATING|6|Master Bathroom:Master Bathroom], [HEATING|4|Lodger Bedroom:Lodger Bedroom], [HEATING|7|Lodger Bathroom:Lodger Bathroom], [HEATING|5|Spareroom:Spareroom], [HOT_WATER|0|Hot Water:Hot Water], [HEATING|8|Office:Office], [HEATING|9|Adeline Bathroom:Adeline Bathroom], [HEATING|10|Adeline Bedroom:Adeline Bedroom]]
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Executing parseZoneResponse.successTrue
d43fd742-c34a-4654-b72c-38d59a2401cd 12:39:49: debug Output status: 200

Additional info about my setup (not sure if it could cause any of the above issue).
1 x Extension Kit
2 x Smart Thermostat
9 x Radiator Valves

ok looking at those logs you haven’t deployed the Device Handlers only the smartapp. please follow the instructions int he the following link on how to correctly install the smart app and device handlers.

FYI

I have the following in my kit, so i don’t think you will have any issues,

1 x Extension Kit
2 x Smart Thermostat
7 x Radiator Valves
1 x AC Thermostat

as for you @mrsbaaa in regards to your feature request regarding Fan speed on the AC device, i am aware of the shortcoming of the device handler when setting temp this will reset the Fan to either High or Automatic dependant on the device capability. there would be a need of another function to check the existing fan speed and substitute that value. to be completely blunt, i have no time available to work on this or test for the foreseeable future due to other commitments. but you are welcome to modify/amend the code as you see fit, if you wish to have your changes submitted to the main repo once you have tested, please create a pull request in Github and i will review/test and give credit to the source code notes.

Quick question, does this device handler work trough the cloud or locally?

@C7ph3r it is purely cloud based Control

Any advantage of using this instead of ifttt?

Yes using this in conjunction with the likes of CoRE then it is far more powerful, as the triggers in IFTTT are far more limiting

FYI, In the past 3 years, I have built the ScheduleTstatZones & ecobeeSetZoneWithSchedule smartapps which allow you to create zones inside your home for more targeted heating/cooling.

I’ve recently modified ScheduleTstatZones & ecobeeSetZoneWithSchedule to be able to control more effectively any room eTRVs with the standard thermostat capabilities.

In the ScheduleTstatZones smartapp, you can configure your rooms/zones/schedules. You then associate your zone/room thermostats to your zones and schedule your zones during the day.

Here is the new virtual zone UI:

In your home, you don’t always want to heat/cool all your rooms. In the evenings or at night for instance, you may want to direct more heat to your bedrooms.

The smartapp lets you choose a master thermostat which controls other slave (zone/room) thermostats in terms of mode and setpoints. The thermostats need to follow the ST standard capabilities.

You can also define enter some delta temp adjustments to make some specific zoned rooms cooler or hotter. You can also use your room’s motion sensor to take into account if the room is occupied or not. The occupied threshold can be defined on a room by room basis for more flexibility.

There are many other features, refer to the ST community wiki for more details:

http://thingsthataresmart.wiki/index.php?title=ScheduleTstatZones

And the following ST community thread:

You can download the code at my store.

www.ecomatiqhomes.com/store

Regards.

True, already using the sensors in Webcore. However first try, I had some error activating the auto mode. Could be due to connection loss. Using ifttt now to set the heatpoint.

Something I would like to implement in my system is set the heatpoint to +1 degree above dewpoint for away mode. I can set dewpoint, but can’t find how to add a safe offset. For now, I’m stuck with a fixed average dewpoint temperature. Anyone an idea how to implement basic math in webcore or force an offset? Not that it will make a huge difference, but it’s what a smart system should do.

Ignore post above. Think I just finally figured it out myself. Should check every 15 minutes to keep the lowest possible temp without risking dew. For some misterious reason, plus in the expression box didn’t work. Not understanding what I did wrong, using a double negative did the trick.

Will give the direct actions another shot in this one and lay off IFTTT. So far so good, much faster responsetimes.

If you have small kids that like to play with the Tado smart valves. Or a wife who is always cold. This piston might come in handy :grin:

1 Like