šŸ”„ Advanced Heating Control

Nope, works well. As I said doing it manually works as expected. Looked at the blueprint code but couldnā€™t find where you set the Payload external for the sensor or the external_temperature_inputeither. But Iā€™ve never build something complex for Homeassistant before.

Could you navigate to dev tools.

Paste this into the template editor and edit you thermostat:

{% set valve = 'climate.YOUR_AQARA_THERMOSTAT' %}
{{ device_entities(device_id(valve)) | expand | selectattr('domain','in','number') | map(attribute='entity_id') | list }}

Could you share the output on the right?

Sure thing:

Result
Result type: list
[
  "number.thermostat_office_l0_away_preset_temperature",
  "number.thermostat_office_l0_external_temperature_input"
]
This template listens for the following state changed events:

Entity: binary_sensor.thermostat_office_l0_calibrated
Entity: binary_sensor.thermostat_office_l0_setup
Entity: binary_sensor.thermostat_office_l0_valve_alarm
Entity: binary_sensor.thermostat_office_l0_window_open
Entity: button.thermostat_office_l0_calibrate
Entity: climate.thermostat_office_l0
Entity: number.thermostat_office_l0_away_preset_temperature
Entity: number.thermostat_office_l0_external_temperature_input
Entity: select.thermostat_office_l0_calibrate
Entity: select.thermostat_office_l0_sensor
Entity: sensor.thermostat_office_l0_battery
Entity: sensor.thermostat_office_l0_device_temperature
Entity: sensor.thermostat_office_l0_power_outage_count
Entity: switch.thermostat_office_l0_child_lock
Entity: switch.thermostat_office_l0_schedule
Entity: switch.thermostat_office_l0_valve_detection
Entity: switch.thermostat_office_l0_window_detection
Entity: text.thermostat_office_l0_schedule_settings
Entity: update.thermostat_office_l0

Could you try this version.

Nope, same but now Iā€™m pretty sure that the blueprint setā€™s the away_preset_temperature property to the desired external temperature instead of the external_temperature_input is that intentional?

Yes, the new version filters for external so the away_preset_temperature is ignored. You have to wait some time or trigger the calibration by manipulate the value of the external temperature sensor by setting its state in dev tools or by hold it in your hands for example.

No, I donā€™t see an exclamation mark in the trace.

Yep - works now. Thanks :slightly_smiling_face: But that means Iā€™ve to set the thermostats to external manually upfront, right? Will you add that to the regular version?

If this is the way the calibration entity gets exposed now I will merge this change into the main branch.
What did you mean with ā€œset the thermostats to external manually upfrontā€? Do you have to enable an option in the device options first to make calibration possible?

Yes, according to the documentation Aqara SRTS-A01 youā€™ve to select the temperture sensor to use through the sensor property first. The previsously mentioned blueprint: [Z2M] Aqara TRV E1 link external temperature sensor - #50 by ThWoell does this automatically as well.

1 Like

Wonder if the same entities are exposed using ZHA. Would be great if someone can confirm that or send a screenshot of the device page using ZHA.

I will see how to check if this entity exists and will implement this later. The fix is merged in main branch now.

//EDIT: But I have an idea to implement this safely. :slight_smile:

@matty.van.heesch check out the latest version and have a look in the tweak section. You can enable legacy restore to avoid scene based restore.

1 Like

Checked for a few rooms and seems to be working :-).
Will enable it for all others and monitor the coming days and let you know the result.

Thanks a lot!! Really appreciate all the time and effort you put in this!

1 Like

So if my heating was set to 21c, I would want it to heat up to 21, then have a value like 20c it must drop back down to before heating will resume.
This will prevent it from turning on and off repeatedly as the temp hovers around the set point.

How I can achieve similar with durations?

1 Like

Hey @panhans - thanks for your reply:

Look, for me and probably for all other newcomers in the TVR or AHC ā€œbusiness,ā€ your few lines above could be worth gold and save money, time, and nerves. Shouldnā€™t you include them in the first post, or how could we, as the HA community, better share these experiences? Should I open a new post for this? I wonā€™t be as active or close to the AHC topic as you, which is why Iā€™m asking again.

Hi,

thanks for the wonderful Blue Prince.

on 1 unit I use tweak above room temperature to switch off unit. but I want it to ventilate when the unit is out of command.

Is there anything I can adjust when the unit is turned off and enters ventilation mode?

Thanks for your explanation. I just didnā€™t get the context of your hysteresis request. I though you meant some hysteresis around triggering the automation first.
But no, atm there is nothing implemented like this, but I see if I am able to implement this.
Most Tuya thermostats are reacting sluggish and open their valves when the real temperature is 0.5Ā° till 1Ā°C lower than the target. There is the aggressive mode to compensate this. But this is the exact behaviour youā€™re looking for. :smiley:

Yes, would be a great addition. Wonder if there is a thread already about thermostats for home assistant.

You can try a custom action, with a condition on top. But I donā€™t know if this works. Could be that the automation resets the state to off with the next change of temperature meassurement. So maybe it needs an additional input for selecting the desired mode when the temperature hits the target.

- condition: template
  value_template: |-
    {{ (input_hvac_mode == 'cool' and sensor_temp <= temperature) or 
    (input_hvac_mode == 'heat' and sensor_temp >= temperature) }}
- action: climate.set_hvac_mode
  data:
    hvac_mode: fan_only
  target:
    entity_id: climate.YOUR_AC

//EDIT: You could also add this as a custom condition:

condition: template
value_template: |-
    {{ (input_hvac_mode == 'cool' and sensor_temp > temperature) or 
    (input_hvac_mode == 'heat' and sensor_temp < temperature) }}

This should block unwanted resets.

Iā€™m sorry to report that it does not work for me

Proximity set at 8000m, it does not trigger when drive around at work, thatā€™s perfect.

But when driving home, the comfort mode was only triggered when arriving home.

Can you help in debugging? (Pictures are almost the same as above, only change is the change to 8000 in distance)

Dear panhans!
Thank you for the excellent Blueprint. I am happy to see how much it has developed since last year when I used it. Now it is time to heat our home again, and I started to use the latest version.
My TRVs tend to react quite slowly, so I decided to enable the aggressive mode. It works flawlessly. However, I was a bit disappointed to find that I have to disable the ā€œPhysical Temperature Changeā€ option since the aggressive mode also changes the set temperature. I was wondering if it would be possible for the aggressive mode to adjust the temperature offset instead of the target temperature if I have a ā€œtemperature calibration sensorā€ set. That way the aggressive mode and the physical temperature change options could be enabled at the same time. What do you think?
Anyway, I highly appreciate your work. Thank you very much for sharing this blueprint with the community! :slight_smile:

1 Like

Hey, I pushed a fix for proximity but there was only an issue if you use proximity only. Maybe you could share a screenshot of the history graph of your proximity sensor when youā€™re on the way home. It could be that this feature needs a little bit more tuning since I doesnā€™t use it for my own.

Heating is only triggerd if youā€™re in the radius and the state of one device tracker is towards for the selected duration. If the state changes for the same duration comfort heating getā€™s disabled again. May be this is not the best logic.

1 Like

Good point! Never had this idea before. But I donā€™t know how suitable this is. I would add an checkbox for enabling this because some calibration entities only allow max Ā±2-5Ā°C. There is not much space for the aggressive mode offset in much cases.

1 Like