Support for cozytouch (smart heating gateway) Sauter heatings

Sorry, I did not take time to explain it, but I did not forget ! I will try before the end of the week. :slight_smile:

Hi,
I am following this topic as I plan to connect my new PAC Atlantic early next year to HA .

Thank you for the work done

How to login :

curl -c cookie-jar.txt -X POST -k -i 'https://ha110-1.overkiz.com/enduser-mobile-web/enduserAPI/login' -F 'userId=MYEMAIL' -F 'userPassword=MYPASSWORD'

I use this curl request in a NodeRed ‘Exec’ node.

How to get all data :

curl -b cookie-jar.txt -X GET 'https://ha110-1.overkiz.com/enduser-mobile-web/enduserAPI/setup/devices'

This command will output a huge JSON file.
Save it locally and then open it a JSON parser, for instance: http://json.parser.online.fr/

You don’t really care about the first chapter ‘Location’, of the second chapter ‘gateways’.

What is the most important is the third chapter ‘Devices’, this where you will find everything.
Have a look at all of them. Check their name, their attributes, data to identifiy what you are looking for.
For instance you will be able to identify each ‘zone’ of your heating system, and for each zone you will find parameters for the ‘eco’ temperature, the ‘comfort’ temperature, you also find parameter for the current temperature and so on. I can not detail anymore because it will be different for each system. This is where you have to spend some time.

When you have identify which data you are looking for, use a NodeRed JSON parser node connected to the output of the following request. The most complicated part is done. You now have a JSON object containing all the data retrieved from cozytouch cloud.

You can easily access some specific data using function like this : msg.payload[9].states[8].value;
if you want to retrieve the 9th parameter value of the 10th device (remember that all list start with a 0).
You can easily store the retrieved data in a HA variable and use it for automation or Lovelace display.

Another very interesting possibility is the ‘commands’. In the JSON file, have a look at the ‘definition / commands’ chapter of each device. You will find which commandes are available for each device.

Example : how to force the refresh of values for 2 devices :

 curl -b cookie-jar.txt -X POST -H "Content-type: application/json" -d '{"actions":[{"deviceURL":"io://0823-4256-4307/11076269#8","commands": [{"name": "refreshPassAPCHeatingProfile"}, {"name": "refreshTargetTemperature"}, {"name": "refreshDerogationRemainingTime"}]}, {"deviceURL":"io://0823-4256-4307/11076269#10","commands": [{"name": "refreshPassAPCHeatingProfile"}, {"name": "refreshTargetTemperature"}, {"name": "refreshDerogationRemainingTime"}]}]}' 'https://ha110-1.overkiz.com/enduser-mobile-web/enduserAPI/exec/apply'

Another example : how to set one heater in ‘comfort’ mode

 curl -b cookie-jar.txt -X POST -H "Content-type: application/json" -d '{"actions":[{"deviceURL":"io://0823-4256-4307/11076269#10","commands": [{"name": "setPassAPCHeatingMode","parameters":["comfort"]}]}]}' 'https://ha110-1.overkiz.com/enduser-mobile-web/enduserAPI/exec/apply'

How to set the ‘comfort’ temperature of a device to 21.2°C :

curl -b cookie-jar.txt -X POST -H "Content-type: application/json" -d '{"actions":[{"deviceURL":"io://0823-4256-4307/11076269#8","commands": [{"name": "setComfortHeatingTargetTemperature","parameters":[21.2]}]}]}' 'https://ha110-1.overkiz.com/enduser-mobile-web/enduserAPI/exec/apply'

As i said, I don’t have any developper skill. So I found out the easiest way to do this (for me) was to use Node Red. I use :

  • ‘Template’ node : to set the curl commands
  • ‘Exec’ node : to execute the previous command
  • ‘json’ node : to convert the curl output to json
  • ‘function’ node : to extract the interesting values from the JSON object
  • ‘call service’ node : to store retrieved values into HA variables
1 Like

In node red i have found an another solution with this node https://flows.nodered.org/node/node-red-contrib-overkiz
I control very well light. But it was more difficult for heater. It show me lot of thing but i don’t success to set temperature as i want.

I’m using E connect box Rexel . IO control for heater, and Yokis on it for Light. This node is easy when action is on the command, but don’t let a place to put value when you want set a things (like temperature). I 've try to put a msg.payload with value unsuccessfully. try “parameter”: 20 too and no success. I’m pretty sure solution is not so far

Would you mind posting the flow here? I would be also interested. I can control my heaters (sauter connected to cozytouch) but not my heater in the bathroom with the IO extension attached to it.


This is the node. I try to put a function node or change node before to put the value of temperature i will but i block. Syntax problem i think. I try random things like juste value in payload …

Hello everybody, Hello Shaad,
I’m reviving quite an old post, hope someone will see it !

I’m starting with Home Assistant, and tried the Cozytouch component made by Cyr-ius.
However, i think i’m facing the same problem as you were : incomplete devices and entities.
I wanted to try your solution with node-red, which seems quite promising, in order to gather all the devices and attributes of my installation, and to be able to “play” with them as I want.

I followed thoroughly your procedure, but i’m blocked at the first step : I have a message in my debug window : ‘{“errorCode”:“RESOURCE_ACCESS_DENIED”,“error”:“Not authenticated”}’.
I managed to log to my account with the same login/pass in the https://dev.duboc.pro/tahoma/api website, so I think i made no mistake on it.
Could you help me with this one? I’m beginning in node-red too, so maybe it is only a configuration step i didn’t make.
Thanks a lot,

Which device do you have? You could give GitHub - iMicknl/ha-tahoma: Custom component for Home Assistant to interact with smart devices via Somfy TaHoma or other OverKiz based API's. a try as well :).

Hello!
Thanks for your answer!
I’ve got 2 Sauter Ipala heaters, and in fact, I tried ha-tahoma integration few days ago. It didn’t find my devices, but hass-cozytouch did. But it was impossible to configure them correctly and to use them.
Just this morning, i understood that the problem came from the devices I have, that are not fully supported by hass-cozytouch component.
There are, however, supported by ha-tahoma thanks to the improvement made in this post :

I tried it, and it is waaaay better! The devices are recognized, and the heaters respond directly to the orders made in a thermostat-card!
I tried to use the scheduler-card to program them, but didn’t manage to do so. I’ll try again!

So I guess my problem was only due to the model of my device (AtlanticElectricalHeaterWithAdjustableTemperatureSetpoint)!
Is the release of the new version of ha-tahoma component (with this improvement) planned ?

Thanks a lot for your work, so useful!!
I just started with home assistant, and I can’t imagine the time you are spending on those development!

1 Like

I have been very busy lately, but just react on the issue / pull request with your experiences + potential bugs, and I will see if we can prioritize it a bit. :slight_smile:

1 Like