versatile_thermostat: Endless loop created by turning VTherm with multiple climate devices on and off very quickly
Version of the custom_component
5.2.0
Configuration
My VTherm attributes are the following:
hvac_modes: off, heat
min_temp: 7
max_temp: 25
target_temp_step: 0.5
preset_modes: none, frost, eco, comfort, boost
current_temperature: 22.8
temperature: 20.5
hvac_action: idle
preset_mode: none
is_on: true
hvac_mode: heat
type: null
is_controlled_by_central_mode: true
last_central_mode: null
frost_temp: 5
eco_temp: 20
boost_temp: 22
comfort_temp: 21.5
frost_away_temp: 7
eco_away_temp: 7
boost_away_temp: 7
comfort_away_temp: 7
power_temp: null
target_temperature_step: 0.5
ext_current_temperature: 0.35
ac_mode: false
current_power: null
current_power_max: null
saved_preset_mode: eco
saved_target_temp: 21.5
saved_hvac_mode: null
window_state: off
motion_state: null
overpowering_state: null
presence_state: null
window_auto_state: off
window_bypass_state: false
security_delay_min: 60
security_min_on_percent: 0.5
security_default_on_percent: 0.1
last_temperature_datetime: 2024-01-11T15:30:07.562536+01:00
last_ext_temperature_datetime: 2024-01-11T15:30:55.620098+01:00
security_state: false
minimal_activation_delay_sec: 10
device_power: 1
mean_cycle_power: null
total_energy: 146.75
last_update_datetime: 2024-01-11T15:30:55.629160+01:00
timezone: Europe/Berlin
window_sensor_entity_id: null
window_delay_sec: null
window_auto_enabled: false
window_auto_open_threshold: null
window_auto_close_threshold: null
window_auto_max_duration: null
motion_sensor_entity_id: null
presence_sensor_entity_id: null
power_sensor_entity_id: null
max_power_sensor_entity_id: null
temperature_unit: °C
is_device_active: false
ema_temp: 22.74
is_over_climate: true
start_hvac_action_date: null
underlying_climate_0: climate.thermostat_wohnzimmer_fenster_links
underlying_climate_1: climate.thermostat_wohnzimmer_fenster_rechts
underlying_climate_2: climate.thermostat_wohnzimmer_mitte
underlying_climate_3: null
is_regulated: true
regulated_target_temperature: 20.5
auto_regulation_mode: auto_regulation_light
regulation_accumulated_error: -10
auto_fan_mode: auto_fan_none
current_auto_fan_mode: auto_fan_none
auto_activated_fan_mode: null
auto_deactivated_fan_mode: null
friendly_name: V Thermostat Wohnzimmer
supported_features: 17
Describe the bug
If a VTherm controlling multiple climate devices is turned on (hvac_mode heat) and off (hvac_mode off) again very quickly, it enters an endless loop turning itself on and off all the time and also sending endless on/off commands to the underlying climate devices.
I’m trying to: Turn off the VTherm immediately after I turned it on accidently.
And I expect: The VTherm must stay in in the state I set it to, in this case off.
But I observe this … And endless loop of the VTherm turning itself on then off again. The only solution is then to deactivate it, wait until the command storm disappears (restarting zigbee2mqtt and mosquito might have helped as well) and then activate it again.
My idea for a solution would be
- either debounce hvac_mode change requests (this might already be done, I’m not sure), like only one change per 30s
- or be more careful in deriving the VTherm state from the underlying devices. If e.g. some are off and some are on then keep your current assumed state and try again in 30s or so, do nothing else. If after some timeout the underlying devices are still in differing states, then make your assumed state the new reality and send hvac_mode commands to the underlying devices.
And finally: never blast out commands without throttling! There really should be a failsafe, so if the VTherm finds itself sending out commands way too quickly, then it should just deactivate itself.
I read the documentation on the README.md file and I don’t find any relevant information about this issue.
Debug log
logger:
default: info
logs:
custom_components.versatile_thermostat: info
2024-01-11 06:33:16.031 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Set hvac mode: heat
2024-01-11 06:33:16.032 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:16.032 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Calling ThermostatClimate._send_regulated_temperature force=False
2024-01-11 06:33:16.032 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - regulation calculation will be done
2024-01-11 06:33:16.033 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Regulated temp have changed to 23.0. Resend it to underlyings
2024-01-11 06:33:16.034 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Sending event EventType.HVAC_MODE_EVENT with data: {'hvac_mode': <HVACMode.HEAT: 'heat'>}
2024-01-11 06:33:16.073 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:16.073 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - underlying event is received less than 10 sec after command. Forget it to avoid loop
2024-01-11 06:33:16.087 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Set preset_mode: comfort force=False
2024-01-11 06:33:16.087 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:16.088 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Calling ThermostatClimate._send_regulated_temperature force=False
2024-01-11 06:33:16.088 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - period (0.0) min is < 5 min -> forget the regulation send
2024-01-11 06:33:16.591 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:16.591 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - underlying event is received less than 10 sec after command. Forget it to avoid loop
2024-01-11 06:33:16.664 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:16.665 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - underlying event is received less than 10 sec after command. Forget it to avoid loop
2024-01-11 06:33:17.093 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:17.093 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - underlying event is received less than 10 sec after command. Forget it to avoid loop
2024-01-11 06:33:17.102 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:17.102 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - underlying event is received less than 10 sec after command. Forget it to avoid loop
2024-01-11 06:33:17.170 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:17.170 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - underlying event is received less than 10 sec after command. Forget it to avoid loop
2024-01-11 06:33:17.598 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:17.599 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - underlying event is received less than 10 sec after command. Forget it to avoid loop
2024-01-11 06:33:17.608 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:17.608 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - underlying event is received less than 10 sec after command. Forget it to avoid loop
2024-01-11 06:33:17.741 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Set hvac mode: off
2024-01-11 06:33:17.742 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:17.743 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Sending event EventType.HVAC_MODE_EVENT with data: {'hvac_mode': <HVACMode.OFF: 'off'>}
2024-01-11 06:33:19.402 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:19.404 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:28.916 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:28.918 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:35.710 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=off, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:35.712 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:35.713 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Calling ThermostatClimate._send_regulated_temperature force=False
2024-01-11 06:33:35.713 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - period (0.3) min is < 5 min -> forget the regulation send
2024-01-11 06:33:36.129 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:37.696 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:37.698 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:38.212 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=off, new_hv
ac_action=heating, old_hvac_action=idle
2024-01-11 06:33:38.212 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - underlying just switch ON. Set power and energy start date 2024-01-11T06:33:38.208431+01:00
2024-01-11 06:33:38.215 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:38.216 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Calling ThermostatClimate._send_regulated_temperature force=False
2024-01-11 06:33:38.217 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - period (0.4) min is < 5 min -> forget the regulation send
2024-01-11 06:33:38.230 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=heat, new_hv
ac_action=idle, old_hvac_action=idle
2024-01-11 06:33:38.232 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:38.757 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=off, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:38.760 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:38.761 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Calling ThermostatClimate._send_regulated_temperature force=False
2024-01-11 06:33:38.761 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - period (0.4) min is < 5 min -> forget the regulation send
2024-01-11 06:33:39.755 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_h
vac_action=idle, old_hvac_action=idle
2024-01-11 06:33:40.263 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:40.265 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:41.295 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=off, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:41.522 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=off, new_hv
ac_action=heating, old_hvac_action=idle
2024-01-11 06:33:41.522 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - underlying just switch ON. Set power and energy start date 2024-01-11T06:33:41.520104+01:00
2024-01-11 06:33:41.524 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:41.525 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Calling ThermostatClimate._send_regulated_temperature force=False
2024-01-11 06:33:41.525 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - period (0.4) min is < 5 min -> forget the regulation send
2024-01-11 06:33:41.798 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:42.837 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:43.332 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:43.334 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:44.365 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=off, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:44.869 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=off, new_hv
ac_action=idle, old_hvac_action=idle
2024-01-11 06:33:44.870 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:44.872 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Calling ThermostatClimate._send_regulated_temperature force=False
2024-01-11 06:33:44.872 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - period (0.5) min is < 5 min -> forget the regulation send
2024-01-11 06:33:45.133 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_hvac_action=heating, old_hvac_action=heating
2024-01-11 06:33:45.907 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_h
vac_action=idle, old_hvac_action=idle
2024-01-11 06:33:46.414 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:46.416 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:47.444 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=off, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:47.953 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=off, new_hv
ac_action=idle, old_hvac_action=idle
2024-01-11 06:33:47.955 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:47.955 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Calling ThermostatClimate._send_regulated_temperature force=False
2024-01-11 06:33:47.955 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - period (0.5) min is < 5 min -> forget the regulation send
2024-01-11 06:33:48.834 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=heat, new_hvac_action=heating, old_hvac_action=heating
2024-01-11 06:33:48.836 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:48.975 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=off, new_hv
ac_action=idle, old_hvac_action=idle
2024-01-11 06:33:48.977 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:48.978 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Calling ThermostatClimate._send_regulated_temperature force=False
2024-01-11 06:33:48.978 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - period (0.5) min is < 5 min -> forget the regulation send
2024-01-11 06:33:49.328 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=heat, new_hvac_action=heating, old_hvac_action=heating
2024-01-11 06:33:49.330 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:49.486 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=off, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:49.841 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=off, new_hvac_action=heating, old_hvac_action=heating
2024-01-11 06:33:49.843 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:49.844 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Calling ThermostatClimate._send_regulated_temperature force=False
2024-01-11 06:33:49.844 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - period (0.6) min is < 5 min -> forget the regulation send
2024-01-11 06:33:50.528 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=heat, new_hv
ac_action=idle, old_hvac_action=idle
2024-01-11 06:33:50.530 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:51.021 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=off, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:51.023 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled2024-01-11 06:33:51.024 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Calling ThermostatClimate._send_regulated_temperature force=False
2024-01-11 06:33:51.024 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - period (0.6) min is < 5 min -> forget the regulation send
2024-01-11 06:33:52.043 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_h
vac_action=idle, old_hvac_action=idle
2024-01-11 06:33:52.551 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:52.553 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:52.866 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=off, new_hvac_action=heating, old_hvac_action=heating
2024-01-11 06:33:52.867 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:52.868 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Calling ThermostatClimate._send_regulated_temperature force=False
2024-01-11 06:33:52.868 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - period (0.6) min is < 5 min -> forget the regulation send
2024-01-11 06:33:53.577 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is off, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:53.580 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:54.084 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=off, new_hvac_action=idle, old_hvac_action=idle
2024-01-11 06:33:54.087 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-V Thermostat Wohnzimmer - Window auto event is ignored because bypass is ON or window auto detection is disabled
2024-01-11 06:33:54.088 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Calling ThermostatClimate._send_regulated_temperature force=False
2024-01-11 06:33:54.088 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - period (0.6) min is < 5 min -> forget the regulation send
2024-01-11 06:33:55.131 INFO (MainThread) [custom_components.versatile_thermostat.thermostat_climate] VersatileThermostat-V Thermostat Wohnzimmer - Underlying climate changed. Event.new_hvac_mode is heat, current_hvac_mode=heat, new_hvac_action=idle, old_hvac_action=idle
[skipped many more lines like that]
About this issue
- Original URL
- State: closed
- Created 6 months ago
- Comments: 19 (12 by maintainers)
Commits related to this issue
- Try to fix issue #334 - loop when underlying is late to update — committed to jmcollin78/versatile_thermostat by deleted user 6 months ago
Sure, you can add me as reviewer!
I have a major enhancement running (central boiler control) and then I will release hopefully next week. Keep you beta until the release.
I was able to trigger your new failsafe by switching the VTherm wildly between heat and off, so everything worked very well! After this the underlying thermostats are not in sync, but this is perfectly fine as it is the expected behaviour. It’s very easy to fix this via the app.
Your code change is very nice as well, if we were in the same team and I were to do the code review, I would merge it without further discussion. 😃
5.2.1 have been released this week-end. It should definitively be available now.
Yes. There is full unitary tests framework you can have a look. It is in the dir /tests. If you want to start slowy, try to look at
test_start.py
which is basic start of VTherm with mocks.Mocks are in the tests/commons.py.
Of course the first thing you have to do is to fork/clone the repo on the main branch, start devcontainer and run all the tests with the test explorator:
All should be green before you start something.
Feel free to ask more questions if needed.