Si le bâtant 1 est ouvert quand je rentre du boulot et que je veux rentrer ma voiture, je lance la commande pour ouvrir le portail (ou j’appuie sur la télécommande). le bâtant 1 reste ouvert et le bâtant 2 s’ouvre.
Ok.
Si battant 1 est ouvert et que tu utilises switch.portail_1
, le battant 1 se ferme ?
et
Si battant 1 et 2 sont ouverts et que tu utilises switch.portail_1
, le battant 1 et 2 se ferment ?
Oui
Oui
Par contre si j’utilise switch.portail_2
, les battants 1 et 2 s’ouvre ou se ferme.
OK
Donc, avec toutes ces informations, on avance
Maintenant, tu peux rappeler ce que tu souhaites comme comportement ?
Genre,
Quand je rentre du boulot, j’appuis sur un bouton et ça m’ouvre le portail et ce même si il est déjà ouvert (du moins ne le referme pas) et ça m’ouvre le garage (du moins ca ne me le ferme pas)
?
1ère situation : Ma femme ouvre et referme le garage et le portail avec la télécommande donc pas de retour sur HA, je rentre du travail, je veux pouvoir lancer une automatisation pour ouvrir le portail et le garage automatiquement (sans que l’un reste fermé et l’autre s’ouvre et inversement).
2ème situation : ma femme gentiment me laisse le garage ouvert, j’arrive, je lance l’automatisation et le portail s’ouvre pour rentrer la voiture et le garage reste ouvert.
3ème situation : ma femme revient des courses, elle a ouvert qu’un battant du portail, j’arrive, je lance l’automatisation et le portail ouvre les deux battants et ouvre le garage.
4ème situation (plus rare) : les deux battants sont ouverts, j’arrive, je lance l’automatisation. Le portail reste ouvert et le garage s’ouvre.
5ème situation : je fais des travaux à la maison, j’ouvre le garage pour sortir mes outils. Le portail doit rester fermé. Et inversement si je ferme le garage, le portail ne doit pas s’ouvrir
Je pense avoir fait le tour, des différentes situations.
C’est ce qu’il faut définir…
Mais déjà il y a de quoi faire…
Dernière question en YAML ou NodeRED ?
Je ne sais pas. Je ne connais aucun de ces langages, je les découvre.
Sur HA, c’est du YAML ?
Je n’utilise que HA.
Oui du YAML
Ca m’arrange car Node-RED et moi…
On voit ça demain mais tu peux commencer a essayer dans l’interface graphique des Automatisations
Je repasse demain te montrer tout ça si tu bloques
Ok merci à demain. Bonne nuit
Bonjour,
Je viens de créer mon automatisation qui fonctionne bien en manuelle. Mais je n’arrive pas à la lancer automatiquement.
Lors de l’ouverture du portail via switch.porte_véhicule
rien ne fonctionne le portail « fait sa vie » sans tenir compte de l’automatisation.
J’ai essayé de créer un template (ou plutôt de copier/coller un template) mais c’est la même chose.
Je joint les codes de l’automatisation et template :
Automatisation :
alias: Ouverture portail/garage
description: ''
trigger:
- platform: device
type: turned_on
device_id: 70db03050ecb7b6f3806916821305f44
entity_id: switch.porte_vehicule
domain: switch
condition: []
action:
- choose:
- conditions:
- type: is_open
condition: device
device_id: 324fa94e17780ba90e9108c9f02a1982
entity_id: binary_sensor.capteur_porte_gauche_portail
domain: binary_sensor
- type: is_open
condition: device
device_id: 7d969224392bca6ba6253fd11738c577
entity_id: binary_sensor.capteur_de_porte_de_garage
domain: binary_sensor
sequence: []
- conditions:
- type: is_not_open
condition: device
device_id: 324fa94e17780ba90e9108c9f02a1982
entity_id: binary_sensor.capteur_porte_gauche_portail
domain: binary_sensor
- type: is_not_open
condition: device
device_id: 7d969224392bca6ba6253fd11738c577
entity_id: binary_sensor.capteur_de_porte_de_garage
domain: binary_sensor
sequence:
- type: turn_on
device_id: 70db03050ecb7b6f3806916821305f44
entity_id: switch.porte_vehicule
domain: switch
- type: turn_on
device_id: 7d969224392bca6ba6253fd11738c577
entity_id: switch.ouverture_de_la_porte_de_garage
domain: switch
- conditions:
- type: is_open
condition: device
device_id: 324fa94e17780ba90e9108c9f02a1982
entity_id: binary_sensor.capteur_porte_gauche_portail
domain: binary_sensor
- type: is_not_open
condition: device
device_id: 7d969224392bca6ba6253fd11738c577
entity_id: binary_sensor.capteur_de_porte_de_garage
domain: binary_sensor
sequence:
- type: turn_on
device_id: 7d969224392bca6ba6253fd11738c577
entity_id: switch.ouverture_de_la_porte_de_garage
domain: switch
- conditions:
- type: is_not_open
condition: device
device_id: 324fa94e17780ba90e9108c9f02a1982
entity_id: binary_sensor.capteur_porte_gauche_portail
domain: binary_sensor
- type: is_open
condition: device
device_id: 7d969224392bca6ba6253fd11738c577
entity_id: binary_sensor.capteur_de_porte_de_garage
domain: binary_sensor
sequence:
- type: turn_on
device_id: 70db03050ecb7b6f3806916821305f44
entity_id: switch.porte_vehicule
domain: switch
default: []
mode: parallel
max: 10
Template :
gate:
device_class: gate
friendly_name: "Portail ouvert"
value_template: >-
{% if is_state('binary_sensor.capteur_porte_gauche_portail','on') %}
Open
{% else %}
Closed
{% endif %}*
open_cover:
service: switch.turn_on
data:
entity_id: automation.ouverture_portail_garage
icon_template: >-
{% if is_state('binary_sensor.capteur_porte_gauche_portail','on') %}
mdi:gate-open
{% else %}
mdi:gate
{% endif %}
Si vous pouviez y jeter un œil et me faire vos retours.
Merci
Bonjour,
Je relance le sujet car je n’arrive pas du tout à m’en sortir avec les templates.
Pour ouvrir ma porte de garage j’ai modifié ce template :
- platform: template
covers:
garage_door:
device_class: garage
friendly_name: "Porte de garage"
value_template: >-
{% if is_state('binary_sensor.capteur_de_porte_de_garage','on') %}
Open
{% else %}
Closed
{% endif %}
open_cover:
- condition: state
entity_id: binary_sensor.capteur_de_porte_de_garage
state: "off"
- service: switch.turn_on
data:
entity_id: switch.ouverture_de_la_porte_de_garages
close_cover:
- condition: state
entity_id: binary_sensor.capteur_de_porte_de_garage
state: "on"
- service: switch.turn_off
data:
entity_id: switch.ouverture_de_la_porte_de_garage
stop_cover:
service: switch.toggle
data:
entity_id: switch.ouverture_de_la_porte_de_garage
icon_template: >-
{% if is_state('binary_sensor.capteur_de_porte_de_garage','on') %}
mdi:garage-open
{% else %}
mdi:garage
{% endif %}
Mon problème c’est que je suis obligé d’appuyer sur le bouton pose pour fermer ou ouvrir ma porte de garage alors que je souhaiterais appuyer sur la flèche du haut pour ouvrir le portail et sur la flèche du bas pour le fermer.
Merci pour votre aide car je n’arrive vraiment pas à comprendre l’écriture et le fonctionnement des templates malgré tous les tutos sur le sujet.
A vous relire
Et si tu remplaces cette partie de code par :
value_template: 50
?
Ça donne le comportement attendu ?
Je viens de remplacer le code, je n’ai plus le retour de positionnement de ma porte « ouverte/fermée » et je suis toujours obligé d’utiliser le bouton pause pour ouvrir ou fermer ma porte.
open_cover: - condition: state entity_id: binary_sensor.capteur_de_porte_de_garage state: "off" - service: switch.turn_on data: entity_id: switch.ouverture_de_la_porte_de_garages close_cover: - condition: state entity_id: binary_sensor.capteur_de_porte_de_garage state: "on" - service: switch.turn_off data: entity_id: switch.ouverture_de_la_porte_de_garage stop_cover: service: switch.toggle data: entity_id: switch.ouverture_de_la_porte_de_garage
Je me demande si le problème ne viendrais pas de cette partie?
Quelle est la différence entre switch.turn
(on ou off) et switch.toggle
?
Quelle est la différence entre
switch.turn
(on ou off) etswitch.toggle
?
Toggle ça inverse l’état à chaque fois : on / off / on etc. Alors que le on fait que on
pause
Là dans tes exemples le bouton pause ne semble pas présent. Au mieux il y a un stop… Est-ce le même ?
Et donc toogle sur un bouton stop c’est pas dit que ça fasse un vrai stop
binary_sensor.capteur_de_porte_de_garage
Tu es certainement que ce sensor fonctionne bien ? Et qu’il est bien du type on/off (pour aller avec le condition state de l’ ouverte / fermeture) ?
Ça expliquerai pour ça marche pas bien, le Toggle lui n’a pas de test
Là dans tes exemples le bouton pause ne semble pas présent. Au mieux il y a un stop… Est-ce le même ?
Et donc toogle sur un bouton stop c’est pas dit que ça fasse un vrai stop
Je me suis trompé de therme c’est bien stop (et non pause).
Apollon16:
binary_sensor.capteur_de_porte_de_garage
Tu es certainement que ce sensor fonctionne bien ? Et qu’il est bien du type on/off (pour aller avec le condition state de l’ ouverte / fermeture) ?
Ça expliquerai pour ça marche pas bien, le Toggle lui n’a pas de test
Quand je vais dans l’outil de développement de HA, HA m’annonce pour le capteur un état « off » quand la porte de garage est fermée et « on » quand elle est ouverte.
Euhhh c’est peut être trop facile mais pourquoi dans le turn on c’est garages avec un s ?
Bien vu Lulu, c’était ce p*** de « S ». Sûrement dû à un copier/coller malencontreux.
Merci à tous
Ravi que ce soit réglé mais je ne pense pas que le poste de @Pulpy-Luke amène la réponse à la question initiale.
Je comprends bien pourquoi tu as marqué ce post en solution sur ce moment, mais pas un autre utilisateur lisant le premier post…
Relis les différentes réponses et marque la plus adaptée (même la tienne avec le bon code).
Ok @Clemalex
Je vais essayer de faire une synthèse du post.
Pour régler mon problème lié à l’utilisation de la domotique et/ou aux système manuel pour l’ouverture de mon garage et de mon portail. J’ai rajouter un capteur de porte Xiaomi sur une des portes de mon portail pour définir son état « ouvert/fermé ».
En suite, j’ai créé cette automation:
alias: Ouverture portail/garage
description: ''
trigger:
- platform: device
type: turned_on
device_id: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
entity_id: switch.xxxxxxxxx
domain: switch
condition: []
action:
- choose:
- conditions:
- type: is_open
condition: device
device_id: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
entity_id: binary_sensor.xxxxxxxxxxxxxxxxxxxx
domain: binary_sensor
- type: is_open
condition: device
device_id: xxxxxxxxxxxxxxxxxxxxxxxxx
entity_id: binary_sensor.xxxxxxxxxxxxxxxxxx
domain: binary_sensor
sequence: []
- conditions:
- type: is_not_open
condition: device
device_id: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
entity_id: binary_sensor.xxxxxxxxxxxxxxxxxx
domain: binary_sensor
- type: is_not_open
condition: device
device_id: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
entity_id: binary_sensor.xxxxxxxxxxxxxxxxxxxxx
domain: binary_sensor
sequence:
- type: turn_on
device_id: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
entity_id: switch.xxxxxxxxxxxxxxxx
domain: switch
- type: turn_on
device_id: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
entity_id: switch.xxxxxxxxxxxxxxxxxxxxx
domain: switch
- conditions:
- type: is_open
condition: device
device_id: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
entity_id: binary_sensor.xxxxxxxxxxxxxxxxxxxxxxxxx
domain: binary_sensor
- type: is_not_open
condition: device
device_id: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
entity_id: binary_sensor.xxxxxxxxxxxxxxxxxx
domain: binary_sensor
sequence:
- type: turn_on
device_id: xxxxxxxxxxxxxxxxxxxxxxxxx
entity_id: switch.xxxxxxxxxxxxxxxxxxxxxxx
domain: switch
- conditions:
- type: is_not_open
condition: device
device_id: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
entity_id: binary_sensor.xxxxxxxxxxxxxxxxxx
domain: binary_sensor
- type: is_open
condition: device
device_id: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
entity_id: binary_sensor.xxxxxxxxxxxxxxxxxxxxxxxxxxxx
domain: binary_sensor
sequence:
- type: turn_on
device_id: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
entity_id: switch.xxxxxxxxxxxxxxxxxxx
domain: switch
default: []
mode: parallel
max: 10
Pour un meilleur visu sur l’aperçu de Home Assistant, j’ai créé deux « cover » templates, une pour ma porte de garage et l’autre pour le portail:
- platform: template
covers:
garage_door:
device_class: garage
friendly_name: "Porte de garage"
value_template: >-
{% if is_state('binary_sensor.xxxxxxxxxxxxx','on') %}
Open
{% else %}
Closed
{% endif %}
open_cover:
- condition: state
entity_id: binary_sensor.xxxxxxxxxxxxxxx
state: "off"
- service: switch.turn_on
data:
entity_id: switch.xxxxxxxxxx
close_cover:
- condition: state
entity_id: binary_sensor.xxxxxxxxxxxxx
state: "on"
- service: switch.turn_off
data:
entity_id: switch.xxxxxxxxxxxx
stop_cover:
service: switch.toggle
data:
entity_id: switch.xxxxxxxxxxxxxx
icon_template: >-
{% if is_state('binary_sensor.xxxxxxxxxxxxxxxx','on') %}
mdi:garage-open
{% else %}
mdi:garage
{% endif %}
gate:
device_class: gate
friendly_name: "Portail"
value_template: >-
{% if is_state('binary_sensor.xxxxxxxxxxxxxx','on') %}
Open
{% else %}
Closed
{% endif %}
open_cover:
- condition: state
entity_id: binary_sensor.xxxxxxxxxxxxxxxxxxxx
state: "off"
- service: switch.toggle
data:
entity_id: switch.xxxxxxxxxxxx
close_cover:
- condition: state
entity_id: binary_sensor.xxxxxxxxxxxxxx
state: "on"
- service: switch.toggle
data:
entity_id: switch.xxxxxxxxxxxxxx
stop_cover:
service: switch.toggle
data:
entity_id: switch.xxxxxxxxxxxxxx
icon_template: >-
{% if is_state('binary_sensor.xxxxxxxx','on') %}
mdi:gate-open
{% else %}
mdi:gate
{% endif %}
Dans l’ensemble tout fonctionne, il me reste un petit bug lors du lancement de mon automation pour fermer mon garage avec le template « garage » mais ce n’est pas grave car j’utilise surtout les assistants vocaux plutôt que l’interface Home Assistant.
J’espère que ce post pourra être utile à d’autres membres.