🔥 Advanced Heating Control

I added some logging. Just pull the latest test version and be sure your logger is configurated correctly (configuration.yaml).

logger:
  default: warning
  logs:
    blueprints.panhans.heatingcontrol: info

Then restart your home assistant instance and have a look into your logs under system → logs and expand the log so you can see the info logs. You also can upload your log and share it.

Thanks in advance!

I just installed the latest version and it’ has been running for a bit. The debugging works and it seems that the calibration function is being called every 10 minutes

2023-10-07 21:21:24.163 INFO (MainThread) [blueprints.panhans.heatingcontrol] Heating Control Beta Tado Version called. There are 1 tado trvs.
2023-10-07 21:21:24.164 INFO (MainThread) [blueprints.panhans.heatingcontrol] Heating Control Beta Tado Version called. There are 1 tado trvs.
2023-10-07 21:21:24.164 INFO (MainThread) [blueprints.panhans.heatingcontrol] Heating Control Beta Tado Version called. There are 3 tado trvs.
2023-10-07 21:30:30.388 INFO (MainThread) [blueprints.panhans.heatingcontrol] Heating Control Beta Tado Version called. There are 3 tado trvs.
2023-10-07 21:40:30.392 INFO (MainThread) [blueprints.panhans.heatingcontrol] Heating Control Beta Tado Version called. There are 3 tado trvs.
2023-10-07 21:50:30.391 INFO (MainThread) [blueprints.panhans.heatingcontrol] Heating Control Beta Tado Version called. There are 3 tado trvs.

However the following is also being logged

2023-10-07 21:50:30.394 ERROR (MainThread) [homeassistant.components.automation.kokken_alrum_varme] Køkken/alrum - varme: If at step 2: Repeat at step 1: If at step 2: Error executing script. Error rendering template for variables at pos 1: TypeError: '>' not supported between instances of 'float' and 'NoneType'
2023-10-07 21:50:30.394 ERROR (MainThread) [homeassistant.components.automation.kokken_alrum_varme] Køkken/alrum - varme: If at step 2: Repeat at step 1: Error executing script. Error rendering template for if at pos 2: TypeError: '>' not supported between instances of 'float' and 'NoneType'
2023-10-07 21:50:30.395 ERROR (MainThread) [homeassistant.components.automation.kokken_alrum_varme] Køkken/alrum - varme: If at step 2: Error executing script. Error rendering template for repeat at pos 1: TypeError: '>' not supported between instances of 'float' and 'NoneType'
2023-10-07 21:50:30.395 ERROR (MainThread) [homeassistant.components.automation.kokken_alrum_varme] Køkken/alrum - varme: Error executing script. Error rendering template for if at pos 2: TypeError: '>' not supported between instances of 'float' and 'NoneType'
2023-10-07 21:50:30.397 ERROR (MainThread) [homeassistant.components.automation.kokken_alrum_varme] Error while executing automation automation.kokken_alrum_varme: TypeError: '>' not supported between instances of 'float' and 'NoneType'

The complete trace is available here (it seems the forum doesn’t allow text files to be uploaded)

1 Like

Thanks for your feedback. Please give the latest (2.10_b3) version a try. Thanks for your help!

Hi, great Blueprint. Many thx. Is there a possibility to add the type timer to the party mode chooseable entities? Because a Timer can be started for x minutes and then it ends automaticly. Ideal for partymode.

1 Like

It seems to work as expected

2023-10-08 21:30:30.355 INFO (MainThread) [blueprints.panhans.heatingcontrol] Heating Control Beta Tado Version called. There are 3 tado trvs.
2023-10-08 21:30:30.360 INFO (MainThread) [blueprints.panhans.heatingcontrol] current_valve: climate.kokken is_tado: True tado_valves: climate.kokken
2023-10-08 21:30:30.361 INFO (MainThread) [blueprints.panhans.heatingcontrol] current_valve: climate.kokken actual_temp: 22.7 trv_temp: 21.9 offset: 1 offset_old: 0.0 calculated_offset: 1 offset_dif: True
2023-10-08 21:30:30.909 INFO (MainThread) [blueprints.panhans.heatingcontrol] current_valve: climate.alrum_vest is_tado: True tado_valves: climate.alrum_vest
2023-10-08 21:30:30.911 INFO (MainThread) [blueprints.panhans.heatingcontrol] current_valve: climate.alrum_vest actual_temp: 22.7 trv_temp: 21.2 offset: 2 offset_old: 0.0 calculated_offset: 2 offset_dif: True
2023-10-08 21:30:31.017 INFO (MainThread) [blueprints.panhans.heatingcontrol] current_valve: climate.alrum_syd is_tado: True tado_valves: climate.alrum_syd
2023-10-08 21:30:31.018 INFO (MainThread) [blueprints.panhans.heatingcontrol] current_valve: climate.alrum_syd actual_temp: 22.7 trv_temp: 21.4 offset: 1 offset_old: 0.0 calculated_offset: 1 offset_dif: True

The offsets are also visible in the Tado app. I will check the logs tomorrow, but so far everything looks fine
BTW, judging from the app, Tado supports offsets with one decimal point, so maybe the blueprint could use one decimal precision as well? Still - this is great progress. Thank you very much for your work on this amazing blueprint

1 Like

The blueprint have been running over night and I can confirm that the offset is adjusted correctly

Hey everyone, first of a big thanks for this blueprint! I also wanted to get more flexibility with my heating schedules and this blueprint is pretty fantastic! Thank you panhans.

I was also reading along and tried out the new beta with tado offset control and it seems to be working great. :slight_smile: Also asking if it’s possible to get a more nuanced offset control by allowing .1 steps. When I understand your blueprint correctly, it’s currently doing 1 step offsets at a time, correct?
Two things:
(1) There’s a warning message I can’t decipher, but guessing has something to do with the blueprint. Just in case it’s of relevance.

2023-10-09 15:49:13.398 INFO (MainThread) [blueprints.panhans.heatingcontrol] Heating Control Beta Tado Version called. There are 1 tado trvs.
2023-10-09 15:50:30.236 INFO (MainThread) [blueprints.panhans.heatingcontrol] Heating Control Beta Tado Version called. There are 1 tado trvs.
2023-10-09 15:50:30.239 WARNING (MainThread) [homeassistant.helpers.template] Template variable warning: 'NULL' is undefined when rendering '{% set entities = device_entities(device_id(current_valve)) %} {% set calibration_entity_id = namespace(id=[]) %} {% for s in entities %}
{% if (('calibration' in s) or ('offset' in s)) %}
{% set calibration_entity_id.id = s %}
{% endif %}
{% endfor %} {{ iif (calibration_entity_id.id[0] is defined, calibration_entity_id.id, NULL) }}'
2023-10-09 15:50:30.242 INFO (MainThread) [blueprints.panhans.heatingcontrol] current_valve: climate.wohnzimmer is_tado: True tado_valves: climate.wohnzimmer
2023-10-09 15:50:30.245 INFO (MainThread) [blueprints.panhans.heatingcontrol] current_valve: climate.wohnzimmer actual_temp: 21.31 trv_temp: 21.9 offset: -1 offset_old: -1.0 calculated_offset: -2 offset_dif: True
2023-10-09 15:51:05.510 INFO (MainThread) [blueprints.panhans.heatingcontrol] Heating Control Beta Tado Version called. There are 1 tado trvs.
2023-10-09 15:51:05.511 INFO (MainThread) [blueprints.panhans.heatingcontrol] Heating Control Beta Tado Version called. There are 1 tado trvs.

(2) I was wondering if it’s also possible to include a “start heating only if presence sensor is detected”. So same thing with the stop eating hearlier, just in the morning when somebody is sleeping in. :slight_smile:

THANK YOU! :smiley:

1 Like

Just added offset with two decimal places. Here is another test version. Thanks!

  1. Thank you for your feedback. I think this is fixed in latest test version. Feel free to try an report back.
  2. You can realize something like this with the current version. Just provide an empty scheduler and use your presence detector for guest mode. (test version) Maybe it needs another naming now.

Thank you so much! That was quick. :smiley:
Tried doing that using an empty scheduler and a binary sensor that watches the lamps in kitchen. Even if they go on, it doesn’t do anything.

Ah you probably meant party mode. That will overwrite the scheduler. If description is still valid than for the guest mode to work there would still need to be a scheduler that’s currently active.
For party mode it works. I think that’ll do! :smiley:
Thank you.

Ah sry. My fault! Yes, for guest mode you need a regular scheduler. If nobody is home and guest mode is on the trvs will be set according to schedulers state. And party mode will ignore everything and will set the trvs to heat. :wink:

1 Like

Thank you for your feedback! Here is a test version. I’ve opened up party mode for timers. Feel free to test and report back. :wink:

The added precision on offsets works fine. The Tado app can’t really decide whether it wants to support one or two digits :slight_smile:


1 Like

Do you run in issues with two digits? Should I better set it to one digit?

I am not encountering any issues with two digits. Personally I think one digit is sufficient but if others have a usecase for further precision, it’s also not an issue.

Just working my way through the set up for this blueprint and the first thing I picked up was the open window detection function. Can you only specify one window or door entity to switch off the whole heating system if any window or door is opened?

Having individual thermostats on each radiator means I’m able to control each radiator individually. I don’t want the whole heating system to go off if I open a window in a bathroom and keep the door closed.

I have an automation that already turns off the radiators in a particular room when a window in that room is detected as open for a set time. Is that functionality available in this blueprint?

Have I missed something?

Yes, only one window is possible. There is no way in home assistant to make multiple entities optional. But there is a workaround for this. Just create a group in a helper section and group all your windows you want to. Add the group to the blueprint and it’s done.

I’ve setup automations with this blueprint for each room. Also for each room I have a window group that is used for the individual window open detection.

Hope that helps.

Ah right. So an automation for each room using your template might be the best option. I didn’t think about doing it that way :thinking:

Yes, thats the main purpose of that blueprint: Some rooms share the same schedulers, some need some special ones like bathroom oder bedroom. But everyone has another use case.
I think about an additional room based blueprint with less configuration effort based on areas where climates, temperature and window sensors get detected automatically.

1 Like

I am using your automation to control all of my TRV valves and it works really well, I have now tried to add a Prescence Sensor and am struggling with the setup as the automation seems to be ignoring both the 5 min delay and the presence time window. I am using a test binary sensor and as soon as I switch it off it turn the temperature to minimum without waiting 5 mins it also does this even when the schedule is set to run all day.

1 Like