Bonjour à tous
Je souhaiterais pouvoir déclencher une prise secteur zwave pendant 30 secondes par exemple.
En gros, je l’allume pour un bouton dans HA, et la prise s’éteint automatiquement au bout de 30 sec.
Savez comment faire cela?
Salut,
As tu jeté un œil dans les automations ?
En gros tu créé un input boleen pour actionner ou pas ta prise.
Ensuite dans une automation tu sélectionnes ce bouton en trigger puis dans actions tu allumes ta prise zwave ensuite tu met un delay de 30secondes puis tu remet ton input a zéro passé ce delai.
J’ai cherché côté automatisation, mais je bloque sur la partie au bout de 30sec, passer l’état à off.
Un p’tit exemple quelque part?
Dans le déclencheur tu mets 30
dans le champ pendant
.
En relisant, tu dois ajouter une action délai
puis une action d’extinction derrière
Je le fait exceptionnellement voici le code
alias: prise 30sec
description: ''
trigger:
- platform: state
entity_id: input_boolean.prise_30sec
from: 'off'
to: 'on'
condition: []
action:
- type: turn_on
device_id: 55d7a9971bcf5d2e690c18e2ee003da8
entity_id: switch.prise_entree
domain: switch
- delay: "00:00:30" #attente de 30 secondes avant la prochaine action
- type: turn_off
device_id: 55d7a9971bcf5d2e690c18e2ee003da8
entity_id: switch.prise_entree
domain: switch
- service: input_boolean.turn_off
target:
entity_id: input_boolean.prise_30sec
mode: single
Merci beaucoup!
J’essaye cela
Comment dois je crée l’input booléen de ma prise?
Si tu découvres complètement HA je te propose de voir ce post
Sinon c’est dans configuration, entrée et la tu créé un input.booléen
Je ne sais pas quelle est la meilleure méthode, mais cela marche aussi en passant par un simple script :
alias: Allumage prise 30 secondes
sequence:
- device_id: dc26783d1584478194a644d76a79b4ca
domain: switch
entity_id: switch.prise_bidon
type: turn_on
- delay: '00:00:30'
- device_id: dc26783d1584478194a644d76a79b4ca
domain: switch
entity_id: switch.prise_bidon
type: turn_off
mode: single
Et pour ton bouton sous HA :
type: button
tap_action:
action: call-service
service: script.toggle
service_data:
entity_id: script.allumage_prise_30_secondes
entity: switch.prise_bidon
Bonjour, je me permet de déterrer le sujet car personnellement, je bloque sur le délai, je souhaiterais que ce délai soit une valeur définie dans l’interface via un slide comme dans la capture ci-dessous:
et dans l’image que vous voyez, je souhaiterais que le « contacteur arrosage countdown » soit en minutes car il est actuellement en secondes
Pourriez vous m’aider?
Merci d’avance
Pour être plus précis, je bloque sur le format de la valeur dans mon script :
Salut
Pour le code, évite les screenshots et utilise les balises de texte préformaté.
Dans le champs « value », remplace « int » par « float »:
| float}}
Et multiple par 60 pour avoir des minutes:
value: "{{(states('input_number.arrosage_time') | float) * 60}}"
Merci pour ton retour rapide, en fait, j’ai réussi en rajoutant des () pour ma multiplication :
value: « {{(states(‹ input_number.arrosage_time ›)|int)*60}} »
Par contre, pour afficher mon décompte, j’ai un souci,
- platform: template
sensors:
decompte_arrosage_potager:
friendly_name: « decompte_arrosage_potager »
device_class: duration
value_template: « {{(states(‹ number.contacteur_arrosage_countdown ›))| int | timestamp_custom(‹ %M:%S ›)}} »
ça m’affiche « inconnu » alors que dans les outils de dev, ça m’affiche bien 00:00
une idée ?
Je me réponds a moi-même, ça fonctionne en enlevant le device_class, je ne sais pas pourquoi…
- platform: template
sensors:
decompte_arrosage_potager:
friendly_name: « decompte_arrosage_potager »
value_template: « {{(states(‹ number.contacteur_arrosage_countdown ›))| int | timestamp_custom(‹ %M:%S ›) }} »
Bonjour Daniel,
Pour un device_class: duration
la valeur retournée doit être un nombre et pas une heure et en fonction de l’unité (d, h, min ou s)
Pour une duration de 1h30, il faudra 90 si l’unité est en min ou 1.5 si l’unité est en h.
Cordialement,
Abel