diff --git a/Climate/bosch_bth-ra_control.yaml b/Climate/bosch_bth-ra_control.yaml index 514c902..53bd48c 100644 --- a/Climate/bosch_bth-ra_control.yaml +++ b/Climate/bosch_bth-ra_control.yaml @@ -229,7 +229,13 @@ variables: {% endif %} {{ ns.current_temperature }} target_temperature: > - {{ scheduled_temperature if scheduled_temperature != none and not (alarm_control_panel and is_state(alarm_control_panel, 'armed_away')) else away_temperature }} + {% if alarm_control_panel and is_state(alarm_control_panel, 'armed_away') %} + {{ away_temperature }} + {% elif scheduled_temperature != none %} + {{ scheduled_temperature }} + {% else %} + {{ away_temperature }} + {% endif %} safe_temperature: > {{ [min_temperature, [max_temperature, target_temperature | float(18)] | min] | max }} is_valid_temperature: > @@ -240,15 +246,9 @@ variables: {% set new_sensor_temp = states(temperature_sensor) | float(0) %} {% set target_temp = state_attr(trv, 'temperature') | float(0) %} {% set diff = (new_sensor_temp - current_remote_temperature) | abs %} - {% if diff >= sensor_sync_threshold %} - true - {% elif new_sensor_temp < target_temp and current_remote_temperature >= target_temp %} - true - {% elif new_sensor_temp > target_temp and current_remote_temperature <= target_temp %} - true - {% else %} - false - {% endif %} + {{ diff >= sensor_sync_threshold or + (new_sensor_temp < target_temp and current_remote_temperature >= target_temp) or + (new_sensor_temp > target_temp and current_remote_temperature <= target_temp) }} scheduler_mismatch: > {% set selected = states(active_scheduler_selector) %} {% if selected not in ['unknown', '', none] %}