Closed ronaldt80 closed 10 months ago
I agree on the weight, that would be a nice feature for those who have very different radiators.
For the second part, I think you should be able to fix this problem by using a proxy entity, this is for example my configuration:
climate:
- platform: generic_thermostat
unique_id: studio_fixed
name: Studio Fixed
heater: input_boolean.studio_thermostat
target_sensor: sensor.termoigrometro_studio_temperature
min_temp: 5
max_temp: 25
ac_mode: false
target_temp: 17
cold_tolerance: 0
hot_tolerance: 0
initial_hvac_mode: "heat"
precision: 0.1
target_temp_step: 0.5
away_temp: 18
comfort_temp: 21
home_temp: 19
sleep_temp: 17.5
[... other generic thermostats for each room ...]
where
input_boolean.studio_thermostat
is the entity of a HA boolean helper
sensor.termoigrometro_studio_temperature
is the entity id of the external temperature sensor
Then you would use climate.studio_fixed
as a secondary SAT climate entity.
Obviously you'll need an automation of some sort in order to open and close the single valve when the generic_thermostat starts or stops heating, something like this:
alias: TRV Studio
description: ""
trigger:
- platform: state
entity_id:
- climate.studio_fixed
attribute: hvac_action
condition: []
action:
- if:
- condition: and
conditions:
- condition: state
entity_id: climate.studio_fixed
attribute: hvac_action
state: idle
- condition: numeric_state
entity_id: climate.studio
attribute: temperature
above: 12
then:
- service: climate.set_temperature
data:
temperature: 12
target:
entity_id: climate.studio
else:
- if:
- condition: and
conditions:
- condition: state
entity_id: climate.studio_fixed
attribute: hvac_action
state: heating
- condition: numeric_state
entity_id: climate.studio
attribute: temperature
below: 25
then:
- service: climate.set_temperature
data:
temperature: 25
target:
entity_id: climate.studio
mode: single
where climate.studio_fixed
is the proxy entity and climate.studio
is the real radiator valve climate entity.
We rely on the climates itself for them to make adjustments. So if one room doesn't need heating it should close. SAT is not build to work with Generic Thermostats, unless you can make the valve open a certain percentage based on the error value.
No radiator valve can be set to "open up to xx%" as mush as I know, some can be fed with external temperature, very few of them, mine (tado) can't for example. I use that automation to open 100% or close 0% based on the generic thermostat, that is based itself on an external temperature sensor. I could also apply a simple formula, to account for the difference between the the valve current temperature and external sensor one, instead of telling them to fully open or close, but tado valves have their own PID algorithm baked in that would disrupt SAT calculations.
Are you saying that this is not a clever idea? :D
Most of them have an internal PID that handles it, including TADO. The way you describe it you are messing that up.
But you are doing that because of the unreliable internal temperature sensor (since it basically on top of the radiator)?
For me that was one of the requirements when I was looking for smart TRVs. So I bought these that support overriding it: https://www.aqara.com/eu/product/radiator-thermostat-e1/
But again, adding features like that goes against the logic of a smart TRV and also add to much responsibility to SAT since he already his own climate. It almost sounds like a seperate project.
Yes, I don't want to add this feature to SAT, that would totally be out of scope. I was just suggesting ronaldt80 how to overcome the issue he's having without spending again 50+€ for every radiator valve.
Is it maybe not better to just use an offset with TADO?
Unfortunately not because too many factors can affect the temperature sensor of the valve, the most important one being the radiator temperature. So you would have to change the offset everytime the radiator temperature changes, also tado valves recalibrate themself everytime the offset is changed, let's say at least a 10 times a day if you're lucky. This means battery will lasts for a few days instead of a few months, and god are they loud when calibrating, I hate when I hear them moving for a split second during the night, image having to hear a full 2-3 seconds of that stupidly loud noise while sleeping...
Is my understanding correct that the error level related to the highest gap between room temp and target temp? Is it an idea to assign a weight to each room? For instance, my office has one small radiator, whilst the living room consist of 4 rather large ones. They now seem to be treated equally.
Also, would it be an option to allocate a third party temperature sensor? It is my experience that the built in sensor is way off. For instance, a zigbee sensor which is paired to the climate entity?