Automatisation volet

Bonjour,

J’essaie d’automatiser l’ouverture de mes volets par une ouverture progressive à compter dune certaine heure avant le lever du soleil. J’ai écrit le code ci dessous qui ne fonctionne pas. Dans le log, l’action d’ouverture ne fonctionne pas en fonction de l’heure mais l’ouverture en fonction du soleil se met bien en route. Ai je loupé quelque chose dans mon code? Sinon comment faites vous pour une ouverture progressive. Merci bien par avance.

description: 
mode: single
trigger:
  - platform: time
    at: "06:50:00"
  - platform: sun
    event: sunrise
    offset: 0
condition: []
action:
  - choose:
      - conditions:
          - condition: time
            weekday:
              - mon
              - tue
              - wed
              - thu
              - fri
            after: "06:50:01"
            before: "06:52:00"
        sequence:
          - service: cover.set_cover_position
            data:
              position: 5
            target:
              entity_id: cover.volets_etage
          - delay:
              hours: 0
              minutes: 5
              seconds: 0
              milliseconds: 0
          - service: cover.set_cover_position
            data:
              position: 10
            target:
              entity_id: cover.volets_etage
          - delay:
              hours: 0
              minutes: 10
              seconds: 0
              milliseconds: 0
          - service: cover.set_cover_position
            data:
              position: 20
            target:
              entity_id: cover.volets_etage
      - conditions:
          - condition: state
            entity_id: sun.sun
            state: above_horizon
        sequence:
          - service: cover.open_cover
            data: {}
            target:
              entity_id: cover.tous_les_volets

Ma configuration


System Information

version core-2022.10.4
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.10.5
os_name Linux
os_version 5.15.72
arch x86_64
timezone Europe/Paris
config_dir /config
Home Assistant Community Store
GitHub API ok
GitHub Content failed to load: timeout
GitHub Web failed to load: timeout
GitHub API Calls Remaining 4841
Installed Version 1.27.2
Stage running
Available Repositories 1127
Downloaded Repositories 24
Home Assistant Cloud
logged_in false
can_reach_cert_server ok
can_reach_cloud_auth failed to load: timeout
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 9.2
update_channel stable
supervisor_version supervisor-2022.10.0
agent_version 1.4.1
docker_version 20.10.17
disk_total 30.8 GB
disk_used 8.7 GB
healthy true
supported true
board ova
supervisor_api ok
version_api failed to load: timeout
installed_addons File editor (5.4.1), Mosquitto broker (6.1.3), Duck DNS (1.15.0), VLC (0.1.3), Node-RED (13.4.0), Samba share (10.0.0), Home Assistant Google Drive Backup (0.108.4), Terminal & SSH (9.6.1), Google Assistant SDK (2.5.0), Let’s Encrypt (4.12.7), Dnsmasq (1.5.1), Zigbee2MQTT (1.28.0-1)
Dashboards
dashboards 1
resources 11
views 5
mode storage
Recorder
oldest_recorder_run 8 octobre 2022 à 21:46
current_recorder_run 15 octobre 2022 à 20:03
estimated_db_size 268.93 MiB
database_engine sqlite
database_version 3.38.5
___

Salut,

Peux tu remettre en forme le code avec les balises ?
image
En l’état ce n’est pas facilement exploitable, la mise en forme compte dans la manière dont fonctionne l’automatisation
Merci

Désolé j’étais sur mon téléphone. Je viens d’effectuer la modification.

1 « J'aime »

En l’état ton automatisation essaie de se déclencher deux fois à 6h50 et aussi au lever du soleil, mais la première condition de ton choose vérifie si c’est un jour de semaine et si tu es entre 6h50 (passées) et 6h52 et ne se déclenchera jamais (HA met toujours moins d’une seconde à passer du trigger à la condition) sauf si le soleil se lève exactement durant ce créneau très court.

Qu’est ce qu’il faudrait faire dans ce cas? Faut-il deux automatisations distinctes ? Merci

Salut,
si la théorie de @frnchfrgg se confirme, ce qui est fort possible, tu dois changer ta condition.
after: "06:50:01"
Au minimum enlever la seconde de trop…

Mais tu aura tout de même un souci l’été prochain où le lever du soleil risque de se mélanger à ton ouverture progressive.

Je ne sais pas si 6h50 la semaine ça à une signification importance pour toi, mais à ta place je ferais un choix, soit l’un soit l’autre. Au moins pas les même jours, les 2 options du choose idéalement devraient être mutuellement exclusives (en termes de jours). Comme ça pas de mélange possible.

J’ai mis 06h50 et la première actuon s’est effectuée mais la deuxième action ( ouverture à 100%) ne s’est pas declené au lever du soleil.

Actuellement le soleil se lève quasiment à 08h30 chez moi. J’aimerais que les volets se levent à mon reveil afin de pouvoir aérer les chambres avant mon départ. 06h50 cest au moment où je commence à me reveiller. En été je serai obliger de revoir l’heure.

Moi je ferais un truc comme ça:

description: 
mode: single
trigger:
  - platform: time
    at: "06:50:00"
    id: heure
  - platform: sun
    event: sunrise
    offset: 0
    id: soleil
condition: []
action:
  - choose:
      - conditions:
          - condition: template
            value_template: '{{ trigger.id == "soleil" }}'
        sequence:
          - service: cover.open_cover
            data: {}
            target:
              entity_id: cover.tous_les_volets
      - conditions:
          - condition: template
            value_template: |
              {{ now().isoweekday() <= 5 and
                 is_state("sun.sun", "below_horizon") }}
        sequence:
          - service: cover.set_cover_position
            data:
              position: 5
            target:
              entity_id: cover.volets_etage
          - delay:
              hours: 0
              minutes: 5
              seconds: 0
              milliseconds: 0
          - service: cover.set_cover_position
            data:
              position: 10
            target:
              entity_id: cover.volets_etage
          - delay:
              hours: 0
              minutes: 10
              seconds: 0
              milliseconds: 0
          - service: cover.set_cover_position
            data:
              position: 20
            target:
              entity_id: cover.volets_etage

Le test « below_horizon » est pour que si le soleil se lève avant 6:50 ton automatisation ne referme pas partiellement les volets en voulant les ouvrir progressivement.

Merci je vais essayer de copier et adapter à mes entites. J’avoue ne pas être à l’aise avec les templates.