Bonjour à vous tous,
Je suis tout nouveau dans le milieu de HA, et je m’expose aux difficultés de mise en œuvre de mes désirs… Je pense que mes connaissances sont trop limitées pour percer et commencer par moi même.
Je m’explique :
J’ai divers systèmes domotiques basiques de type zipamicro, smart home, alarme connectée…
Il m’est simple dans ces logiciels « très guidés » de réaliser des choses basiques, comme, par exemple, lorsque je passe ce bouton à ON, ça m’enclenche ceci, puis cela, puis, etc etc. Et lorsque je le bascule en OFF, ça a engendré ceci, cela, coupe ceci, etc.
Malheureusement, je pensais pouvoir transposer facilement ma « logique » sur HA, et je me vois confronté à de nombreuses contradictions (avec le fonctionnement, le principe, la logique, le non fonctionnement, …). Je me mélange et me perds entre Automatisation / scènes / script / etc
J’ai beau éplucher les forums, les tutos, les docs de fonctionnements dans HA, je ne parviens pas à produire le début de quelque chose qui fonctionne.
Mon équipement est un Raspberry Pi4 de 4Go avec démarrage HA sur SSD, clés Zigbee et Zwave, configuration ok, intégrations ok (MQTT, Zigbee2mqtt, etc), premiers modules zigbee reconnus et intégrés.
Ma recherche me semble « simple » :
Lorsque je clique sur un bouton X sur le tableau de bord (par exemple « mode été ») :
→ si passage a ON : => je déclenche le module 1 => puis j’attends x secondes = > je coupe module 2 => j’attends x secondes => puis si tel retour d’info est sur ON => je lance module 3 => si retour OFF alors envoie info “erreur” sur smartphone → si passage à OFF :
= > arrêter module x => attendre x secondes puis tout passer OFF
C’est un exemple, mais j’ai 4 ou 5 config du style à réaliser.
Après des recherches et des aides, j’ai pu démarrer et avancer, et c’est ainsi que j’ai pu réaliser un premier automatisme.
J’ai fait quelque chose de basique, et ça marche dans la chronologie.
Cependant, je m’expose à des anomalies de fonctionnement si j’interviens et modifie des données.
Voici mon « code » et je m’explique :
"
alias : AUTOMATISATION FILTRATION ETE
description : " "
trigger :
- plate-forme : état
entity_id :- input_boolean.filtration_ete
de : « off »
à : « on »
condition : []
action :
- input_boolean.filtration_ete
- tapez : turn_on
device_id : 1ea6475bc6b42120527e9f592682a298
entity_id : switch.switch_pompe
domaine : switch - délai :
secondes : 5 - type : turn_on
device_id : 8356bf47044fc0de7b1a1a36e45c06f5
entity_id : switch.4_relais_vitesses_pompe_l2
domaine : switch - délai :
minutes : 1 - si:
- type : is_not_open
condition : appareil
device_id : 12d1c1745e3eda555bc7d130958f3e47
entity_id : binary_sensor.contact_debit_tamper
domaine : binary_sensor
puis : - type : turn_on
device_id : ea4d0240dffa6a7f93d3ae2d0bef5f7a
entity_id : switch.switch_regul_ph_cl
domaine : switch - condition : heure
après : « 08:00:00 »
avant : « 20:00:00 »
jour de la semaine :- lun
- mar
- mer
- jeu
- ven
- sam
- dim
sinon :
- stop : ERREUR PAS DE DEBIT DETECTE
erreur : faux
mode : unique
- type : is_not_open
"
donc, tant que je ne touche à rien, ça marche.
comme indiqué, j’ai fait le code logiquement dans la chronologie : si ça, alors casse ça, si c’est ok, alors on fait ça… etc etc.
par contre, si un des éléments de ma chronologie change d’état (après déclenchement dans ma suite logique d’automatisation, et qui bloquerait dans ma séquence chronologique si condition non effective), alors j’aimerais qu’il réagisse en conséquence.
Par exemple, si mon binary_sensor.contact_debit_tamper passe en is_open, switch.switch_regul_ph_cl doit passer turn_off, puis switch.4_relais_vitesses_pompe_l2 aussi, puis après 10 secondes, switch.switch_pompe aussi.
Ce serait la même procédure à effectuer si j’arrête mon "* input_boolean.filtration_ete " (passage en inverse de « on » à « off »).
aussi, dans cette partie finale:
"
sinon :
- stop : ERREUR AUCUN DEBIT DETECTE
erreur : faux
"
ne me donne rien (feedback, information, action, notification, …)
Eh bien, je sais que c’est un niveau débutant un peu ennuyeux je suppose, et j’en suis désolé.
Merci d’avance pour votre aide !
Sylvain.