Bonjour.
J’ai une VMC avec un interrupteur marche forcée que j’ai domotisé avec un Shelly 1.
J’ai un capteur T°/Humidité Xiaomi dans nos 2 salles de bain.
Je voudrais que quand l’humidité dépasse 65% (pour l’instant, à affiner) dans une des 2 pièces, le Shelly soit activé pour passer en marche forcée.
J’ai donc générer ce code via l’interface graphique :
alias: Force VMC
description: VMC grande vitesse si Hum > 65%
trigger:
- type: humidity
platform: device
device_id: eb258853d787f0f276404625128dcde0
entity_id: sensor.ble_humidity_capteur_th_a4_c1_38_d7_11_ed
domain: sensor
below: 100
- type: humidity
platform: device
device_id: a0f3f09ad0220fd5787cfb7c2d5a6af7
entity_id: sensor.ble_humidity_capteur_th_a4_c1_38_53_1b_51
domain: sensor
below: 100
condition: []
action:
- if:
- type: is_humidity
condition: device
device_id: a0f3f09ad0220fd5787cfb7c2d5a6af7
entity_id: sensor.ble_humidity_capteur_th_a4_c1_38_53_1b_51
domain: sensor
above: 65
- condition: or
conditions:
- type: is_humidity
condition: device
device_id: eb258853d787f0f276404625128dcde0
entity_id: sensor.ble_humidity_capteur_th_a4_c1_38_d7_11_ed
domain: sensor
above: 65
then:
- type: turn_on
device_id: 5471efe89e57708d7ee1bcabf6c0b168
entity_id: switch.shelly1_98f4abd0c750
domain: switch
else:
- type: turn_off
device_id: 5471efe89e57708d7ee1bcabf6c0b168
entity_id: switch.shelly1_98f4abd0c750
domain: switch
mode: single
Mais quand je lance l’automatisation, il entre dans la branche Else et coupe le Shelly :
Executed: May 18, 2023 at 10:45:25
Result:
choice: else
if
Executed: May 18, 2023 at 10:45:25
Result:
result: false
if/condition/0
Iteration 1
Executed: May 18, 2023 at 10:45:25
Result:
result: false
if/condition/0
Iteration 2
Executed: May 18, 2023 at 10:45:25
Result:
result: false
if/condition/0/entity_id/0
Executed: May 18, 2023 at 10:45:25
Result:
result: false
state: 60
wanted_state_above: 65
Pourtant une des salles de bain est bien au dessus de 65 :
https://imgur.com/bBT7AQZ
Et je n’ai qu’une seule trace de mon automatisation, celle que j’ai forcé l’exécution, alors que les valeurs changent et donc HA devrait déclencher l’automatisation.
Merci de votre aide
Salut, tu peux essayer en créant un groupe de sensor avec le type maximum pour déclencher ton automatisation
1 « J'aime »
J’ai donc créé un sensor humidite_sdb qui est le maximum de l’humidité des 2 capteurs.
Et j’ai modifé mon automatisation comme suit :
alias: Marche forcee VMC
description: VMC grande vitesse si Hum > 65%
trigger:
- platform: state
entity_id:
- sensor.humidite_sdb
action:
- if:
- condition: template
value_template: "{{ states(\"sensor.humidite_sdb\")|int(0) > 65 }}"
then:
- type: turn_on
device_id: 5471efe89e57708d7ee1bcabf6c0b168
entity_id: switch.shelly1_98f4abd0c750
domain: switch
else:
- type: turn_off
device_id: 5471efe89e57708d7ee1bcabf6c0b168
entity_id: switch.shelly1_98f4abd0c750
domain: switch
mode: single
Je sors de la douche, l’humidité max est bien passée au dessus de la barre des 65% et l’automatisation est bien déclenchée et la marche forcée activée.
Bon, le truc c’est que l’automatisation est déclenchée à chaque changement de % mais je vois pas comment faire un truc qui se déclencherais moins souvent et qui permettrait en même temps d’arrêter la marche forcée.
Il faut voir le trigger !
un exemple un peu plus compliqué chez moi, avec 2 sondes et une vérification du status !
Qui enclenche le déshumidificateur et sèche serviette si besoin ( chauffage)
automation SdB
le Yaml
alias: Humidité Salle de Bain
description: Humidité SdB entre 68 et 64 %
trigger:
- platform: numeric_state
entity_id: sensor.thgn122_123_thgn132_thgr122_228_238_268_32_01_humidity
for:
hours: 0
minutes: 0
seconds: 1
above: 67.9
id: hygro>68
- platform: numeric_state
entity_id: sensor.thgn122_123_thgn132_thgr122_228_238_268_32_01_humidity
for:
hours: 0
minutes: 0
seconds: 1
below: 64.5
id: hygro<64
- platform: numeric_state
entity_id: sensor.oregon_12801hygrometry
above: 67.9
id: hygro1>68
for:
hours: 0
minutes: 0
seconds: 1
- platform: numeric_state
entity_id: sensor.oregon_12801hygrometry
below: 64.5
id: hygro1<64
for:
hours: 0
minutes: 0
seconds: 1
- platform: state
entity_id:
- sensor.thgn122_123_thgn132_thgr122_228_238_268_32_01_humidity_status
attribute: assumed_state
from: comfort
to: wet
for:
hours: 0
minutes: 0
seconds: 0
id: wet
- platform: state
entity_id:
- sensor.thgn122_123_thgn132_thgr122_228_238_268_32_01_humidity_status
attribute: assumed_state
from: wet
to: comfort
for:
hours: 0
minutes: 0
seconds: 0
id: comfort
condition: []
action:
- choose:
- conditions:
- condition: or
conditions:
- condition: trigger
id: hygro>68
- condition: trigger
id: hygro1>68
- condition: trigger
id: wet
sequence:
- type: turn_on
device_id: 885e6ab527e72840d6e835cf211f719f
entity_id: switch.shellyswitch25_c45bbe792269_channel_1
domain: switch
- type: turn_on
device_id: 885e6ab527e72840d6e835cf211f719f
entity_id: switch.shellyswitch25_c45bbe792269_channel_2
domain: switch
- service: notify.mobile_app_m2012k11ag
data:
message: >-
{{ states ("sensor.time") }} Humidité salle de bain {{ states
("sensor.oregon_12801hygrometry") }}
- conditions:
- condition: or
conditions:
- condition: trigger
id: hygro<64
- condition: trigger
id: hygro1<64
- condition: trigger
id: comfort
sequence:
- type: turn_off
device_id: 885e6ab527e72840d6e835cf211f719f
entity_id: switch.shellyswitch25_c45bbe792269_channel_1
domain: switch
- service: notify.mobile_app_m2012k11ag
data:
message: >-
{{ states ("sensor.time") }} Humidité salle de bain {{ states
("sensor.oregon_12801hygrometry") }}
mode: restart
1 « J'aime »
Merci, @Doubledom, j’ai fait un mix des vos 2 solutions avec le sensor et je pense que je tiens la solution parfaite 