Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create a disabled state so that heater will not been accessed in any case by Vtherm #884

Open
jmcollin78 opened this issue Feb 2, 2025 · 0 comments
Labels
enhancement New feature or request need PR Interesting improvements that could be easily done with a PR.

Comments

@jmcollin78
Copy link
Owner

Discussed in #869

Originally posted by adi90x January 20, 2025
Hello,

J'ai un fonctionnement un peu bizzare du vtherm, lorsqu'il est passé manuellement en hvac = off , si il y a un changement de température externe il semble oublié qu'il est forcé en off et il recalcul automatiquement l'ensemble des paramètres.

Dans mon cas, j'utilise un script pour forcer le chauffage pendant un laps de temps défini, le script bascule le climate hvac en off , allume un switch puis éteint le switch et remet le hvac en auto. Depuis quelques temps, lorsque le capteur température extérieur reçoit une update ( je n'ai pas fait le test avec le capteur température de la pièce ) , le radiateur est repassé en off par le vtherm.

Logs ci dessous :

2025-01-20 13:46:00.233 INFO (MainThread) [homeassistant.components.script.switch_on_for_a_moment] Switch on for a moment: Running script sequence
2025-01-20 13:46:00.234 INFO (MainThread) [homeassistant.components.script.switch_on_for_a_moment] Switch on for a moment: Executing step Switch off HVAC
2025-01-20 13:46:00.235 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-Thermostat SdB - Set hvac mode: off
2025-01-20 13:46:00.236 INFO (MainThread) [custom_components.versatile_thermostat.base_thermostat] %s - already in OFF. Change the reason to MANUAL and erase the saved_havc_mode
2025-01-20 13:46:00.236 DEBUG (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-Thermostat SdB - last_change_time is now 2025-01-20 14:46:00.236212+01:00
2025-01-20 13:46:00.238 DEBUG (MainThread) [custom_components.versatile_thermostat.thermostat_switch] VersatileThermostat-Thermostat SdB - Calling update_custom_attributes: {'is_on': False, 'hvac_action': <HVACAction.OFF: 'off'>, 'hvac_mode': 'off', 'preset_mode': 'eco', 'type': None, 'is_controlled_by_central_mode': True, 'last_central_mode': None, 'frost_temp': 9.5, 'eco_temp': 15.0, 'boost_temp': 20.0, 'comfort_temp': 18.0, 'frost_away_temp': 0, 'eco_away_temp': 0, 'boost_away_temp': 0, 'comfort_away_temp': 0, 'target_temperature_step': 0.1, 'ext_current_temperature': 3.95, 'ac_mode': False, 'saved_preset_mode': 'eco', 'saved_target_temp': 15.0, 'saved_hvac_mode': <HVACMode.OFF: 'off'>, 'last_temperature_datetime': '2025-01-20T14:34:41.726875+01:00', 'last_ext_temperature_datetime': '2025-01-20T14:43:28.057098+01:00', 'minimal_activation_delay_sec': 10, 'total_energy': 2.67, 'last_update_datetime': '2025-01-20T14:46:00.236581+01:00', 'timezone': 'Europe/Paris', 'temperature_unit': <UnitOfTemperature.CELSIUS: '°C'>, 'is_device_active': False, 'device_actives': [], 'nb_device_actives': 0, 'ema_temp': 18.09, 'is_used_by_central_boiler': False, 'temperature_slope': 0, 'hvac_off_reason': 'manual', 'max_on_percent': None, 'have_valve_regulation': False, 'last_change_time_from_vtherm': '2025-01-20T14:46:00.236212+01:00', 'presence_sensor_entity_id': None, 'presence_state': 'unavailable', 'is_presence_configured': False, 'power_sensor_entity_id': None, 'max_power_sensor_entity_id': None, 'overpowering_state': 'unavailable', 'is_power_configured': False, 'device_power': 1.0, 'power_temp': None, 'current_power': None, 'current_max_power': None, 'mean_cycle_power': 0.0, 'motion_sensor_entity_id': None, 'motion_state': 'unavailable', 'is_motion_configured': False, 'motion_delay_sec': 0, 'motion_off_delay_sec': 0, 'motion_preset': None, 'no_motion_preset': None, 'window_state': 'on', 'window_auto_state': 'unavailable', 'window_action': 'window_frost_temp', 'is_window_bypass': False, 'window_sensor_entity_id': 'binary_sensor.porte_sdb_contact', 'window_delay_sec': 30, 'window_off_delay_sec': 30, 'is_window_configured': True, 'is_window_auto_configured': False, 'window_auto_open_threshold': 3.0, 'window_auto_close_threshold': 0.0, 'window_auto_max_duration': 30, 'is_safety_configured': True, 'safety_state': 'off', 'safety_delay_min': 60, 'safety_min_on_percent': 0.5, 'safety_default_on_percent': 0.1, 'is_over_switch': True, 'is_inversed': False, 'keep_alive_sec': 0, 'underlying_entities': ['switch.sonoff_4ch_relay_2'], 'on_percent': 0, 'power_percent': 0, 'on_time_sec': 0, 'off_time_sec': 600, 'cycle_min': 10, 'function': 'tpi', 'tpi_coef_int': 0.6, 'tpi_coef_ext': 0.01, 'calculated_on_percent': 0}
2025-01-20 13:46:00.241 INFO (MainThread) [custom_components.versatile_thermostat.const] VersatileThermostat-Thermostat SdB - Sending event EventType.HVAC_MODE_EVENT with data: {'hvac_mode': 'off'}
2025-01-20 13:46:00.245 INFO (MainThread) [homeassistant.components.script.switch_on_for_a_moment] Switch on for a moment: Executing step Switch on switch
2025-01-20 13:46:00.251 INFO (MainThread) [homeassistant.components.script.switch_on_for_a_moment] Switch on for a moment: Executing step delay 0:10:00
2025-01-20 13:46:00.265 DEBUG (MainThread) [custom_components.versatile_thermostat.thermostat_switch] VersatileThermostat-Thermostat SdB - Calling update_custom_attributes: {'is_on': False, 'hvac_action': <HVACAction.OFF: 'off'>, 'hvac_mode': 'off', 'preset_mode': 'eco', 'type': None, 'is_controlled_by_central_mode': True, 'last_central_mode': None, 'frost_temp': 9.5, 'eco_temp': 15.0, 'boost_temp': 20.0, 'comfort_temp': 18.0, 'frost_away_temp': 0, 'eco_away_temp': 0, 'boost_away_temp': 0, 'comfort_away_temp': 0, 'target_temperature_step': 0.1, 'ext_current_temperature': 3.95, 'ac_mode': False, 'saved_preset_mode': 'eco', 'saved_target_temp': 15.0, 'saved_hvac_mode': <HVACMode.OFF: 'off'>, 'last_temperature_datetime': '2025-01-20T14:34:41.726875+01:00', 'last_ext_temperature_datetime': '2025-01-20T14:43:28.057098+01:00', 'minimal_activation_delay_sec': 10, 'total_energy': 2.67, 'last_update_datetime': '2025-01-20T14:46:00.263458+01:00', 'timezone': 'Europe/Paris', 'temperature_unit': <UnitOfTemperature.CELSIUS: '°C'>, 'is_device_active': True, 'device_actives': ['switch.sonoff_4ch_relay_2'], 'nb_device_actives': 1, 'ema_temp': 18.09, 'is_used_by_central_boiler': False, 'temperature_slope': 0, 'hvac_off_reason': 'manual', 'max_on_percent': None, 'have_valve_regulation': False, 'last_change_time_from_vtherm': '2025-01-20T14:46:00.236212+01:00', 'presence_sensor_entity_id': None, 'presence_state': 'unavailable', 'is_presence_configured': False, 'power_sensor_entity_id': None, 'max_power_sensor_entity_id': None, 'overpowering_state': 'unavailable', 'is_power_configured': False, 'device_power': 1.0, 'power_temp': None, 'current_power': None, 'current_max_power': None, 'mean_cycle_power': 0.0, 'motion_sensor_entity_id': None, 'motion_state': 'unavailable', 'is_motion_configured': False, 'motion_delay_sec': 0, 'motion_off_delay_sec': 0, 'motion_preset': None, 'no_motion_preset': None, 'window_state': 'on', 'window_auto_state': 'unavailable', 'window_action': 'window_frost_temp', 'is_window_bypass': False, 'window_sensor_entity_id': 'binary_sensor.porte_sdb_contact', 'window_delay_sec': 30, 'window_off_delay_sec': 30, 'is_window_configured': True, 'is_window_auto_configured': False, 'window_auto_open_threshold': 3.0, 'window_auto_close_threshold': 0.0, 'window_auto_max_duration': 30, 'is_safety_configured': True, 'safety_state': 'off', 'safety_delay_min': 60, 'safety_min_on_percent': 0.5, 'safety_default_on_percent': 0.1, 'is_over_switch': True, 'is_inversed': False, 'keep_alive_sec': 0, 'underlying_entities': ['switch.sonoff_4ch_relay_2'], 'on_percent': 0, 'power_percent': 0, 'on_time_sec': 0, 'off_time_sec': 600, 'cycle_min': 10, 'function': 'tpi', 'tpi_coef_int': 0.6, 'tpi_coef_ext': 0.01, 'calculated_on_percent': 0}
2025-01-20 13:46:18.262 DEBUG (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-Thermostat SdB - external Temperature changed. Event.new_state is <state sensor.thermometre_exterieur_temperature=3.96; state_class=measurement, battery=None, humidity=68.96, linkquality=61, temperature=3.96, voltage=None, unit_of_measurement=°C, device_class=temperature, friendly_name=Thermomètre Extérieur Température @ 2025-01-20T14:46:18.259248+01:00>
2025-01-20 13:46:18.262 DEBUG (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-Thermostat SdB - After setting _last_ext_temperature_measure 2025-01-20 14:46:18.259248+01:00, state.last_changed.replace=2025-01-20 14:46:18.259248+01:00
2025-01-20 13:46:18.262 DEBUG (MainThread) [custom_components.versatile_thermostat.thermostat_switch] VersatileThermostat-Thermostat SdB - recalculate all
2025-01-20 13:46:18.262 DEBUG (MainThread) [custom_components.versatile_thermostat.prop_algorithm] Security is Off using the calculated_on_percent 0.000000
2025-01-20 13:46:18.262 DEBUG (MainThread) [custom_components.versatile_thermostat.prop_algorithm] Thermostat SdB - heating percent calculated for current_temp 18.1, ext_current_temp 4.0 and target_temp 9.5 is 0.00, on_time is 0 (sec), off_time is 600 (sec)
2025-01-20 13:46:18.263 DEBUG (MainThread) [custom_components.versatile_thermostat.thermostat_switch] VersatileThermostat-Thermostat SdB - Calling update_custom_attributes: {'is_on': False, 'hvac_action': <HVACAction.OFF: 'off'>, 'hvac_mode': 'off', 'preset_mode': 'eco', 'type': None, 'is_controlled_by_central_mode': True, 'last_central_mode': None, 'frost_temp': 9.5, 'eco_temp': 15.0, 'boost_temp': 20.0, 'comfort_temp': 18.0, 'frost_away_temp': 0, 'eco_away_temp': 0, 'boost_away_temp': 0, 'comfort_away_temp': 0, 'target_temperature_step': 0.1, 'ext_current_temperature': 3.96, 'ac_mode': False, 'saved_preset_mode': 'eco', 'saved_target_temp': 15.0, 'saved_hvac_mode': <HVACMode.OFF: 'off'>, 'last_temperature_datetime': '2025-01-20T14:34:41.726875+01:00', 'last_ext_temperature_datetime': '2025-01-20T14:46:18.259248+01:00', 'minimal_activation_delay_sec': 10, 'total_energy': 2.67, 'last_update_datetime': '2025-01-20T14:46:18.263126+01:00', 'timezone': 'Europe/Paris', 'temperature_unit': <UnitOfTemperature.CELSIUS: '°C'>, 'is_device_active': True, 'device_actives': ['switch.sonoff_4ch_relay_2'], 'nb_device_actives': 1, 'ema_temp': 18.09, 'is_used_by_central_boiler': False, 'temperature_slope': 0, 'hvac_off_reason': 'manual', 'max_on_percent': None, 'have_valve_regulation': False, 'last_change_time_from_vtherm': '2025-01-20T14:46:00.236212+01:00', 'presence_sensor_entity_id': None, 'presence_state': 'unavailable', 'is_presence_configured': False, 'power_sensor_entity_id': None, 'max_power_sensor_entity_id': None, 'overpowering_state': 'unavailable', 'is_power_configured': False, 'device_power': 1.0, 'power_temp': None, 'current_power': None, 'current_max_power': None, 'mean_cycle_power': 0.0, 'motion_sensor_entity_id': None, 'motion_state': 'unavailable', 'is_motion_configured': False, 'motion_delay_sec': 0, 'motion_off_delay_sec': 0, 'motion_preset': None, 'no_motion_preset': None, 'window_state': 'on', 'window_auto_state': 'unavailable', 'window_action': 'window_frost_temp', 'is_window_bypass': False, 'window_sensor_entity_id': 'binary_sensor.porte_sdb_contact', 'window_delay_sec': 30, 'window_off_delay_sec': 30, 'is_window_configured': True, 'is_window_auto_configured': False, 'window_auto_open_threshold': 3.0, 'window_auto_close_threshold': 0.0, 'window_auto_max_duration': 30, 'is_safety_configured': True, 'safety_state': 'off', 'safety_delay_min': 60, 'safety_min_on_percent': 0.5, 'safety_default_on_percent': 0.1, 'is_over_switch': True, 'is_inversed': False, 'keep_alive_sec': 0, 'underlying_entities': ['switch.sonoff_4ch_relay_2'], 'on_percent': 0, 'power_percent': 0, 'on_time_sec': 0, 'off_time_sec': 600, 'cycle_min': 10, 'function': 'tpi', 'tpi_coef_int': 0.6, 'tpi_coef_ext': 0.01, 'calculated_on_percent': 0}
2025-01-20 13:46:18.264 DEBUG (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-Thermostat SdB - Checking new cycle. hvac_mode=off, safety_state=off, preset_mode=eco
2025-01-20 13:46:18.264 DEBUG (MainThread) [custom_components.versatile_thermostat.feature_window_manager] WindowManager-Thermostat SdB - Window auto is on, check the alert. last slope is 0.000
2025-01-20 13:46:18.264 DEBUG (MainThread) [custom_components.versatile_thermostat.feature_window_manager] WindowManager-Thermostat SdB - Window auto event is ignored because bypass is ON or window auto detection is disabled
2025-01-20 13:46:18.264 DEBUG (MainThread) [custom_components.versatile_thermostat.feature_safety_manager] SafetyManager-Thermostat SdB - checking safety delta_temp=11.6 delta_ext_temp=0.0 mod_cond=False temp_cond=False climate_cond=False switch_cond=False
2025-01-20 13:46:18.264 DEBUG (MainThread) [custom_components.versatile_thermostat.base_thermostat] VersatileThermostat-Thermostat SdB - End of cycle (HVAC_MODE_OFF)
2025-01-20 13:46:18.264 DEBUG (MainThread) [custom_components.versatile_thermostat.underlyings] VersatileThermostat-Thermostat SdB-switch.sonoff_4ch_relay_2 - Stopping underlying entity switch.sonoff_4ch_relay_2
2025-01-20 13:46:18.288 DEBUG (MainThread) [custom_components.versatile_thermostat.thermostat_switch] VersatileThermostat-Thermostat SdB - Calling update_custom_attributes: {'is_on': False, 'hvac_action': <HVACAction.OFF: 'off'>, 'hvac_mode': 'off', 'preset_mode': 'eco', 'type': None, 'is_controlled_by_central_mode': True, 'last_central_mode': None, 'frost_temp': 9.5, 'eco_temp': 15.0, 'boost_temp': 20.0, 'comfort_temp': 18.0, 'frost_away_temp': 0, 'eco_away_temp': 0, 'boost_away_temp': 0, 'comfort_away_temp': 0, 'target_temperature_step': 0.1, 'ext_current_temperature': 3.96, 'ac_mode': False, 'saved_preset_mode': 'eco', 'saved_target_temp': 15.0, 'saved_hvac_mode': <HVACMode.OFF: 'off'>, 'last_temperature_datetime': '2025-01-20T14:34:41.726875+01:00', 'last_ext_temperature_datetime': '2025-01-20T14:46:18.259248+01:00', 'minimal_activation_delay_sec': 10, 'total_energy': 2.67, 'last_update_datetime': '2025-01-20T14:46:18.288452+01:00', 'timezone': 'Europe/Paris', 'temperature_unit': <UnitOfTemperature.CELSIUS: '°C'>, 'is_device_active': False, 'device_actives': [], 'nb_device_actives': 0, 'ema_temp': 18.09, 'is_used_by_central_boiler': False, 'temperature_slope': 0, 'hvac_off_reason': 'manual', 'max_on_percent': None, 'have_valve_regulation': False, 'last_change_time_from_vtherm': '2025-01-20T14:46:00.236212+01:00', 'presence_sensor_entity_id': None, 'presence_state': 'unavailable', 'is_presence_configured': False, 'power_sensor_entity_id': None, 'max_power_sensor_entity_id': None, 'overpowering_state': 'unavailable', 'is_power_configured': False, 'device_power': 1.0, 'power_temp': None, 'current_power': None, 'current_max_power': None, 'mean_cycle_power': 0.0, 'motion_sensor_entity_id': None, 'motion_state': 'unavailable', 'is_motion_configured': False, 'motion_delay_sec': 0, 'motion_off_delay_sec': 0, 'motion_preset': None, 'no_motion_preset': None, 'window_state': 'on', 'window_auto_state': 'unavailable', 'window_action': 'window_frost_temp', 'is_window_bypass': False, 'window_sensor_entity_id': 'binary_sensor.porte_sdb_contact', 'window_delay_sec': 30, 'window_off_delay_sec': 30, 'is_window_configured': True, 'is_window_auto_configured': False, 'window_auto_open_threshold': 3.0, 'window_auto_close_threshold': 0.0, 'window_auto_max_duration': 30, 'is_safety_configured': True, 'safety_state': 'off', 'safety_delay_min': 60, 'safety_min_on_percent': 0.5, 'safety_default_on_percent': 0.1, 'is_over_switch': True, 'is_inversed': False, 'keep_alive_sec': 0, 'underlying_entities': ['switch.sonoff_4ch_relay_2'], 'on_percent': 0, 'power_percent': 0, 'on_time_sec': 0, 'off_time_sec': 600, 'cycle_min': 10, 'function': 'tpi', 'tpi_coef_int': 0.6, 'tpi_coef_ext': 0.01, 'calculated_on_percent': 0}

Bonne journée,

@jmcollin78 jmcollin78 added wontfix This will not be worked on enhancement New feature or request need PR Interesting improvements that could be easily done with a PR. and removed wontfix This will not be worked on labels Feb 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request need PR Interesting improvements that could be easily done with a PR.
Projects
None yet
Development

No branches or pull requests

1 participant