Ich wollte das Thema auch hier in diesem schönen Forum kurz anbringen.
Ich habe mir für jeden Raum eine Automatisierung angelegt, wo ich die Zeiten und
Soll/Set-Temperaturen für eine Woche festlege.
Die Temperaturen und Zeiten habe ich flexibel mit helper gelöst.
Soweit funktioniert das auch. Ich habe nur aktuell noch ein Problem, dass mir
irgendwann die Set/Soll Temperaturen der Heizkörper Thermostate alle auf 0 Grad  stehen   
 
Ich kann noch nicht nachvollziehen wie und wann das passiert.
Habt ihr ein Vorschläge wie ich das eingrenzen kann oder vllt. seht ihr am Code schon, wo mein Fehler liegt.
Code: Alles auswählen
alias: HEIZUNG Anne Heizplan
description: Set thermostat for Heat
trigger:
  - id: schedule
    platform: time
    at:
      - input_datetime.anne_sp1_wk
      - input_datetime.anne_sp2_wk
      - input_datetime.anne_sp3_wk
      - input_datetime.anne_sp4_wk
      - input_datetime.anne_sp5_wk
      - input_datetime.anne_sp1_wknd
      - input_datetime.anne_sp2_wknd
      - input_datetime.anne_sp3_wknd
      - input_datetime.anne_sp4_wknd
      - input_datetime.anne_sp5_wknd
  - id: override
    platform: state
    entity_id: input_boolean.heizsaison
    to: "on"
    for: "00:00:30"
  - id: disable
    platform: state
    entity_id: input_boolean.heizsaison
    to: "off"
    for: "00:00:30"
condition: []
action:
  - choose:
      - conditions:
          - "{{ trigger.id != 'disable' }}"
          - "{{ is_state('input_boolean.heizsaison', 'on') }}"
        sequence:
          - service: climate.set_temperature
            target:
              entity_id: climate.anne
            data:
              temperature: |-
                {% if now().isoweekday() in [1,2,3,4,5] %}
                  {% if (now().hour == state_attr('input_datetime.anne_sp1_wk', 'hour') and now().minute == state_attr('input_datetime.anne_sp1_wk', 'minute'))  %}
                    {{ states('input_number.anne_t1_wk')|float(default=0) }}
                  {% elif (now().hour == state_attr('input_datetime.anne_sp2_wk', 'hour') and now().minute == state_attr('input_datetime.anne_sp2_wk', 'minute'))  %}
                    {{ states('input_number.anne_t2_wk')|float(default=0) }}
                  {% elif (now().hour == state_attr('input_datetime.anne_sp3_wk', 'hour') and now().minute == state_attr('input_datetime.anne_sp3_wk', 'minute'))  %}
                    {{ states('input_number.anne_t3_wk')|float(default=0) }}
                  {% elif (now().hour == state_attr('input_datetime.anne_sp4_wk', 'hour') and now().minute == state_attr('input_datetime.anne_sp4_wk', 'minute'))  %}
                    {{ states('input_number.anne_t4_wk')|float(default=0) }}
                  {% elif (now().hour == state_attr('input_datetime.anne_sp5_wk', 'hour') and now().minute == state_attr('input_datetime.anne_sp5_wk', 'minute'))  %}
                    {{ states('input_number.anne_t5_wk')|float(default=0) }}
                  {% else %}
                    0
                  {% endif %}
                {% else %}
                  {% if (now().hour == state_attr('input_datetime.anne_sp1_wknd', 'hour') and now().minute == state_attr('input_datetime.anne_sp1_wknd', 'minute'))  %}
                    {{ states('input_number.anne_t1_wknd')|float(default=0) }}
                  {% elif (now().hour == state_attr('input_datetime.anne_sp2_wknd', 'hour') and now().minute == state_attr('input_datetime.anne_sp2_wknd', 'minute'))  %}
                    {{ states('input_number.anne_t2_wknd')|float(default=0) }}
                  {% elif (now().hour == state_attr('input_datetime.anne_sp3_wknd', 'hour') and now().minute == state_attr('input_datetime.anne_sp3_wknd', 'minute'))  %}
                    {{ states('input_number.anne_t3_wknd')|float(default=0) }}
                  {% elif (now().hour == state_attr('input_datetime.anne_sp4_wknd', 'hour') and now().minute == state_attr('input_datetime.anne_sp4_wknd', 'minute'))  %}
                    {{ states('input_number.anne_t4_wknd')|float(default=0) }}
                  {% elif (now().hour == state_attr('input_datetime.anne_sp5_wknd', 'hour') and now().minute == state_attr('input_datetime.anne_sp5_wknd', 'minute'))  %}
                    {{ states('input_number.anne_t5_wknd')|float(default=0) }}
                  {% else %}a
                    0
                  {% endif %}
                {% endif %}
      - conditions:
          - "{{ trigger.id == 'disable' }}"
        sequence:
          - service: climate.turn_off
            target:
              entity_id: climate.anne
            data:
              hvac_mode: "off"
    default: []
mode: single



