Gestion volets roulant

Bonjour a tous,
Je suis en pleine réflexion pour améliorer la gestion de mes volets avec mon alarme.
Actuellement certain volet se ferme des que l alarme est activé et ils s’ouvre a la désactivation de celle ci.
Idéalement j aimerais que la position des volets soit stocké avant la fermeture et que cette même position soit restauré a la désactivation de l alarme.

Pensez vous que cela soit réalisable sachant que chaque volet me retourne bien la valeur current position: xxx ?

Bonjour,

Je présume que tu passes par une automatisation pour fermer/ouvrir tes volets sur le déclencheur de l’alarme.
Donc je te recommanderais de faire un helper input_number dans lequel tu stockeras avec le service input_number.set_value avant de les fermer lors de l’activation de l’alarme.

Une fois que tu voudras les réouvrir sur désactivation de l’alarme, il te suffiras d’appeler un cover.set_cover_position

service: cover.set_cover_position
data:
  position: {{ states(input_number_cover_storage)|int }}
target:
  entity_id: cover.test

Ca devrait pouvoir fonctionner

ca me parait bien mais je n arrive pas a stocker la valeur du volet, je suis pas doué avec le yaml ^^
j arrive a recuperer la valeur avec:
{{ state_attr('cover.volet_bureau', 'current_position') }}

mais j arrive pas l utiliser dans le service pour set la valeur

Ca donne ca en YAML dans ton action de l’automation

service: input_number.set_value
data:
  value: {{ state_attr('cover.volet_bureau', 'current_position') }}
target:
  entity_id: input_number.cover_test_storage

ca me retourne une erreur

expected float for dictionary value @ data[‹ value ›]. Got None

Je viens de faire un test. Il faut passer en data_template :

description: ""
trigger: []
condition: []
action:
  - service: input_number.set_value
    data_template:
      entity_id: input_number.cover_test_storage
      value: "{{ state_attr('cover.volet_bureau', 'current_position') }}"
mode: single

le stockage de la valeur fonctionne ( merci déjà pour cette partie)
mais impossible de restaurer la valeur pour le moment ca me fait encore une erreur …

expected int for dictionary value @ data['position']. Got None

C’est quoi ton code pour récupérer la valeur ?

Essaye ca :

description: ""
trigger: []
condition: []
action:
  - service: cover.set_cover_position
    data_template:
      entity_id: cover.volet_bureau
      value: "{{ states('input_number.cover_test_storage') }}"
mode: single

Je ne peux pas tester, j’ai pas encore mes volets dans HA, j’ai commencé ma migration il y a seulement 2 semaines

service: cover.set_cover_position
data:
  position: {{states('input_number.test_bureau') | int }}
target:
  entity_id: cover.volet_bureau

avec le template ca me donne ca

extra keys not allowed @ data['value']. Got None required key not provided @ data['position']. Got None

Essaye ca :

description: ""
trigger: []
condition: []
action:
  - service: cover.set_cover_position
    data_template:
      entity_id: cover.volet_bureau
      position: "{{ states('input_number.test_bureau') }}"
mode: single

A part ca pas d’idée et comme j’ai dis précédemment, pas encore le moyen de tester de mon coté

Génial ca fonctionne au poil

mille merci et a charge de revanche

code pour sauvegarder l état:

service: input_number.set_value
data_template:
  entity_id: input_number.test_bureau
  value: "{{ state_attr('cover.volet_bureau', 'current_position')}}"

code pour restaurer l etat:

service: cover.set_cover_position
data_template:
  entity_id: cover.volet_bureau
  position: "{{ states('input_number.test_bureau') }}"
1 « J'aime »

Cool. N’hésite pas à passer en résolu