This custom component for Home Assistant will add crucial features to your climate-controlling TRV (Thermostatic Radiator Valves) to save you the work of creating automations to make it smart. It combines a room-temperature sensor, window/door sensors, weather forecasts, or an ambient temperature probe to decide when it should call for heat and automatically calibrate your TRVs to fix the imprecise measurements taken in the radiator's vicinity.
I have 5 TuYa TS0601 thermostats in 4 rooms. Last year after some trial and error they worked flawlessly with these settings:
This year, after deleting and re-adding the BT integrations, I cannot get them to function properly.
BT is connected with the TRVs and it seems to control them, but somehow they are always keeping the temperature at ~20.5°C. Here is an example of the last 3 days where I've been away and had them set to 17,5 (the dip is me opening the windows to let fresh air in. after that, I have not been in the house):
BT-graph:
TRV graph:
As you can see, the BT graph does not show heating, but somehow it changes the target temperature of the TRV to keep the temperature at 20°.
Expected behavior:
Keep temperature at the desired level or keep the valve closed when BT is turned off.
Actual behavior:
Irregardless of the temperature setting it keeps the room at 20.5°. Even if BT is turned off.
Versions
HA: 2023.12.4
BT: 1.4.0
Additional Information
Things I have tried that did not fix it:
delete and re-add the BT integrations multiple times.
change the calibration to offset-based.
turn off the "swap heat/auto" option
changing the "comfort temperature" setting in the TRV to 15°C
Did anyone encounter this? Is it a bug or am I messing something up?
Where does it even take the 20.5 from? There is no value in Z2M or BT that is set to 20.5.
Prerequisites
Developer Tools state
```yaml hvac_modes: - heat - "off" min_temp: 5 max_temp: 35 target_temp_step: 0.5 current_temperature: 19.7 temperature: 17.5 hvac_action: idle window_open: false call_for_heat: true last_change: "2023-12-27T14:53:40.053773" saved_temperature: null humidity: 56.1 main_mode: heat tolerance: 0 heating_power: 0.01 errors: "[]" batteries: >- {"sensor.temperatursensor_buero_temperature": {"battery": "100", "battery_id": "sensor.temperatursensor_buero_battery"}, "sensor.temperatursensor_buero_humidity": {"battery": "100", "battery_id": "sensor.temperatursensor_buero_battery"}, "binary_sensor.fenstersensor_buero_tuer_contact": {"battery": "off", "battery_id": "binary_sensor.fenstersensor_buero_tuer_battery_low"}, "climate.thermostat_buero": {"battery": "off", "battery_id": "binary_sensor.thermostat_buero_battery_low"}} friendly_name: Heizung Buero supported_features: 1 ```Device Diagnostics
```json { "home_assistant": { "installation_type": "Home Assistant OS", "version": "2023.12.4", "dev": false, "hassio": true, "virtualenv": false, "python_version": "3.11.6", "docker": true, "arch": "x86_64", "timezone": "Europe/Berlin", "os_name": "Linux", "os_version": "6.1.63-haos", "supervisor": "2023.12.0", "host_os": "Home Assistant OS 11.2", "docker_version": "24.0.7", "chassis": "vm", "run_as_root": true }, "custom_components": { "linkplay": { "version": "3.1.8", "requirements": [ "async-upnp-client>=0.27", "validators~=0.12", "chardet>=4.0.0" ] }, "better_thermostat": { "version": "1.4.0", "requirements": [] }, "hacs": { "version": "1.33.0", "requirements": [ "aiogithubapi>=22.10.1" ] }, "dwd_pollenflug": { "version": "1.0.2", "requirements": [ "pytz" ] } }, "integration_manifest": { "domain": "better_thermostat", "name": "Better Thermostat", "after_dependencies": [ "climate" ], "codeowners": [ "@kartoffeltoby" ], "config_flow": true, "dependencies": [ "climate", "recorder" ], "documentation": "https://github.com/KartoffelToby/better_thermostat", "iot_class": "local_push", "issue_tracker": "https://github.com/KartoffelToby/better_thermostat/issues", "requirements": [], "version": "1.4.0", "is_built_in": false }, "data": { "info": { "name": "Heizung Buero", "temperature_sensor": "sensor.temperatursensor_buero_temperature", "off_temperature": 17, "tolerance": 0.0, "humidity_sensor": "sensor.temperatursensor_buero_humidity", "outdoor_sensor": "sensor.temperatursensor_draussen_temperature", "window_sensors": "binary_sensor.fenstersensor_buero_tuer_contact", "weather": "weather.forecast_home", "window_off_delay": 10, "window_off_delay_after": 60, "cooler": null, "model": "TS0601_thermostat" }, "thermostat": { "climate.thermostat_buero": { "name": "Thermostat Buero", "state": "auto", "attributes": { "hvac_modes": [ "heat", "auto", "off" ], "min_temp": 5.0, "max_temp": 35.0, "target_temp_step": 0.5, "preset_modes": [ "none", "schedule", "manual", "boost", "complex", "comfort", "eco", "away" ], "current_temperature": 29.5, "temperature": 5.5, "hvac_action": "idle", "preset_mode": "manual", "friendly_name": "Thermostat Buero", "supported_features": 17 }, "bt_config": { "calibration": "target_temp_based", "calibration_mode": "heating_power_calibration", "protect_overheating": true, "no_off_system_mode": false, "heat_auto_swapped": true, "valve_maintenance": false, "child_lock": true, "homaticip": false }, "bt_adapter": "mqtt", "bt_integration": "mqtt", "model": "TS0601_thermostat" } }, "external_temperature_sensor": { "entity_id": "sensor.temperatursensor_buero_temperature", "state": "19.7", "attributes": { "state_class": "measurement", "unit_of_measurement": "\u00b0C", "device_class": "temperature", "friendly_name": "Temperatursensor Buero Temperatur" }, "last_changed": "2023-12-27T15:20:03.291774+00:00", "last_updated": "2023-12-27T15:20:03.291774+00:00", "context": { "id": "01HJNXRZEVRSX519T89Z77QFBW", "parent_id": null, "user_id": null } }, "window_sensor": { "entity_id": "binary_sensor.fenstersensor_buero_tuer_contact", "state": "off", "attributes": { "device_class": "door", "friendly_name": "Fenstersensor Buero Tuer T\u00fcr" }, "last_changed": "2023-12-27T13:37:22.348635+00:00", "last_updated": "2023-12-27T13:37:22.348635+00:00", "context": { "id": "01HJNQWYXC4D2BR354SNXVYDY7", "parent_id": null, "user_id": null } } } } ```Description
I have 5 TuYa TS0601 thermostats in 4 rooms. Last year after some trial and error they worked flawlessly with these settings:
This year, after deleting and re-adding the BT integrations, I cannot get them to function properly. BT is connected with the TRVs and it seems to control them, but somehow they are always keeping the temperature at ~20.5°C. Here is an example of the last 3 days where I've been away and had them set to 17,5 (the dip is me opening the windows to let fresh air in. after that, I have not been in the house):
BT-graph:
TRV graph:
As you can see, the BT graph does not show heating, but somehow it changes the target temperature of the TRV to keep the temperature at 20°.
Expected behavior:
Keep temperature at the desired level or keep the valve closed when BT is turned off.
Actual behavior:
Irregardless of the temperature setting it keeps the room at 20.5°. Even if BT is turned off.
Versions
HA: 2023.12.4 BT: 1.4.0
Additional Information
Things I have tried that did not fix it:
Did anyone encounter this? Is it a bug or am I messing something up? Where does it even take the 20.5 from? There is no value in Z2M or BT that is set to 20.5.