Compare commits
7 Commits
b3126d5cc7
...
34c7cc90b9
| Author | SHA1 | Date | |
|---|---|---|---|
| 34c7cc90b9 | |||
| 49263eb1ca | |||
| 0ca8f4a97d | |||
| 1b6d967d80 | |||
| acb4c180ad | |||
| cd2053c999 | |||
| 16b721814b |
@@ -24,6 +24,14 @@ blueprint:
|
||||
filter:
|
||||
- domain: sensor
|
||||
device_class: temperature
|
||||
heating_period_switch:
|
||||
name: Heizperiode Switch
|
||||
description: Optional - Input Boolean der angibt ob Heizperiode aktiv ist. Wenn nicht gesetzt, ist die Heizperiode immer aktiv.
|
||||
selector:
|
||||
entity:
|
||||
multiple: false
|
||||
filter:
|
||||
- domain: input_boolean
|
||||
window_section:
|
||||
name: Fenster-/Türsensor Konfiguration
|
||||
description: Konfiguration für den Fenster-/Türsensor.
|
||||
@@ -80,7 +88,6 @@ blueprint:
|
||||
alarm_control_panel:
|
||||
name: Alarm Control Panel
|
||||
description: Optional - Alarm Control Panel um Heizung abzusenken, wenn Alarm im Abwesendmodus ist
|
||||
default: null
|
||||
selector:
|
||||
entity:
|
||||
multiple: false
|
||||
@@ -101,9 +108,16 @@ blueprint:
|
||||
variables:
|
||||
trv: !input trv
|
||||
temperature_sensor: !input temperature_sensor
|
||||
heating_period_switch: !input heating_period_switch
|
||||
radiator_schedules: !input radiator_schedules
|
||||
away_temperature: !input away_temperature
|
||||
alarm_control_panel: !input alarm_control_panel
|
||||
is_heating_period: >
|
||||
{% if heating_period_switch is none or heating_period_switch == '' %}
|
||||
true
|
||||
{% else %}
|
||||
{{ is_state(heating_period_switch, 'on') }}
|
||||
{% endif %}
|
||||
remote_temperature_entity: >
|
||||
{% set entities = device_entities(device_id(trv)) %}
|
||||
{% set remote_temperature_entity_id = namespace(id='') %}
|
||||
@@ -163,8 +177,8 @@ triggers:
|
||||
for: !input window_delay_close
|
||||
id: FENSTER_CLOSED
|
||||
- platform: time_pattern
|
||||
# Synce Temperatur alle 20 Minuten (Teiler von 60)
|
||||
minutes: "/20"
|
||||
# Synce Temperatur alle 5 Minuten (Teiler von 60)
|
||||
minutes: "/5"
|
||||
id: SYNC_TEMPERATURE
|
||||
- platform: state
|
||||
entity_id: !input temperature_sensor
|
||||
@@ -178,8 +192,75 @@ triggers:
|
||||
from: "armed_away"
|
||||
to: "disarmed"
|
||||
id: ALARM_DISARMED_AWAY
|
||||
- platform: state
|
||||
entity_id: !input heating_period_switch
|
||||
to: "on"
|
||||
id: HEATING_PERIOD_ON
|
||||
- platform: state
|
||||
entity_id: !input heating_period_switch
|
||||
to: "off"
|
||||
id: HEATING_PERIOD_OFF
|
||||
|
||||
actions:
|
||||
- choose:
|
||||
# Heizperiode Switch Aktionen
|
||||
- conditions:
|
||||
- condition: trigger
|
||||
id:
|
||||
- HEATING_PERIOD_ON
|
||||
- HEATING_PERIOD_OFF
|
||||
sequence:
|
||||
- choose:
|
||||
- conditions:
|
||||
- condition: trigger
|
||||
id:
|
||||
- HEATING_PERIOD_ON
|
||||
sequence:
|
||||
- service: climate.set_hvac_mode
|
||||
target:
|
||||
entity_id: !input trv
|
||||
data:
|
||||
hvac_mode: "heat"
|
||||
- if:
|
||||
- condition: state
|
||||
entity_id: !input window_sensor
|
||||
state: "on"
|
||||
then:
|
||||
- service: switch.turn_on
|
||||
target:
|
||||
entity_id: "{{ window_detection_entity }}"
|
||||
- if:
|
||||
- condition: template
|
||||
value_template: >
|
||||
{{ target_temperature is not none and target_temperature | is_number }}
|
||||
then:
|
||||
- service: climate.set_temperature
|
||||
target:
|
||||
entity_id: !input trv
|
||||
data:
|
||||
temperature: "{{ target_temperature | float }}"
|
||||
alias: Heizperiode aktiviert - Setze Modus auf heat, synchronisiere Fensterstatus und Solltemperatur
|
||||
- conditions:
|
||||
- condition: trigger
|
||||
id:
|
||||
- HEATING_PERIOD_OFF
|
||||
sequence:
|
||||
- service: switch.turn_off
|
||||
target:
|
||||
entity_id: "{{ window_detection_entity }}"
|
||||
- service: climate.set_hvac_mode
|
||||
target:
|
||||
entity_id: !input trv
|
||||
data:
|
||||
hvac_mode: "off"
|
||||
alias: Heizperiode deaktiviert - Setze Fenster geschlossen und Modus auf off
|
||||
alias: Heizperiode Switch Änderung
|
||||
alias: Heizperiode Switch Aktionen
|
||||
# Alle bestehenden Aktionen nur ausführen wenn Heizperiode aktiv ist
|
||||
- conditions:
|
||||
- condition: template
|
||||
value_template: "{{ is_heating_period }}"
|
||||
sequence:
|
||||
# setze Fenster auf offen/geschlossen
|
||||
- choose:
|
||||
- conditions:
|
||||
@@ -271,3 +352,5 @@ actions:
|
||||
temperature: "{{ target_temperature | float }}"
|
||||
alias: Setze Solltemperatur basierend auf Alarm-Status
|
||||
alias: Solltemperatur setzen
|
||||
alias: Aktionen während Heizperiode
|
||||
alias: Hauptsteuerung
|
||||
Reference in New Issue
Block a user