🔥 Advanced Heating Control

Thanks, I just thought you’d have 1 temp, but it’s good to have a choice.

Ideas are always welcome. I just thought that people starting way home e.g. from work and meanwhile heating starts so they arrive and everything is heated to comfort temp.

Haha, I had the same idea. Maybe a small experiment when my refactoring is ready.

If there is somebody out there who owns those thermostates and can help me debugging and function testing, I will implement this.

Just wonder if the current danfoss / popp / hive implementation works. Got no feedback since I’ve updated the calibration.

1 Like

@panhans Can you tell me why in this case the Up-heating Generic Calibration was activ? the temp was allready reched at this time, upheating was higher than 0,7°C (normally he is max 0,5 C upheating, but this time it was round about 1C)

1 Like

i can test this for the Bosch and the Aqara TRVs. I use for my environment Z2M but i should be able to test some things with ZHA.

1 Like

In your trace your thermostat was set to 28°C. The “normal” temperature with the offset.

"domain": "climate",
"service": "set_temperature",
"service_data": {
    "entity_id": "climate.wohnzimmer_comet_dect",
    "temperature": 28
}

Here is the raw data:

"current_valve": "climate.wohnzimmer_comet_dect",
"current_valve_temp": 28.5,
"step": 0.5,
"sensor_temp": 21.6734388888889,
"min_temp_r": 8,
"max_temp_r": 28,
"new_temperature": 28

Your sensor timeout is set to 1 minute.
If the sensor temperature changes several times in less than a minute, the trigger may not be activated until much later. This can happen if the temperature rises quickly.

1 Like

Very strange, because you see in my screen the blueprint sends 30°C and not 28°C to my Thermostat.
Also the overheat from 0,7°C is strange.

This Problem was only yesterday, we will see. Maybe a hangup.

Thanks for checking

Hi there panhans!

Two questions:

  • do you know if this integration works well with this blueprint? Airzone - Home Assistant I’ve started to test it, and it looks like it’s working, and the integration actually creates a thermostat for each room, but the system is an air heating one, hence the valve concept does not apply all that well…
  • also, is it expected that, when using a comfort template, heating party will revert back to the static comfort temperature when disabled? I remember you saying above that you wanted to refine the temperature handling, so maybe that is something you had already identified.

Thanks!!

Can you tell me when the blueprint is triggered? (Sometimes i have no Run over 15 min.
My Thermostat Trigger time is each 15 min and the right temp on the Thermostat has mostly at night 30 min delay.

Hello

Is there a way to reduce the temperature at night or it is always the Eco temperature?

The automation trigger depends on your configuration. But mostly every entity you specify in options is also a trigger.
Automation gets triggered when:

  • scheduler switches its state
  • scheduler switched to another
  • presence turns on/off
  • window closes / opens

Do you use Fritz Dect Thermostats? Are they only changing on timestamps like 15:00, 15:15, 15:30? Maybe this blueprint needs another modifier for this thermostats so the target temperature will change some seconds earlier before scheduler switched its state or some kind of periodical trigger.
So atm you have to set the schedule times 30min before the real schedule starts?!

Atm the only possibility is to use v4 and select an input helper for minimum temperature. Then you need a 2nd automation to set the value of this entity timebased. But it will be possible in future to set this right out of the blueprint.

1 Like

Yep, its fritzdect (comet dect), i will check the exactly timestamps for changes

Hi again @panhans,

still testing your blueprint with my Airzone (Airzone - Home Assistant). I’ve noticed they HVAC system does not get started by the automation, and I suspect it is because this setting

⚙️ Off Instead Of Minimum Temperature
If enabled your climates turn off instead of lower temperature to minimum temperature.
 

actually was interpreted as HVAC = off, as a result of that setting.

I’ve now switched that setting to off and I wonder if I should rather add a custom action to force HVAC to heating, when the automation gets triggered.

Any thoughts?

The timestamps for the comet dect syncs are the following:
xx:32
xx:47
xx:02
xx:17

1 Like

@panhans Do you have an idea to optimize our “calendar.get_events” template´?
i have currently 3 evetns in this template, 1 of them should only run in the time of the event and than back to the “default” scheduler, this is only work when this get_event do check the event start and end times, can you optimize this?
i hope you understand what i want :slight_smile:

Ok, that shouldn’t be a problem. Only if the service call duration is quiet high. (default 2s)

Do the events overlap? If not just adjust the scan window. Here is the example of the initial post. Time window is 10 minutes and it scans your calendar every 5 minutes. If they overlap it needs some kind of priority logic in the state segment.

template:
- trigger:
    - platform: time_pattern
      minutes: /5
  action:
  - service: calendar.get_events
    data:
      start_date_time: "{{ now() }}"
      end_date_time: "{{ now() + timedelta(minutes = 10) }}"
    target:
      entity_id: 
        - calendar.family
        - calendar.holidays
    response_variable: calendar_events
  binary_sensor:
  - name: Holiday
    icon: mdi:palm-tree
    unique_id: holiday
    state: >
      {{  
        ( calendar_events['calendar.family'].events | regex_search('holiday', ignorecase=True) ) or 
        ( calendar_events['calendar.holidays'].events | count > 0 ) 
      }}
1 Like
  1. this i dont know, i think we will see
  2. perfect i changed now your edited date_time strings and try again thank you :+1:
    2.1 is it maybe possible to update the binary_sensor each time when he triggered? so we solve the problem with overlaps events, when we have a automation behind because he will be triggered

The binary sensor gets updated every time the trigger comes in place. You can trigger your automation by last_updated (update timestamp) or by last_changed (state change).

like this? this gives me a date from yesterday

platform: template
value_template: "{{ states.binary_sensor.advanced_heating_control_kalender.last_updated }}"

#Advanced Heating Control
trigger:
  - platform: time_pattern
    minutes: /5
action:
  - service: calendar.get_events
    data:
      start_date_time: "{{ now() }}"
      end_date_time: "{{ now() + timedelta(minutes = 10) }}"
    target:
      entity_id:
        - calendar.xxxxx
        - calendar.feiertage
    response_variable: termine

binary_sensor:
  #Advanced Heating Control
  - name: Advanced Heating Control Kalender
    unique_id: advanced_heating_control_kalender
    icon: mdi:palm-tree
    state: >
      {{  
        ( termine['calendar.xxxxxx].events | regex_search('Urlaub', ignorecase=True) ) or 
        ( termine['calendar.xxxx'].events | regex_search('Krank', ignorecase=True) ) or 
        ( termine['calendar.xxxxx'].events | regex_search('HomeOffice', ignorecase=True) ) or 
        ( termine['calendar.feiertage'].events | count > 0 ) 
      }}

May be it only gets an update if state is changing. But I am not sure what you want to archive.
You can add another sensor - not binary - that maybe return a string with all detected events. So the state always changes no matter if there is an overlapping event for example. This can be used to trigger another automation every time another event starts or ends within that 10 minute window.

maybe we can add the regex text into a attribut field so we trigger an update. (do you know how?)
also we need to add “| count > 0” behind each event right?