reduce temp syncs
This commit is contained in:
@@ -224,6 +224,20 @@ variables:
|
||||
{% else %}
|
||||
false
|
||||
{% endif %}
|
||||
is_sensor_sync_needed: >
|
||||
{% set current_remote = state_attr(trv, device_class ~ '_temperature') | default(state_attr(remote_temperature_entity, 'state'), none) | float(0) %}
|
||||
{% set new_sensor = states(temperature_sensor) | float(0) %}
|
||||
{% set target = safe_temperature | float(0) %}
|
||||
{% set diff = (new_sensor - current_remote) | abs %}
|
||||
{% if diff >= 0.5 %}
|
||||
true
|
||||
{% elif new_sensor < target and current_remote >= target %}
|
||||
true
|
||||
{% elif new_sensor > target and current_remote <= target %}
|
||||
true
|
||||
{% else %}
|
||||
false
|
||||
{% endif %}
|
||||
scheduler_mismatch: >
|
||||
{% set selected_friendly_name = states(active_scheduler_selector) %}
|
||||
{% if selected_friendly_name not in ['unknown', '', none] %}
|
||||
@@ -391,6 +405,8 @@ actions:
|
||||
- condition: template
|
||||
value_template: >
|
||||
{{ temperature_sensor is defined and states(temperature_sensor) | is_number }}
|
||||
- condition: template
|
||||
value_template: "{{ is_sensor_sync_needed }}"
|
||||
sequence:
|
||||
- service: number.set_value
|
||||
data:
|
||||
@@ -407,14 +423,14 @@ actions:
|
||||
{{ temperature_sensor is defined and states(temperature_sensor) | is_number }}
|
||||
- condition: template
|
||||
value_template: >
|
||||
{{ (now() - states[temperature_sensor].last_changed).total_seconds() > 1199 }}
|
||||
{{ (now() - states[temperature_sensor].last_changed).total_seconds() > 1499 }}
|
||||
sequence:
|
||||
- service: number.set_value
|
||||
data:
|
||||
value: "{{ states(temperature_sensor) | float }}"
|
||||
target:
|
||||
entity_id: "{{ remote_temperature_entity }}"
|
||||
alias: Synchronisiere Temperatur am TRV (zeitbasiert, wenn länger als 20min unverändert)
|
||||
alias: Synchronisiere Temperatur am TRV (zeitbasiert, wenn länger als 25min unverändert)
|
||||
alias: Temperatursynchronisation
|
||||
# setze Solltemperatur bei Schedule und Alarm-Status-Änderungen
|
||||
- choose:
|
||||
|
||||
Reference in New Issue
Block a user