Sonoff TRVZB - Completely unusable
Unclezz opened this issue ยท 19 comments
Prerequisites
- Model name of your Devices
Sonoff TRVZB
- Output from Home Assistant Developer Tools state e.g.
hvac_modes:
- "off"
- auto
- heat
min_temp: 4
max_temp: 35
target_temp_step: 0.5
current_temperature: 29.5
temperature: 7
hvac_action: idle
friendly_name: STUDIO
supported_features: 385
- Output from Home Assistant Device Diagnostic from BT
{
"home_assistant": {
"installation_type": "Home Assistant OS",
"version": "2024.7.3",
"dev": false,
"hassio": true,
"virtualenv": false,
"python_version": "3.12.4",
"docker": true,
"arch": "x86_64",
"timezone": "Europe/Prague",
"os_name": "Linux",
"os_version": "6.6.33-haos",
"supervisor": "2024.06.2",
"host_os": "Home Assistant OS 12.4",
"docker_version": "26.1.4",
"chassis": "vm",
"run_as_root": true
},
"custom_components": {
"hacs": {
"documentation": "https://hacs.xyz/docs/configuration/start",
"version": "1.34.0",
"requirements": [
"aiogithubapi>=22.10.1"
]
},
"climate_group": {
"documentation": "https://github.com/bjrnptrsn/climate_group",
"version": "1.0.5",
"requirements": []
},
"better_thermostat": {
"documentation": "https://github.com/KartoffelToby/better_thermostat",
"version": "1.6.0",
"requirements": []
}
},
"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.6.0",
"is_built_in": false
},
"setup_times": {
"null": {
"setup": 3.3059000998036936e-05
},
"01J2YBS89FPYEQR6T18HHJ99EB": {
"wait_import_platforms": -0.2178014900018752,
"config_entry_setup": 0.23754824899879168
},
"01J2YBWHST3QN4VM5XPDR6BPBE": {
"wait_import_platforms": -0.23677958999905968,
"config_entry_setup": 0.24055728299936163
},
"01J2YCF571SNC6E6AA9BREH2MR": {
"wait_import_platforms": -0.24055505800060928,
"config_entry_setup": 0.2434038020001026
},
"01J2YCMEE7QGXDG8XH2NX13XJN": {
"wait_import_platforms": -0.24341603699940606,
"config_entry_setup": 0.24594085100034135
},
"01J3AK3F5W542VVYFVSJJJHEDN": {
"wait_import_platforms": -0.24593188099970575,
"config_entry_setup": 0.24832524500016007
},
"01J3AMDRH68AQ811X0NF17B62V": {
"wait_import_platforms": -0.24832179200166138,
"config_entry_setup": 0.2507489820018236
}
},
"data": {
"info": {
"name": "Studio_Heating",
"temperature_sensor": "sensor.tempstudio_temperature",
"off_temperature": 15,
"tolerance": 0.0,
"target_temp_step": 0.0,
"humidity_sensor": "sensor.tempstudio_humidity",
"weather": "weather.forecast_home",
"window_sensors": null,
"outdoor_sensor": null,
"cooler": null,
"window_off_delay": 0,
"window_off_delay_after": 0,
"model": "TRVZB"
},
"thermostat": {
"climate.trv_studio": {
"name": "STUDIO",
"state": "off",
"attributes": {
"hvac_modes": [
"off",
"auto",
"heat"
],
"min_temp": 4.0,
"max_temp": 35.0,
"target_temp_step": 0.5,
"current_temperature": 29.5,
"temperature": 7.0,
"hvac_action": "idle",
"friendly_name": "STUDIO",
"supported_features": 385
},
"bt_config": {
"calibration": "target_temp_based",
"calibration_mode": "heating_power_calibration",
"protect_overheating": true,
"no_off_system_mode": false,
"heat_auto_swapped": false,
"child_lock": false,
"homaticip": false
},
"bt_adapter": "mqtt",
"bt_integration": "mqtt",
"model": "TRVZB"
}
},
"external_temperature_sensor": {
"entity_id": "sensor.tempstudio_temperature",
"state": "28.7",
"attributes": {
"state_class": "measurement",
"unit_of_measurement": "\u00b0C",
"device_class": "temperature",
"friendly_name": "TempStudio Temperature"
},
"last_changed": "2024-07-23T15:58:38.398683+00:00",
"last_reported": "2024-07-23T15:58:38.398683+00:00",
"last_updated": "2024-07-23T15:58:38.398683+00:00",
"context": {
"id": "01J3G51V9Y8NB3RC76PWWX8DNP",
"parent_id": null,
"user_id": null
}
},
"window_sensor": "-"
}
}
Description
Every time you try to control a Sonoff Valve through BT, the valve goes offline and reset its state. On the valve LED you always read OF.
If you try to change value on the valve, the same is not reflected in BT or anywhere else. Then the valve goes again to OF.
Steps to Reproduce
Simply use BT to realize what described above.
Expected behavior:
Valve to react on BT input and viceversa.
Actual behavior:
Every time you try to control a Sonoff Valve through BT, the valve goes offline and reset its state. On the valve LED you always read OF.
If you try to change value on the valve, the same is not reflected in BT or anywhere else. Then the valve goes again to OF.
Versions
HA:
Core 2024.7.3
Supervisor 2024.06.2
Operating System 12.4
Frontend 20240710.0
BT: 1.6.0
Additional Information
If you remove BT the valves are working perfectly with the standard HA climate control.
Attaching the debug from BT on the same valve. You will notice that one other sensor initiallyu configured has values out of range. I can confirm that this is not the issue. I reconfigured the valve in BT without taking the values from that sensor but taking them directly from the valve itself. Unfortunately the valve has the same behavior described in the bug opening.
What resonates to me is the error "ERROR (Recorder) [homeassistant] Error doing job: Task was destroyed but it is pending! (<Task pending name='Task-93145' coro=<control_queue() running at /config/custom_components/better_thermostat/utils/controlling.py:47> wait_for=>)
2024-07-23 18:04:13.909 ERROR (MainThread) [homeassistant.components.mqtt.number] Invalid value for number.tempstudio_temperature_periodic_report: 120 (range 0.0 - 100.0)
2024-07-23 18:04:13.909 ERROR (MainThread) [homeassistant.components.mqtt.number] Invalid value for number.tempstudio_humidity_periodic_report: 120 (range 0.0 - 100.0)
2024-07-23 18:04:14.109 ERROR (MainThread) [homeassistant.components.mqtt.number] Invalid value for number.tempstudio_temperature_periodic_report: 120 (range 0.0 - 100.0)
2024-07-23 18:04:14.109 ERROR (MainThread) [homeassistant.components.mqtt.number] Invalid value for number.tempstudio_humidity_periodic_report: 120 (range 0.0 - 100.0)
2024-07-23 18:29:25.105 ERROR (MainThread) [custom_components.better_thermostat.utils.helpers] better_thermostat None: climate.trv_studio HVAC mode auto is not supported by this device, is it possible that you forgot to set the heat auto swapped option?
2024-07-23 18:51:01.509 DEBUG (MainThread) [custom_components.better_thermostat.adapters.delegate] better_thermostat None: uses adapter mqtt for trv climate.trv_studio
2024-07-23 18:51:01.511 INFO (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: Waiting for entity to be ready...
2024-07-23 18:51:01.513 INFO (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: Starting version 1.6.0. Waiting for entity to be ready...
2024-07-23 18:51:01.513 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: Startup config, BT hvac mode is heat, Target temp 34.0
2024-07-23 18:51:01.514 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 34.5 | external_temp: 28.7, target_temp: 34.0, trv_temp: 29.5
2024-07-23 18:51:03.346 ERROR (Recorder) [homeassistant] Error doing job: Task was destroyed but it is pending! (<Task pending name='Task-93145' coro=<control_queue() running at /config/custom_components/better_thermostat/utils/controlling.py:47> wait_for=<Future pending cb=[Task.task_wakeup()]>>)
2024-07-23 18:51:04.516 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: get last avg outdoor temps...
2024-07-23 18:51:09.524 INFO (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: startup completed.
2024-07-23 18:51:09.557 DEBUG (MainThread) [custom_components.better_thermostat.adapters.delegate] better_thermostat -: uses adapter mqtt for trv climate.trv_studio
2024-07-23 18:51:09.557 DEBUG (MainThread) [custom_components.better_thermostat.utils.helpers] better thermostat: Found local calibration entity number.trv_studio_local_temperature_calibration for climate.trv_studio
2024-07-23 18:51:09.558 DEBUG (MainThread) [custom_components.better_thermostat.utils.helpers] better thermostat: Could not find valve position entity for climate.trv_studio
2024-07-23 18:51:15.808 DEBUG (MainThread) [custom_components.better_thermostat.config_flow] Updated config: {'name': 'Studio_Heating', 'thermostat': [{'trv': 'climate.trv_studio', 'integration': 'mqtt', 'model': 'TRVZB', 'adapter': None, 'advanced': {'calibration': 'target_temp_based', 'calibration_mode': 'heating_power_calibration', 'protect_overheating': True, 'no_off_system_mode': False, 'heat_auto_swapped': False, 'child_lock': True, 'homaticip': False}}], 'temperature_sensor': 'sensor.tempstudio_temperature', 'off_temperature': 15, 'tolerance': 0.0, 'target_temp_step': 0.0, 'humidity_sensor': 'sensor.tempstudio_humidity', 'weather': 'weather.forecast_home', 'window_sensors': None, 'outdoor_sensor': None, 'cooler': None, 'window_off_delay': 0, 'window_off_delay_after': 0, 'model': 'TRVZB'}
2024-07-23 18:51:15.811 DEBUG (MainThread) [custom_components.better_thermostat.adapters.delegate] better_thermostat None: uses adapter mqtt for trv climate.trv_studio
2024-07-23 18:51:15.813 INFO (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: Waiting for entity to be ready...
2024-07-23 18:51:15.814 DEBUG (MainThread) [custom_components.better_thermostat.adapters.delegate] better_thermostat None: uses adapter mqtt for trv climate.trv_studio
2024-07-23 18:51:15.818 INFO (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: Waiting for entity to be ready...
2024-07-23 18:51:15.818 INFO (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: Starting version 1.6.0. Waiting for entity to be ready...
2024-07-23 18:51:15.819 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: Undefined target temperature, falling back to 7.0
2024-07-23 18:51:15.819 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: No previously hvac mode found on startup, turn bt to trv mode off
2024-07-23 18:51:15.819 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: Startup config, BT hvac mode is off, Target temp 7.0
2024-07-23 18:51:15.819 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 4.0 | external_temp: 28.7, target_temp: 7.0, trv_temp: 29.5
2024-07-23 18:51:15.819 INFO (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: Starting version 1.6.0. Waiting for entity to be ready...
2024-07-23 18:51:15.819 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: Undefined target temperature, falling back to 7.0
2024-07-23 18:51:15.819 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: No previously hvac mode found on startup, turn bt to trv mode off
2024-07-23 18:51:15.819 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: Startup config, BT hvac mode is off, Target temp 7.0
2024-07-23 18:51:15.819 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 4.0 | external_temp: 28.7, target_temp: 7.0, trv_temp: 29.5
2024-07-23 18:51:18.821 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: get last avg outdoor temps...
2024-07-23 18:51:18.823 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: get last avg outdoor temps...
2024-07-23 18:51:22.031 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: HA set target temperature to 32.5 & None
2024-07-23 18:51:22.036 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 33.0 | external_temp: 28.7, target_temp: 32.5, trv_temp: 29.5
2024-07-23 18:51:23.073 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: HA set target temperature to 34.0 & None
2024-07-23 18:51:23.829 INFO (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: startup completed.
2024-07-23 18:51:25.038 DEBUG (MainThread) [custom_components.better_thermostat.utils.helpers] better_thermostat None: climate.trv_studio / heating_power_valve_position - temp diff: 5.3 - heating power: 0.01 - expected valve position: 100%
2024-07-23 18:51:25.038 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 35.0 | external_temp: 28.7, target_temp: 34.0, trv_temp: 29.5
2024-07-23 18:51:28.040 DEBUG (MainThread) [custom_components.better_thermostat.utils.helpers] better_thermostat None: climate.trv_studio / heating_power_valve_position - temp diff: 5.3 - heating power: 0.01 - expected valve position: 100%
2024-07-23 18:51:28.041 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 35.0 | external_temp: 28.7, target_temp: 34.0, trv_temp: 29.5
2024-07-23 18:51:37.376 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: trigger_trv_change test / _old_heating_setpoint: 7.0 - _new_heating_setpoint: 7.0 - _last_temperature: 7.0
2024-07-23 18:51:37.478 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: trigger_trv_change test / _old_heating_setpoint: 7.0 - _new_heating_setpoint: 7.5 - _last_temperature: 7.0
2024-07-23 18:51:39.627 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: trigger_trv_change test / _old_heating_setpoint: 7.5 - _new_heating_setpoint: 20.0 - _last_temperature: 7.0
2024-07-23 18:52:03.176 ERROR (MainThread) [homeassistant.components.mqtt.number] Invalid value for number.tempstudio_temperature_periodic_report: 120 (range 0.0 - 100.0)
2024-07-23 18:52:03.176 ERROR (MainThread) [homeassistant.components.mqtt.number] Invalid value for number.tempstudio_humidity_periodic_report: 120 (range 0.0 - 100.0)
2024-07-23 18:52:03.383 ERROR (MainThread) [homeassistant.components.mqtt.number] Invalid value for number.tempstudio_temperature_periodic_report: 120 (range 0.0 - 100.0)
2024-07-23 18:52:03.383 ERROR (MainThread) [homeassistant.components.mqtt.number] Invalid value for number.tempstudio_humidity_periodic_report: 120 (range 0.0 - 100.0)
2024-07-23 18:52:03.476 ERROR (MainThread) [homeassistant.components.mqtt.number] Invalid value for number.tempstudio_temperature_periodic_report: 120 (range 0.0 - 100.0)
2024-07-23 18:52:03.477 ERROR (MainThread) [homeassistant.components.mqtt.number] Invalid value for number.tempstudio_humidity_periodic_report: 120 (range 0.0 - 100.0)
<<..>>
2024-07-23 18:52:04.926 DEBUG (MainThread) [custom_components.better_thermostat.events.temperature] better_thermostat None: external_temperature changed from 28.7 to 29.0
2024-07-23 18:52:04.927 DEBUG (MainThread) [custom_components.better_thermostat.utils.helpers] better_thermostat None: climate.trv_studio / heating_power_valve_position - temp diff: 5.0 - heating power: 0.01 - expected valve position: 100%
2024-07-23 18:52:04.927 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 35.0 | external_temp: 29.0, target_temp: 34.0, trv_temp: 29.5
2024-07-23 18:52:04.927 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat None: TO TRV set_hvac_mode: climate.trv_studio from: heat to: off
2024-07-23 18:52:04.927 DEBUG (MainThread) [custom_components.better_thermostat.adapters.generic] better_thermostat None: set_hvac_mode off
2024-07-23 18:52:05.175 ERROR (MainThread) [homeassistant.components.mqtt.number] Invalid value for number.tempstudio_temperature_periodic_report: 120 (range 0.0 - 100.0)
2024-07-23 18:52:05.175 ERROR (MainThread) [homeassistant.components.mqtt.number] Invalid value for number.tempstudio_humidity_periodic_report: 120 (range 0.0 - 100.0)
2024-07-23 18:54:53.374 ERROR (MainThread) [homeassistant] Error doing job: Task was destroyed but it is pending! (<Task pending name='Task-93253' coro=<control_queue() running at /config/custom_components/better_thermostat/utils/controlling.py:47> wait_for=<Future pending cb=[Task.task_wakeup()]>>)
2024-07-23 18:54:53.375 ERROR (MainThread) [homeassistant] Error doing job: Task was destroyed but it is pending! (<Task pending name='Task-93250' coro=<control_queue() running at /config/custom_components/better_thermostat/utils/controlling.py:47> wait_for=<Future pending cb=[Task.task_wakeup()]>>)
2024-07-23 18:54:53.375 ERROR (MainThread) [homeassistant] Error doing job: Task was destroyed but it is pending! (<Task pending name='Task-93392' coro=<control_queue() running at /config/custom_components/better_thermostat/utils/controlling.py:47> wait_for=<Future pending cb=[Task.task_wakeup()]>>)
2024-07-23 18:55:06.631 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 35.0 | external_temp: 0.2, target_temp: 31.5, trv_temp: 29.5
2024-07-23 18:55:10.917 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: HA set target temperature to 7.5 & None
2024-07-23 18:55:10.922 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 35.0 | external_temp: 0.2, target_temp: 7.5, trv_temp: 29.5
2024-07-23 18:55:13.717 DEBUG (MainThread) [custom_components.better_thermostat.climate] better_thermostat Studio_Heating: HA set target temperature to 35.0 & None
2024-07-23 18:55:13.923 DEBUG (MainThread) [custom_components.better_thermostat.utils.helpers] better_thermostat None: climate.trv_studio / heating_power_valve_position - temp diff: 34.8 - heating power: 0.01 - expected valve position: 100%
2024-07-23 18:55:13.924 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 35.0 | external_temp: 0.2, target_temp: 35.0, trv_temp: 29.5
2024-07-23 18:55:16.926 DEBUG (MainThread) [custom_components.better_thermostat.utils.helpers] better_thermostat None: climate.trv_studio / heating_power_valve_position - temp diff: 34.8 - heating power: 0.01 - expected valve position: 100%
2024-07-23 18:55:16.926 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 35.0 | external_temp: 0.2, target_temp: 35.0, trv_temp: 29.5
2024-07-23 18:55:22.776 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: TRV climate.trv_studio decoded TRV mode changed from off to heat - converted heat
2024-07-23 18:55:22.777 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: trigger_trv_change test / _old_heating_setpoint: 6.5 - _new_heating_setpoint: 27.0 - _last_temperature: 7.0
2024-07-23 18:55:22.777 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: TRV climate.trv_studio decoded TRV target temp changed from 35.0 to 27.0
2024-07-23 18:55:22.778 DEBUG (MainThread) [custom_components.better_thermostat.utils.helpers] better_thermostat None: climate.trv_studio / heating_power_valve_position - temp diff: 26.8 - heating power: 0.01 - expected valve position: 100%
2024-07-23 18:55:22.778 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 35.0 | external_temp: 0.2, target_temp: 27.0, trv_temp: 29.5
2024-07-23 18:55:22.778 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat None: TO TRV set_hvac_mode: climate.trv_studio from: heat to: off
2024-07-23 18:55:22.778 DEBUG (MainThread) [custom_components.better_thermostat.adapters.generic] better_thermostat None: set_hvac_mode off
2024-07-23 18:55:29.725 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: trigger_trv_change test / _old_heating_setpoint: 7.0 - _new_heating_setpoint: 20.5 - _last_temperature: 7.0
2024-07-23 18:55:44.725 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: trigger_trv_change test / _old_heating_setpoint: 20.5 - _new_heating_setpoint: 23.0 - _last_temperature: 7.0
2024-07-23 18:55:47.978 ERROR (MainThread) [custom_components.better_thermostat.utils.helpers] better_thermostat None: climate.trv_studio HVAC mode auto is not supported by this device, is it possible that you forgot to set the heat auto swapped option?
2024-07-23 18:55:47.978 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: TRV climate.trv_studio decoded TRV mode changed from heat to auto - converted auto
2024-07-23 18:55:47.978 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: trigger_trv_change test / _old_heating_setpoint: 23.0 - _new_heating_setpoint: 23.0 - _last_temperature: 7.0
2024-07-23 18:55:47.979 DEBUG (MainThread) [custom_components.better_thermostat.utils.helpers] better_thermostat None: climate.trv_studio / heating_power_valve_position - temp diff: 26.8 - heating power: 0.01 - expected valve position: 100%
2024-07-23 18:55:47.979 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 35.0 | external_temp: 0.2, target_temp: 27.0, trv_temp: 29.5
2024-07-23 18:55:47.979 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat None: TO TRV set_hvac_mode: climate.trv_studio from: auto to: off
2024-07-23 18:55:47.979 DEBUG (MainThread) [custom_components.better_thermostat.adapters.generic] better_thermostat None: set_hvac_mode off
2024-07-23 18:55:54.929 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: TRV climate.trv_studio decoded TRV mode changed from auto to heat - converted heat
2024-07-23 18:55:54.929 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: trigger_trv_change test / _old_heating_setpoint: 6.0 - _new_heating_setpoint: 35.0 - _last_temperature: 7.0
2024-07-23 18:55:54.930 DEBUG (MainThread) [custom_components.better_thermostat.utils.helpers] better_thermostat None: climate.trv_studio / heating_power_valve_position - temp diff: 26.8 - heating power: 0.01 - expected valve position: 100%
2024-07-23 18:55:54.930 DEBUG (MainThread) [custom_components.better_thermostat.calibration] better_thermostat None: climate.trv_studio - new setpoint calibration: 35.0 | external_temp: 0.2, target_temp: 27.0, trv_temp: 29.5
2024-07-23 18:55:54.930 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat None: TO TRV set_hvac_mode: climate.trv_studio from: heat to: off
2024-07-23 18:55:54.930 DEBUG (MainThread) [custom_components.better_thermostat.adapters.generic] better_thermostat None: set_hvac_mode off
2024-07-23 18:56:00.628 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: TRV climate.trv_studio sends new internal temperature from 29.5 to 29.6
2024-07-23 18:56:03.779 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: trigger_trv_change test / _old_heating_setpoint: 19.0 - _new_heating_setpoint: 19.0 - _last_temperature: 7.0
2024-07-23 18:56:03.880 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: trigger_trv_change test / _old_heating_setpoint: 19.0 - _new_heating_setpoint: 14.5 - _last_temperature: 7.0
2024-07-23 18:56:07.378 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat None: trigger_trv_change test / _old_heating_setpoint: 14.5 - _new_heating_setpoint: 29.0 - _last_temperature: 7.0
Same issue with my HA instance (2024.8.3) and at my daughter's house one.
BT completely unusable.
Rollback to 1.5.1 BT version didn't solve the issue.
I can not confirm this, everything is going as usual with me.
I just tested it
Test should be done in the same situation, is it the case?
For me, I have the Sonoff TRVZB with firmware 1.1.5 (21/03/2024) paired under Z2MQTT 1.40.0, updated today but same issue with prior version of Z2MQTT.
HA: Core 2024.8.3 - Supervisor 2024.08.0 - Operating System 13.1 - Interface utilisateur 20240809.0
HACS 2.0
my only solution for now to solve this anoying issue has been to swap to another integration (Versatile Thermostat)
I suspect the issue happens specifically with sonoff latest 1.1.5 firmware. But I have no evidence for this.
thanks @msd3287 for sharing about the alternative thermostat integration. I will give it a try!
So far I configured everything to use Advanced thermostat Blueprint automation but with no flexibility using the default thermostat management ๐
Cannot confirm this. Actual HA, BT and Firmware.
I can confirm this on 1.1.5. I have 2 TVRZBs in one BT, and turning the dial on the TVRs does not change the setting in BT. Also it does not update the other TVR as I would expect since they are somehow grouped by BT.
As already written, I don't have this problem. However, I do not use the integrated schedule. In my case, the sensor in the HA shows unknown.
Disabling the TRV schedules is pretty much mandatory as they break a string field length limit that neither MQTT nor HA people can agree on whose fault it is, HA used to just move on and leave it as unknown, but recently started throwing errors instead which causes the device to reset
@Unclezz - it looks like it's trying to set the temperature of the TRV to 120 degrees, which is causing errors, as it's a bounded value in MQTT, are you working in C or F?
@Unclezz - it looks like it's trying to set the temperature of the TRV to 120 degrees, which is causing errors, as it's a bounded value in MQTT, are you working in C or F?
Thanks for looking into this one. Disabling the schedules did not help.
I am working in C
Same issue here.
I can confirm that the value of the thermostat changes in the mqtt entity but BT doesnt seem to notice that. It is as if the "connection" between the actual thermostat and BT is lost even though the actual thermostats state is reflected perfectly fine in HA. Deleting the BT device and recreating it does not make a difference.
Schedule sensor already deleted btw and confirmed that BT is working with other thermostat (Bosch also via MQTT)
Tested on BT 1.6, HA Core 2024.10.1
I am having the same issue on HA Core 2024.10.2, and BT 1.6 and with Zigbee2MQTT
This happend with the sonos TRV on 1.1.1 and on 1.1.5 via OTA update.
As others reported, the "default" thermostat in Home assistant works fine
UPDATE
This issue still persists on HA CORE 2024.10.4, BT 1.6.1, SONOF TRV 1.2.1
Is there any way to add relevant debugging info on this?
Same here, but @SuperDeathMonkey Workaround to deactivate the "schedule" entity works fine with all my 8 TRVZB
Same here, disabling schedule workaround does not work for me.
It looks to me that BT used its own internal schedule to check for the default temperature and set the TRVs temp to the set (in BT config) default temp.
small update on my side.
Disabling the schedule entity in HomeAssistant MQTT didn't work for me and BT was still doing what's described in this bug.
I manually updated the schedule in zigbee2mqtt to remove what was being reported and that actually solved the issue for me.
Not sure how/why but worth trying for others like me that were stuck before.
@ardoviniandrea So you just edited/change the existing default schedule in Z2M?
Exactly, and it looks like it's working for now
I also kept disabled the schedule entity in HomeAssistant (that didn't really change anything before)