Volets tuya et position via scripts

Bonjour a tous

Je possède comme nikos des modules pour volet roulant tuya.
les volets ne possède pas de retour de position.
Mais j’aimerais avoir un retour sur la dernière commande effectué.

J’ai lu la totalité du post Retour d'état interrupteurs volets roulants Tuya + Positionnement - numéro 43 mais je rencontre plusieurs souci.
Je sollicite votre aide pour les résoudre.

  1. J’ai utilisé le code de pulpy pour avoir la position fictive de mon volet
    que j’ai modifié, mais cela ne me donne pas le résultat espéré (certainement que ma modification du code n’est pas bonne :woozy_face:)
    Voici le code modifié :

input_text:
  retour_etat_fictif_2:
    initial: ""

cover:
  - platform: cover_rf_time_based
    devices:
      cover.curtain_store_jardin:
        name: Store Jardin position (pulpy)
        travelling_time_up: 15
        travelling_time_down: 15
        close_script_entity_id: script.close_store_jardin
        stop_script_entity_id: script.stop_store_jardin
        open_script_entity_id: script.open_store_jardin
        send_stop_at_ends: True

script:
 open_cover.curtain_store_jardin:
  alias: Open store jardin
  sequence:
  - service: cover.open_cover
    data:
    entity_id: cover.curtain_store_jardin
  - service: input_text.set_value
    target:
    entity_id: input_text.retour_etat_fictif_2
    data:
    value: open
close_cover.curtain_store_jardin:
  alias: Close store jardin
  sequence:
  - service: cover.close_cover
    data:
    entity_id: cover.curtain_store_jardin
  - service: input_text.set_value
    target:
    entity_id: input_text.retour_etat_fictif_2
    data:
    value: close
stop_cover.curtain_store_jardin:
  alias: Stop store jardin
  sequence:
  - service: cover.stop_cover
    data:
    entity_id: cover.curtain_store_jardin

voici le résultat que j’obtiens :storejardin

Quand j’appuie sur les flèches du 1er Volet store Jardin (intégration Localtuya) le volet monte ou descend, mais indicateur de position ne bouge pas.
Quand j’appuie sur les flèches du 2eme volet store jardin position (code pulpy) le volet ne bouge pas, mais l’icône du volet change ouvert ou fermé.

Je cherche a avoir une seule représentation, qui me permettent de commander le volet et me donner sa position

Dans le logs j’ai erreur suivante :

Logger: homeassistant.config
Source: config.py:464
First occurred: 22:18:49 (3 occurrences)
Last logged: 22:18:49

Invalid config for [script]: invalid slug open_cover.curtain_store_jardin (try open_cover_curtain_store_jardin). Got OrderedDict([('default_config', {}), ('http', OrderedDict([('use_x_forwarded_for', True), ('trusted_proxies', '172.xx.xx.x')])), ('frontend', OrderedDict([('themes', OrderedDict([('amoled', OrderedDict([('primary-color', '#484A4C'), ('accent-color', '#E45E65'), ('dark-primary-color', 'var(--accent-color)'), ('light-primary-color', 'var(--accent-color)'), ('primary-text-color', '#FFFFFF'), ('text-primary-color', 'var(--primary-text-color)'), ('secondary-text-color', '#5294E2'), ('disabled-text.... (See /config/configuration.yaml, line 31).
Invalid config for [script]: invalid slug close_cover.curtain_store_jardin (try close_cover_curtain_store_jardin). Got OrderedDict([('default_config', {}), ('http', OrderedDict([('use_x_forwarded_for', True), ('trusted_proxies', '172.xx.xx.x')])), ('frontend', OrderedDict([('themes', OrderedDict([('amoled', OrderedDict([('primary-color', '#484A4C'), ('accent-color', '#E45E65'), ('dark-primary-color', 'var(--accent-color)'), ('light-primary-color', 'var(--accent-color)'), ('primary-text-color', '#FFFFFF'), ('text-primary-color', 'var(--primary-text-color)'), ('secondary-text-color', '#5294E2'), ('disabled-text.... (See /config/configuration.yaml, line 31).
Invalid config for [script]: invalid slug stop_cover.curtain_store_jardin (try stop_cover_curtain_store_jardin). Got OrderedDict([('default_config', {}), ('http', OrderedDict([('use_x_forwarded_for', True), ('trusted_proxies', '172.xx.xx.x')])), ('frontend', OrderedDict([('themes', OrderedDict([('amoled', OrderedDict([('primary-color', '#484A4C'), ('accent-color', '#E45E65'), ('dark-primary-color', 'var(--accent-color)'), ('light-primary-color', 'var(--accent-color)'), ('primary-text-color', '#FFFFFF'), ('text-primary-color', 'var(--primary-text-color)'), ('secondary-text-color', '#5294E2'), ('disabled-text.... (See /config/configuration.yaml, line 31)..

Merci a tous pour votre aide et joyeux noël a tous.

Salut,

A priori, normal puisque les scripts que tu appelles

        close_script_entity_id: script.close_store_jardin
        stop_script_entity_id: script.stop_store_jardin
        open_script_entity_id: script.open_store_jardin

ne sont pas ceux crées

script:
 open_cover.curtain_store_jardin:
 close_cover.curtain_store_jardin:
 stop_cover.curtain_store_jardin:

A ça il faut ajouter des soucis de nommage (pas sûr qu’un point dans le nom du script soit judicieux) et des problèmes de format yaml (indentation pas correcte)…

Donc quand tu appuis sur les boutons, ça n’appelle rien

Tu feras attention, une fois corrigé, tu auras systématiquement l’action « stop », tu as configuré les volets pour que le script stop soit lancé à tous les coups en dernier. Donc je ne suis pas sur que ça soit l’attendu

Merci pulpy pour ta reponse.:+1:

Grace a tes éclaircissements, demain Je vais essayer de corriger mes multiples erreurs.

« (pas sûr qu’un point dans le nom du script soit judicieux) » pas cette phrase tu me conseille de replacer open_cover.curtain_store_jardin: par open_cover_curtain_store_jardin: c’est bien sa ?

Je te tiens au courant de mes progrès :grin:

Hello si ça peut t’aider voilà un de mes scripts fait par @Pulpy


alias: Arrêt volet du bureau
sequence:
  - service: cover.stop_cover
    target:
      entity_id: cover.bureau
mode: single

Et dans mon fichier covers.yaml


- platform: cover_rf_time_based
  devices:
    bureau_2:
      name: "Bureau"
      travelling_time_up: 24
      travelling_time_down: 25
      close_script_entity_id: script.close_bureau
      stop_script_entity_id: script.stop_bureau
      open_script_entity_id: script.open_bureau
      send_stop_at_ends: False

Bonjour

J’ai modifié les lignes de code, mais c’est pas bon. Je n’arrive pas a avoir le résultat escompté.
L’icône change bien de position, mais le volet ne bouge pas…

ci joint mes codes fichier cover.yaml :

#cover:
  - platform: cover_rf_time_based
    devices:
      cover.curtain_store_jardin:
        name: Store Jardin position (pulpy)
        travelling_time_up: 15
        travelling_time_down: 15
        close_script_entity_id: script.close_store_jardin
        stop_script_entity_id: script.stop_store_jardin
        open_script_entity_id: script.open_store_jardin
        send_stop_at_ends: False

fichier scripts.yaml :

# SCRIPT: POSITION FICTIVE VOLETS
##################################
script.open_store_jardin:
  alias: Open store jardin
  sequence:
  - service: cover.open_cover
    data:
    entity_id: cover.curtain_store_jardin
  - service: input_text.set_value
    target:
    entity_id: input_text.retour_etat_fictif_2
    data:
    value: open
script.close_store_jardin:
  alias: Close store jardin
  sequence:
  - service: cover.close_cover
    data:
    entity_id: cover.curtain_store_jardin
  - service: input_text.set_value
    target:
    entity_id: input_text.retour_etat_fictif_2
    data:
    value: close
script.stop_store_jardin:
  alias: Stop store jardin
  sequence:
  - service: cover.stop_cover
    target:
    entity_id: cover.curtain_store_jardin
  mode: single 
Journal  d'erreur :
Logger: homeassistant.helpers.service
Source: helpers/service.py:129
First occurred: 01:17:51 (23 occurrences)
Last logged: 07:05:20

Unable to find referenced entities script.open_store_jardin
Unable to find referenced entities script.stop_store_jardin
Unable to find referenced entities switch.study_heater

C’est mieux mais c’est pas la bonne syntaxe.

Les scripts sont à mettre dans la catégorie script: (comme dans ton exemple précédent). Dès lors le nom ne commence pas par script (c’est hérité de la catégorie) mais est open_store_jardin. Par contre effectivement lors de l’appel, il faut préciser le type comme tu le fais là:

Attention, ça change l’indentation du coup

Là c’est pareil (même si syntaxiquement c’est peut-être moins faux).

Cover.xxxx

C’est pas une bonne idée
et il faut virer le # de cover (c’est comme script:)

Là c’est principalement des problèmes de syntaxe, pour moi l’ensemble n’est pas valide, je ne suis pas sûr la config soit prise en compte correctement au redémarrage.

Afin que ce soit plus clair pour tous le monde et surtout pour moi…
Je me permet de mettre mon fichier de configuration.yaml et detailler ce que j’ai fait (bien ou mal je sais pas)

############################################################
##                HOME ASSISTANT: configuration           ##
############################################################


### < Configure a default setup of Home Assistant (frontend, api, etc) >
default_config:

# <Connection avec Inginx Proxy Manager >
http:
  use_x_forwarded_for: true
  trusted_proxies: !secret trusted_proxies
#  trusted_proxies:
#    - xxx.xx.xx.x # Add the IP address of the proxy server

# Themes
frontend:
  themes: !include_dir_merge_named themes/
 
### < Text to speech >
tts:
  - platform: google_translate

group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
climate: !include climate.yaml

# sensors
sensor: !include_dir_merge_list sensors/ 
#sensor: !include sensors.yaml

# Covers
cover: !include_dir_merge_list covers/ 
#cover: !include cover.yaml

# Inputs
input_text: !include input_text.yaml
input_boolean: !include input_boolean.yaml
input_number: !include input_number.yaml 
input_select: !include input_select.yaml
input_datetime: !include input_datetime.yaml

# Cumul utility meter
#utility_meter: !include_dir_merge_list utilitymeter/
utility_meter: !include utility_meter.yaml

# Zones
zone: !include zone_tracker.yaml

J’ai ensuite créer un autre fichier que j’ai appelé cover.yaml (ci dessous)

#########
# Cover #
#########

  - platform: cover_rf_time_based
    devices:
      cover.curtain_store_jardin:
        name: Store Jardin position (pulpy)
        travelling_time_up: 15
        travelling_time_down: 15
        close_script_entity_id: script.close_store_jardin
        stop_script_entity_id: script.stop_store_jardin
        open_script_entity_id: script.open_store_jardin
        send_stop_at_ends: False

#  - platform: cover_time_based_synced
#    devices:
#      cover.curtain_store_jardin:
#        name: store jardin position (synced)
#        travelling_time_up: 15
#        travelling_time_down: 15
#        close_switch_entity_id: cover.curtain_store_jardin
#        open_switch_entity_id: cover.curtain_store_jardin
#        send_stop_at_ends: True #optional
#        aliases: #optional
#          - cover.curtain_store_jardin_time_based

J’ai ensuite ajouter le script dans le fichier Scripts.yaml existant ( voir ci dessous)

###########################################
# SCRIPT: Fermeture & Ouverture des volets
###########################################
fermeture_volets:
  alias: Fermeture Volets
  sequence:
  - device_id: 3d895e591024e4ed5860d1bf4999f32c
    domain: cover
    entity_id: cover.volet_1
    type: close
  - device_id: e6f95c823b844ec05b3f06b6fc2035dd
    domain: cover
    entity_id: cover.volet_2_salon
    type: close
  - device_id: 482d3ce3d852a0293db83120002ee71f
    domain: cover
    entity_id: cover.volet_3_salon
    type: close
  - device_id: f8383628a459d935423046a484bb19e5
    domain: cover
    entity_id: cover.volet_cuisine_1
    type: close
  - device_id: 27daa7a5a0d3633b88176dfbd579dac0
    domain: cover
    entity_id: cover.volet_cuisine_2
    type: close
  mode: single
  icon: mdi:window-shutter
ouverture_volets:
  alias: Ouverture Volets
  sequence:
  - device_id: 3d895e591024e4ed5860d1bf4999f32c
    domain: cover
    entity_id: cover.volet_1
    type: open
  - device_id: e6f95c823b844ec05b3f06b6fc2035dd
    domain: cover
    entity_id: cover.volet_2_salon
    type: open
  - device_id: 482d3ce3d852a0293db83120002ee71f
    domain: cover
    entity_id: cover.volet_3_salon
    type: open
  - device_id: f8383628a459d935423046a484bb19e5
    domain: cover
    entity_id: cover.volet_cuisine_1
    type: open
  - device_id: 27daa7a5a0d3633b88176dfbd579dac0
    domain: cover
    entity_id: cover.volet_cuisine_2
    type: open
  mode: single
  icon: mdi:window-shutter-open
#######################################################
# SCRIPT: Fermeture & Ouverture des volets Salon/Salle
#######################################################
fermeture_volets_salon_salle:
  alias: Fermeture Volets Salon/Salle
  sequence:
  - device_id: 3d895e591024e4ed5860d1bf4999f32c
    domain: cover
    entity_id: cover.volet_1
    type: close
  - device_id: e6f95c823b844ec05b3f06b6fc2035dd
    domain: cover
    entity_id: cover.volet_2_salon
    type: close
  - device_id: 482d3ce3d852a0293db83120002ee71f
    domain: cover
    entity_id: cover.volet_3_salon
    type: close
  mode: single
  icon: mdi:window-shutter
ouverture_volets_salon_salle:
  alias: Ouverture volets Salon/Salle
  sequence:
  - device_id: 3d895e591024e4ed5860d1bf4999f32c
    domain: cover
    entity_id: cover.volet_1
    type: open
  - device_id: e6f95c823b844ec05b3f06b6fc2035dd
    domain: cover
    entity_id: cover.volet_2_salon
    type: open
  - device_id: 482d3ce3d852a0293db83120002ee71f
    domain: cover
    entity_id: cover.volet_3_salon
    type: open
  mode: single
  icon: mdi:window-shutter-open
###################################################
# SCRIPT: Fermeture & Ouverture des volets Cuisine
###################################################
fermeture_volets_cuisine:
  alias: Fermeture Volets Cuisine
  sequence:
  - device_id: f8383628a459d935423046a484bb19e5
    domain: cover
    entity_id: cover.volet_cuisine_1
    type: close
  - device_id: 27daa7a5a0d3633b88176dfbd579dac0
    domain: cover
    entity_id: cover.volet_cuisine_2
    type: close
  mode: single
  icon: mdi:window-shutter
ouverture_volets_cuisine:
  alias: Ouverture volets Cuisine
  sequence:
  - device_id: f8383628a459d935423046a484bb19e5
    domain: cover
    entity_id: cover.volet_cuisine_1
    type: open
  - device_id: 27daa7a5a0d3633b88176dfbd579dac0
    domain: cover
    entity_id: cover.volet_cuisine_2
    type: open
  mode: single
  icon: mdi:window-shutter-open
##################################
# SCRIPT: POSITION FICTIVE VOLETS
##################################
open_store_jardin:
  alias: Open store jardin
  sequence:
  - service: cover.open_cover
    data:
    entity_id: cover.curtain_store_jardin
  - service: input_text.set_value
    target:
    entity_id: input_text.retour_etat_fictif_2
    data:
    value: open
close_store_jardin:
  alias: Close store jardin
  sequence:
  - service: cover.close_cover
    data:
    entity_id: cover.curtain_store_jardin
  - service: input_text.set_value
    target:
    entity_id: input_text.retour_etat_fictif_2
    data:
    value: close
stop_store_jardin:
  alias: Stop store jardin
  sequence:
  - service: cover.stop_cover
    target:
    entity_id: cover.curtain_store_jardin
  mode: single 

Pour finir j’ai ajouter le fichier input_text.yaml (voir ci dessous)

#############
#    ENTREE #
#############
#input_text:
  retour_etat_fictif_2:
    initial: ""

le nom « cover.curtain_store_jardin » est le nom que intégration Localtuya a mis pour l’entité du store.
en fait pour un switxh sa rajoute switch., pour un volet sa rajoute cover., pour un sensor sa rajoute sensor., etc…etc…
De base j’avais mis curtain_store_jardin et localtuya à rajouter devant le « cover. ». Je ne sais pas si je peux le modifier et retirer le point.

Pour le #cover je l’ai retirer car quand je le met, sur la carte le cover (pulpy) est grisé.
De plus j’avais cru comprendre que quand on fait un include a partir du configuration.yaml, il fallait le retirer…

J’ai certainement l’air un peu couillon, mais tous sa c’est nouveau pour moi et je patauge. (pourtant j’y passe de nombreuse heure a essayer de comprendre et corriger mes erreurs.

Merci de ton aide Pulpy, ainsi que nikos

C’est normal au début de patauger, mais c’est impératif de prendre la main rapidement parce que ça conditionne beaucoup la suite (et le fait que ce soit plus ou moins dur).

Donc je résume les points:

  • si tu fais ta config avec un fichier cover.yaml dédié, le cover: n’est pas obligatoire ça il est fait lors de l’inclusion cover: !include cover.yaml (ou !include_dir) . Pareil pour script etc…
  • le nommage du volet, c’est toi qui le défini là (on est pas sur la partie tuya), je reprends ton exemple
    - platform: cover_rf_time_based
      devices:
        cover.curtain_store_jardin:
    
    Tu es déjà dans un bloc cover (le fichier dédié), donc là il va s’appeler cover.cover.curtain_store_jardin :clown_face:
  • Le problème c’est qu’en le nommant correctement: cover.curtain_store_jardin ça existe déjà (le fameux tuya) et donc HA rale. Il faut donc lui trouver un autre petit nom => cover.curtain_store_jardin_fictif par exemple. Et il faut corriger dans le fichier cover.yaml ET dans la carte ET partout ou c’est appelé !
  • par contre la déclaration d’un volet (dans un fichier dédié)ça commence forcement en début de ligne et sans les 2 espaces (et ça décale toutes les lignes en dessous). ça donne ça :
#########
# Cover #
#########

- platform: cover_rf_time_based
  devices:
    curtain_store_jardin_fictif:
      name: Store Jardin position (pulpy)
      travelling_time_up: 15
      travelling_time_down: 15
      close_script_entity_id: script.close_store_jardin
      stop_script_entity_id: script.stop_store_jardin
      open_script_entity_id: script.open_store_jardin
      send_stop_at_ends: False
  • Du coup c’est pareil pour le suivant: commentaire et 2 espaces de trop
  • Pour le reste (les scripts pour la position fictive) comme ça rapidement ça semble correct.
  • Je vois aussi que tu as corrigé send_stop_at_ends: False En réalité c’est à toi de savoir si ton volet s’arrête automatiquement ou pas. Si c’est pas le cas et qu’il faut faire stop (pour éviter que le moteur continue de forcer), alors il faut mettre la valeur à True. Et donc forcement si la valeur est à true la dernière action faite aura pour effet de valoriser l’input_text avec stop ce qui cachera le mouvement.

D’une façon général le yaml c’est facile avec l’habitude, mais des outils comme l’addon visual studio aident pas mal avec la validation automatique :Home Assistant Community Add-on: Visual Studio Code - Home Assistant OS - Home Assistant Community . C’est bien plus pratique que l’éditeur de fichier de base
Et enfin, il ne faut pas hésiter à user de la fonction de vérification

Merci Pulpy

Je vais appliquer tes conseils et voir si j’ai bien tous compris.
J’ai trouvé comment changer le nom de l’entité, du coup je vais trouver des noms plus « fonctionnel » pour mes store et volets. Je fais tous cela demain, je test et je t’informe du résultat

Je vais aussi installer Visual studio code (je l’avais vu, mais j’ai pas osé…)

Merci encore de ton aide

Bonjour pulpy

Suite a tes conseils, j’ai installé Visual Studio code
Pour que ce soit plus simple j’ai renommé dans intégration tuya mon store en Cover.store_v0

j’ai procédé au modification Dans le bloc cover. (renommé le devices)

#########
# Cover #
#########
#cover:
- platform: cover_rf_time_based
  devices:
    cover.store_v0_fictif:
      name: Store Jardin position pulpy
      travelling_time_up: 15
      travelling_time_down: 15
      close_script_entity_id: script.close_store_v0
      stop_script_entity_id: script.stop_store_v0
      open_script_entity_id: script.open_store_v0
      send_stop_at_ends: False

Dans le bloc Scripts Visual code m’indique que c’est incorrect…

Pour le bloc input je pense que c’est bon…

#############
#    ENTREE #
#############
#input_text: Store Jardin
retour_etat_fictif_v0:
  initial: ""


Donc voila ce qui ce passe :
card_store

Sur la carte Rideau STORE JARDIN

  • Si j’appuie sur la Flèche monter ou descendre de Store Jardin pulpy l’icône a droite change et passe en ouvert ou fermé
    Mais en réalité mon store n’exécute pas ordre…
  • Si j’appuie sur la Flèche monter ou descendre deV0-Store l’icône a droite ne fait rien, Mais mon store exécute ordre…
    et l’icône de position pulpy ne se change pas.

le but est d’avoir la position de la dernière commande (ouvert ou fermé), le store fonctionne soit ouvert, soit Fermé. il se stop grâce au fin de course ou éventuellement sur appuie de la touche stop manuellement.
Mais je ne l’utilise jamais en position intermédiaire donc c’est soit ouvert ou fermé à 100%

Peut etre que le script ne donne les bons ordres…au rideau…

Pourquoi encore un cover à cet endroit ???

#cover:
- platform: cover_rf_time_based
  devices:
    store_v0_fictif:

C’est tout aussi bien !!! Il s’appelera cover.store_v0_fictif et pas cover.cover.store_v0_fictif c’est pas plus simple ?

Donc il faut corriger. C’est l’indentation qui n’est pas bonne déjà. Si la ligne du dessus se termine par : il faut ajouter 2 espaces aux blocs en dessous…
Tu le fais correctement là

    cover.store_v0_fictif:
      name: Store Jardin position pulpy

Oui ça c’est assez basique

Tant que tout n’est pas correctement configuré, ça donnera jamais rien… Le volet virtuel déclencle les scripts, les scripts font les actions sur le veritable volet… si la chaine est brisée, ça ne va pas jusqu’au bout

Bon je pense avoir corriger correctement le bloc Script

open_store_v0:
  alias: Open store jardin
  sequence:
    - service: cover.open_cover
      data:
        entity_id: cover.store_v0
    - service: input_text.set_value
      target:
        entity_id: input_text.retour_etat_fictif_v0
      data:
        value: open
close_store_v0:
  alias: Close store jardin
  sequence:
    - service: cover.close_cover
      data:
        entity_id: cover.store_v0
    - service: input_text.set_value
      target:
        entity_id: input_text.retour_etat_fictif_v0
      data:
        value: close
stop_store_v0:
  alias: Stop store jardin
  sequence:
    - service: cover.stop_cover
      target:
        entity_id: cover.store_v0
  mode: single

Par contre j’ai bien renommé cover.store_V0_fictif en store-V0-fictif
Mais du coup sur la carte la ligne store jardin position pulpy est grisé.
Mais j’ai un deuxième store jardin position pulpy qui est apparu, et avec celui ci sa fonctionne :sweat_smile:

ce qui est étrange (enfin pour moi) pourquoi j’ai un cover_store_jardin_position_pulpy_2 qui c’est crée c’est normal ? (voir image)

1 « J'aime »

Le _2 est crée quand le ‹ sans rien › existe déjà. Vérifie qu’il ne reste rien dans tes configs qui pourrait occasionner un conflit de nom. Restart pour tout désactiver/remettre en place et ensuite, tu pourras renommer le _2

C’est ce que j’ai pensé aussi pour le _2, je vais vérifier et je renommerais âpres…je sais pas si je vais pas laisser « pulpy » :grin: je commençais a bien m’y habituer.

Si je dois adapter cela pour mes volets,

je doit ajouter chacun dans le bloc cover avec un petit nom pour chaque,

et ajouter autant de script dans le bloc script ?
Dans Script à quoi correspond mode : Single

Pour le blox input text , je dois aussi en rajouter autant que le nombre de volet ?

Ouais, c’est pas indispensable, il faut pas oublier le coté pratique… Après gourou d’une secte des adorateurs de HA, c’est une piste de reconversion :wink:

Oui, pour avoir la même chose le plus simple c’est de tout dupliquer (volet virtuel, input_text et scripts)
Pour les scripts, il doit y avoir moyen de bricoler un trucs plus générique mais bon… j’ai pas eu le temps de m’y (re)pencher et maintenant que ça marche …

Et je viens seulement de voir la réponse de @Clemalex

Oui, pas besoin d’avoir des exécutions en parallèle : Automation Modes - Home Assistant

Merci Pulpy pour ton aide précieuse et ta disponibilité.

Je vais m’occuper de faire cela en 2022, Je sens que je vais avoir encore des maux de tête…les : et les 2 espaces sa me rend fou… :upside_down_face:

Bon réveillon à toi et à l’année prochaine

1 « J'aime »

Pas de souci, merci et bonnes fêtes également

bonjour

J’ai vu sur un post que tu avais mis ceci pour le stop :

stop_covertest:
    alias: Stop covertest
    sequence:
    - service: "{% if is_state('input_text.covertest_last', 'open') %}
        script.open_covertest
      {% elif is_state('input_text.covertest_last', 'close') %}
        script.close_covertest
      {% endif %}"
    - service: input_text.set_value
      target:
      entity_id: input_text.covertest_last
      data:
      value: "{% if is_state('input_text.covertest_last', 'open') %}
        stop_open
      {% elif is_state('input_text.covertest_last', 'close') %}
        stop_close
      {% endif %}"

quel différence avec celui que l’on a utilisé (ci dessous) :

stop_store_v0:
  alias: Stop store jardin
  sequence:
    - service: cover.stop_cover
      target:
        entity_id: cover.store_v0

15 lignes ??? :clown_face:

Plus sérieusement, l’exemple compliqué s’applique à d’autres types de volets chez moi => des velux.
Ils ne possèdent pas 3 ordres (UP/DOWN/STOP) mais uniquement 2 (UP/DOWN).
Et pour arrêter le moteur, il faut doubler la commande : UP => ça monte ; UP => ça stoppe
Donc tout l’intérêt du truc, c’est de mémoriser si la commande initiale était un UP ou DOWN pour faire la bonne combinaison UP/UP ou DOWN/DOWN et surtout pas faire un UP/DOWN ou un DOWN/UP

Ok compris . Merci

Avec la commande fictif du store , j’ai un soucis.

Si j’exécute la commande a partir de l’application smartlife ou alexa ou par les boutons. la commande fictif ne s’exécute pas dans HA, uniquement la commande de appareil du coup je n’ai plus le positionnement fictif.

Est il possible de lui faire exécuter la commande fictif en parallèle de la commande réel pour toujours avoir le positionnement fictif

car je voudrais en faite savoir quelle commande a été effectué en dernier Monte/ouvrir ou descendre/fermé,
et considéré que si la commande dure + de 20 seconde que le volet est en position ouvert ou fermé à 100% suivant le cas. Si la commande est <à 20 seconde considéré que le volet est en position intermédiaire

J’espère que mon explication est compréhensible :woozy_face: