New Request: ROTH Touchline - Underfloor Heating System

Hi

ROTH Touchline would be nice to have implemented in HA. I don’t have any statistics but at least it’s heavily used in Sweden. The system has a LAN port and can be controlled via an official app. However, I don’t think there is an official API.

It’s possible to control via a CURL PHP request, which already has been developed:
https://dev.n0ll.com/2015/01/roth-touchline-poc-php-wrapper/

At least it would be nice to implement the senors in HA so it’s possible to see the current temperature according to the thermostat(s). In a later stage controlling the system via HA could be implemented.

Anyone with Python skills who can build a ROTH Touchline component?

Root site for ROTH Touchline blog posts:
https://dev.n0ll.com/roth-touchline/

I also found this on GitHub:

I would be happy to test it, even during development.

Br Qxlkdr

To read the current temperature you can use the Python script found here: https://dev.n0ll.com/stuff/touchline/roth.py.
Use a Command line Sensor to call the script and read the sensor value.

 platform: command_line
    name: Temperatur Stue
    command: "python /home/homeassistant/.homeassistant/roth.py -t 192.168.1.181 -m read -i 0 -n RaumTemp"
    unit_of_measurement: "°C"
    value_template: '{{ value | multiply(0.01) | round(1) }}'

You need to replace the IP address and the parameter -i 0 with the room number you want to read.

1 Like

Works perfectly! :grinning:

At least getting the current values from the thermostat. Thanks a lot!

Maybe this is an easy implementation as a “heater” or something so you can both see and control the underfloor heating system. Hoping to have an official implementation soon.

Current result
roth_homeassistant

Br Qxlkdr

Iv’e started working on this Python library (https://pypi.python.org/pypi/touchline/0.3), and I’m about to implement a climate plarform in home assistant for the Roth Touchline. Please contribute to the Python library to get more functionality in like setting the setpoint of the thermostats.

I assume this is the GitHub repository?

How far have you come and how to use it in Home Assistant? I’m happy to test in real since I have Roth Touchline at home. Keep me posted. I will try to answer ASAP.

Thanks in advance and good job.

Br Qxlkdr

Yes, this is the repo. I changed the name not to conflict with the new home assistant platform i’m making.

So far the library supports reading out temperature and setpoint. However, it is easily upgraded to read all touchline parameters:

  • Name (implemented)
  • Setpoint (implemented)
  • Temperature (implemented)
  • Setpoint max
  • Setpoint min
  • Week program
  • Operation mode
  • Device ID
  • Controller ID

Also, when I have a bit more spare time I’ll upgrade the library to edit some of the parameters.

You can test the library stand-alone now if you install the package from pypi (install python 3, thereafter pip install touchline), and run the example.py with your own ip address. That would be the best way to verify that it is working with another Touchline system.

I’ll keep you posted as soon as I’ve implemented any more functionality.

Best regards,
abondoe

1 Like

Nice job, works perfectly.

I submitten an issue via GitHub. Maybe that can be fixed easily with Python?
https://github.com/abondoe/pytouchline/issues/1

How will the HA integration work? Will I be able to change settings via HA or just read current and target temperature?

Again, really nice work! As you said, keep me posted, thanks. I will be happy to test from an end-user point of view.

Br Qxlkdr

In the final release you will be able to change setpoint, week program, and operation mode from the HA interface.

Thanks for the interest :slight_smile:

Looking forward to see further news.

Thanks in advance.

Br Qxlkdr

@Qxlkdr - Version 0.6 of pytouchline is ready: https://pypi.python.org/pypi?:action=display&name=pytouchline&version=0.6

This version supports reading and writing all parameters available from the heat pump.

Best regards,
abondoe

1 Like

Nice work :grinning:

Will test this, as soon as I have some spare time.

The new functions is working like a charm! Good job! :slight_smile:
Just the HA integration now I assume?

print(devices[0].set_name("Test123"))
print(devices[0].set_target_temperature(21.5))
print(devices[0].set_target_temperature_high(30))
print(devices[0].set_target_temperature_low(5))
print(devices[0].set_week_program(0))
print(devices[0].set_operation_mode(0))

Any updates on the HA integration? Looking forward to have full integration in HA!

Keep up the great work!

1 Like

Hi

Any news about it? Waiting with excitement for the next update and especially the HA integration. :slight_smile:

Br Qxlkdr

Hi

Hope you had a nice Christmas and New Years. Will you have the time to continue with the Python code for ROTH Touchline and Home Assistant integration? We’re waiting with excitement :slight_smile:

Br Qxlkdr

Hi @abondoe

Are testing the touchline component included in 0.61.
Have discovered two issues so far.

  1. Needed to disable httplib2 cache do to access denied issue when running in virtualenv.
  2. In the frontend the target temperature label are “unknown”

Same here, regarding httplib2. How to disable it and will it affect me somehow?

@Qxlkdr

I changed h = httplib2.Http(".cache") to h = httplib2.Http() in init.py to disable using cache.

I reported an issue in the Issue Tracker via GitHub:
https://github.com/home-assistant/home-assistant/issues/11675

What are the pros and cons of disabling httplib2?

Br Qxlkdr

I didn’t disable the httplib2, I prevented it from using cache. When running in virtualenv you don’t have the rights to make the cache file. I don’t know the cons of disabling it, but at least it’s working fine without it.