Automatisation périodique "coincée" sans raison apparente

Bon tu m’as fait réfléchir et du coup j’ai refait entièrement mon automatisation…

le code de l'automatisation principale
alias: Gestion automatique du chauffage - v2.0
description: >-
  Lorsque l'etat d'un booléen: Auto - override - scheduler - tarif rouge change

  Si on est en saison de chauffage, en mode auto et sans override temporaire. 
  - Désactivation temporaire de la detection de changement de la PAC (overide
  temporaire)
  - Réglage automatique du chauffage en fonction du planning et du tarif:
    -  Chauffe à la temperature de consigne si planifié, sinon PAC off. 
    -  Si tarif rouge => PAC off.
  - ECAM pour le debug.

triggers:
  - trigger: state
    entity_id:
      - input_boolean.chauffage_mode_auto
      - input_boolean.pac_override_temporaire
      - input_boolean.saison_chauffage
      - schedule.planning_chauffage
      - input_boolean.tarif_rouge

conditions:
  - condition: state
    entity_id: input_boolean.chauffage_mode_auto
    state: "on"
    alias: Le chauffage est en mode AUTO
  - condition: state
    entity_id: input_boolean.saison_chauffage
    state: "on"
    alias: La saison est en mode Chauffage (mode hiver)
  - condition: state
    entity_id: input_boolean.pac_override_temporaire
    state: "off"
    alias: L'override temporaire n'est pas activé

actions:
  - action: input_boolean.turn_on
    alias: Désactivation de la detection de changement manuel de la PAC
    metadata: {}
    data: {}
    target:
      entity_id: input_boolean.pac_detect_inhib
  - alias: Réglage auto du chauffage en fonction du tarif
    choose:
      - conditions:
          - condition: state
            entity_id: input_boolean.tarif_rouge
            state: "off"
        sequence:
          - alias: test du scheduler
            choose:
              - conditions:
                  - condition: state
                    entity_id: schedule.planning_chauffage
                    state: "on"
                sequence:
                  - device_id: 5b89093e82e42fe555148e26a107faba
                    domain: climate
                    entity_id: fe8907573739d862acee9459abe1c731
                    type: set_hvac_mode
                    hvac_mode: heat
                  - data:
                      temperature: >-
                        {{states('input_number.temperature_confort_hiver')|int
                        }}
                    target:
                      entity_id: climate.pac
                    action: climate.set_temperature
                  - action: script.ecam_publish
                    metadata: {}
                    data:
                      message: "PAC: Chaud auto"
                alias: >-
                  planning Chauffage => allumer PAC en chauffage et régler la
                  temperature
              - conditions:
                  - condition: state
                    entity_id: schedule.planning_chauffage
                    state: "off"
                sequence:
                  - device_id: 5b89093e82e42fe555148e26a107faba
                    domain: climate
                    entity_id: fe8907573739d862acee9459abe1c731
                    type: set_hvac_mode
                    hvac_mode: "off"
                  - action: script.ecam_publish
                    metadata: {}
                    data:
                      message: "PAC: Auto Off"
                alias: planning OFF => éteindre la PAC
              - conditions: []
                sequence:
                  - action: script.ecam_publish
                    metadata: {}
                    data:
                      message: Etat scheduler inconnu
        alias: >-
          Tarif rouge est Désactivé => régler le chauffage en fonction du
          planning
      - conditions:
          - condition: state
            entity_id: input_boolean.tarif_rouge
            state: "on"
        sequence:
          - device_id: 5b89093e82e42fe555148e26a107faba
            domain: climate
            entity_id: climate.pac
            type: set_hvac_mode
            hvac_mode: "off"
          - action: script.ecam_publish
            metadata: {}
            data:
              message: "PAC: Auto Rouge "
        alias: Tarif Rouge est activé => éteindre la PAC
      - conditions: []
        sequence:
          - action: script.ecam_publish
            metadata: {}
            data:
              message: Etat Tarif inconnu
    enabled: true
  - delay:
      hours: 0
      minutes: 0
      seconds: 5
      milliseconds: 0
  - action: input_boolean.turn_off
    alias: Réactivation de la detection de changement manuel de la PAC
    metadata: {}
    data: {}
    target:
      entity_id: input_boolean.pac_detect_inhib
mode: restart
trace:
  stored_traces: 50


le code de l'automatisation qui détecte les inputs manuels

On passe alors en mode « override temporaire » pour 30 min max.

alias: Detection changement PAC
description: >-
  Lorsque la PAC change de mode, de temperature cible ou de mode de
  ventilation. 


  Si la detection n'est pas inhibée


  On passe en mode manuel temporaire (override temp), on publie un ECAM et on
  lance le timer pour 30min
triggers:
  - trigger: state
    entity_id:
      - climate.pac
    to: null
  - trigger: state
    entity_id:
      - climate.pac
    attribute: temperature
  - trigger: state
    entity_id:
      - climate.pac
    attribute: fan_mode
conditions:
  - condition: state
    entity_id: input_boolean.pac_detect_inhib
    state:
      - "off"
actions:
  - action: input_boolean.turn_on
    metadata: {}
    data: {}
    target:
      entity_id: input_boolean.pac_override_temporaire
  - action: script.ecam_publish
    metadata: {}
    data:
      message: "PAC: Manuel Ponctuel"
  - action: timer.start
    metadata: {}
    data:
      duration: "1800"
    target:
      entity_id: timer.minuteur_pac
mode: single



J’ai ajouté un nouveau booléen pour inhiber la detection de changement de mode / temperature / ventilation de la PAC lorsque c’est l’automatisation qui gère et je fais la même chose dans les scripts qui sont exposés à Alexa.

Les différents appel au script ecam_publish me permettent d’avoir des log perso qui me servent pour l’instant au debug… J’avais décrit comment j’utilise ce truc là dans mon fil de présentation

Pour l’instant ça tourne…

Je n’ai pas encore « rénové » l’automatisation de gestion de la clim, mais ce sera le même principe…


Bon tout ça n’explique pas le blocage observé l’autre jour…

Histoire de tenter de bétonner le truc, j’ai ajouté une condition toujours vraie dans les choose relatif au tarif tempo et au mode du scheduler histoire de ne pas coincer dans ces tests:


Je suis pas sûr que ça suffise à eviter un bug mais bon…

1 « J'aime »