Reset d'un entrée (helpers) Interrupteur (input boolean)?

Alors pas vraiment, vu que le switch mural est un toggle, je verrais pas son état on ou off dans Google Home. Ou si c’est possible, je vois pas trop comment :-(.

Je présume que la solution est proche. Je vais me coucher également. Merci pour tout

A demain :wink:

ok donc il faut bien un boolean en plus

1 « J'aime »

La nuit porte conseil. J’y ai pensé cette nuit.

Il me semble que ce qui suit suffit pour règler la problématique de l’interrupteur mural. Super simple, et je pense que même plus besoin de la liste.

Même automation pour chaque interrupteur mural toggle, ou regrouper le tout dans une seule automation avec un if (je sait pas trop faire ça) ou alors avec des options que je sais faire par contre :slight_smile:

Tu en penses quoi ?

alias: Test Interrupteur mural salon
description: ""
trigger:
  - platform: event
    event_type: xiaomi_aqara.click
    event_data:
      entity_id: binary_sensor.wall_switch_left_sal
      click_type: single
condition: []
action:
  - service: input_boolean.toggle
    metadata: {}
    data: {}
    target:
      entity_id: input_boolean.lum_sal_a
mode: single

Re,
La liste était là, juste pour rappeler la dernière scene en cours. Si chaque bouton est dédié à une scene, tu fais la même chose que

La différence c’est que les triggers sont les boutons et qu’ils basculent les input_booleans

Donc ça devrait fonctionner comme ça ? (je vais tester ce soir) je vois qu’un cas de figure qui pourrait être un peu embêtant c’est que si j’ai la scène A qui est active et que j’aimerais éteindre les lumières avec l’interrupteur mural, si j’appuie pas sur le bouton dédié à la gestion de la scène A et bien je vais passer d’abord par un changement de scène et je vais devoir rappuyer sur le même bouton pour éteindre mais c’est pas grave et pas bloquant.

J’y ai pensé mais pas trouvé de solution probante pour ce cas précis

Je dois pas avoir assez de caféine dans le sang pour comprendre : mais pour moi, si on par de toutes les lumière sont OFF.

  1. tu cliques sur ton inter A => bascule du boolean (via la dernière autom évoquée/completée), il est ON => déclenchement par trigger de l’automatisation des ON pour les scènes (la première d’hier soir), la scéne A est ON
  1. tu cliques sur ton inter => bascule du boolean (via la dernière autom évoquée/completée), il est OFF => déclenchement par trigger de l’automatisation des OFF pour les scènes (la deuxième d’hier soir), ça fait OFF sur toutes les scènes

Donc je ne vois pas ou tu repasses par un allumage des scènes là dedans

Il y a souci (je crois) quand à l’étape 2 tu click pas sur l’inter A mais le B ou le Full, dans ce cas on passe pas par l’étape off mais directement sur le on de la B ou du Full selon sur quel inter on presse.

C’est déjà ce qui se passe avec les input boolen mais c’est plus facile à gérer car sur Google Home je verrais quel scène est allumé et du coup je peux utiliser le bon switch dans l’interface GH pour l’éteindre. Moins gérable sur les inter muraux ou je vais pas forcément actionner celui qui est dédié à la scène active pour la passer en off.

J’ai juste ou pas ?

Oui si tu utilises l’inter B quand la scene A est en place, tu es bien dans ce cas.
C’est pour ça que je proposais hier d’avoir l’input_select. Comme ça n’importe quel appui sur n’importe quel inter coupe la scene active.

donc un mix du genre :

  • Quand les inter ou les input_boolean passent de OFF à ON, ils activent la scene dédiée.
  • Quand 1 inter ou 1 input_boolean passe de ON à OFF, il désactive la scéne en cours.
  • Et si tu recliques sur l’inter ou l’input_boolean, il rallume sa scene dédiée

ça me plait pas mal

Ca me plait bien aussi si on arrive à éliminer ce cas de figure un peu bancal. Il faut garder le input_select du coup c’est bien ça ?

Les inter dont tu parles, c’est ceux sur le mur ? c’est juste des poussoirs toogle (gauche, droite ou les deux en même temps)

oui il faut garder l’input_select
et les inter se sont tes aquara

Pour le ON j’ai ça. C’est correct ?

alias: Ambiance salon ON
description: ""
trigger:
  - platform: state
    entity_id:
      - input_boolean.lum_sal_a
    to: "on"
    id: switch_salon_a
  - platform: state
    entity_id:
      - input_boolean.lum_sal_b
    to: "on"
    id: switch_salon_b
  - platform: state
    entity_id:
      - input_boolean.lum_sal_f
    to: "on"
    id: switch_salon_full
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - switch_salon_a
        sequence:
          - service: hue.activate_scene
            target:
              entity_id:
                - scene.bureau_bureau_b
                - scene.salon_salon_i
            data: {}
          - service: scene.turn_on
            metadata: {}
            target:
              entity_id: scene.scene_ambiance_a_on_salon
          - service: input_boolean.turn_off
            metadata: {}
            data: {}
            target:
              entity_id:
                - input_boolean.lum_sal_b
                - input_boolean.lum_sal_f
          - service: input_select.select_option
            target:
              entity_id: input_select.ambiance_active_salon
            data:
              option: lum_sal_a
      - conditions:
          - condition: trigger
            id:
              - switch_salon_b
        sequence:
          - service: hue.activate_scene
            target:
              entity_id:
                - scene.salon_salon_b
                - scene.bureau_bureau_b
            data: {}
          - service: scene.turn_on
            metadata: {}
            target:
              entity_id: scene.ambiance_b_on_salon
          - service: input_boolean.turn_off
            metadata: {}
            data: {}
            target:
              entity_id:
                - input_boolean.lum_sal_a
                - input_boolean.lum_sal_f
          - service: input_select.select_option
            target:
              entity_id: input_select.ambiance_active_salon
            data:
              option: lum_sal_b
      - conditions:
          - condition: trigger
            id:
              - switch_salon_full
        sequence:
          - service: hue.activate_scene
            target:
              entity_id:
                - scene.bureau_concentrate
                - scene.salon_concentrate
            data: {}
          - service: scene.turn_on
            metadata: {}
            target:
              entity_id: scene.scene_ambiance_full_on_salon
          - service: input_boolean.turn_off
            metadata: {}
            data: {}
            target:
              entity_id:
                - input_boolean.lum_sal_a
                - input_boolean.lum_sal_b
          - service: input_select.select_option
            target:
              entity_id: input_select.ambiance_active_salon
            data:
              option: lum_sal_f
mode: single

Pour le OFF j’ai ça, c’est correct ?

alias: Ambiance salon OFF
description: ""
trigger:
  - platform: state
    entity_id:
      - input_boolean.lum_sal_a
    to: "off"
  - platform: state
    entity_id:
      - input_boolean.lum_sal_b
    to: "off"
  - platform: state
    entity_id:
      - input_boolean.lum_sal_f
    to: "off"
condition:
  - condition: state
    entity_id: input_boolean.lum_sal_a
    state: "off"
  - condition: state
    entity_id: input_boolean.lum_sal_b
    state: "off"
  - condition: state
    entity_id: input_boolean.lum_sal_f
    state: "off"
action:
  - service: scene.turn_on
    target:
      entity_id: scene.scene_ambiance_b_off_salon
    data: {}
mode: single

pour le off c’est faux, il faut un case dans tes actions (un peu comme le on) au lieu d’une condition

Là ou ça ne va pas c’est pour les inter, comme vu hier soir j’arrive à éteindre la scène correspondante à ce qu’on trouve dans le input_select mais si je rappuie j’allume pas la scène correspondante à l’inter avec le code ci-dessous.

alias: Interrupteur mural salon
description: ""
trigger:
  - platform: event
    event_type: xiaomi_aqara.click
    event_data:
      entity_id: binary_sensor.wall_switch_left_sal
      click_type: single
condition: []
action:
  - choose:
      - conditions:
          - condition: state
            entity_id: input_select.ambiance_active_salon
            state: lum_sal_f
        sequence:
          - service: input_boolean.toggle
            metadata: {}
            data: {}
            target:
              entity_id: input_boolean.lum_sal_f
      - conditions:
          - condition: state
            entity_id: input_select.ambiance_active_salon
            state: lum_sal_a
        sequence:
          - service: input_boolean.toggle
            metadata: {}
            data: {}
            target:
              entity_id: input_boolean.lum_sal_a
      - conditions:
          - condition: state
            entity_id: input_select.ambiance_active_salon
            state: lum_sal_b
        sequence:
          - service: input_boolean.toggle
            metadata: {}
            data: {}
            target:
              entity_id: input_boolean.lum_sal_b
mode: single

Je ne vois pas là :frowning:

A noter que j’ai besoin que d’une seule scène pour le off, ce sont les mêmes objets pour les 3 automations

ça c’est bon, c’est le off qu’il faut corriger

  • Quand tu cliques sur les inter = toggle de l’input_boolean dédié (1 autom déjà en place)
  • Quand les input_boolean passent de OFF à ON, ils activent le scene dédiée et coupent les autres scenes). (ON déjà en place)
  • Quand 1 input_boolean passe de ON à OFF, il désactive la scéne en cours. (c’est le OFF à corriger)

Le OFF que tu cites ne fait qu’1 action, toujours couper la scéne B

ça doit ressemble à ça

    entity_id:
      - input_boolean.lum_sal_b
    to: "off"
    id: B
  - platform: state
    entity_id:
      - input_boolean.lum_sal_f
    to: "off"
    id: C
condition:
  - condition: state
    entity_id: input_boolean.lum_sal_a
    state: "off"
  - condition: state
    entity_id: input_boolean.lum_sal_b
    state: "off"
  - condition: state
    entity_id: input_boolean.lum_sal_f
    state: "off"
action:
  - choose:
      - conditions:
          - condition: state
            entity_id: input_select.ambiance_active_salon
            state: lum_sal_a
        sequence:
          - service: scene.turn_on
            target:
              entity_id: scene.scene_ambiance_a_off_salon
            data: {}
      - conditions:
          - condition: state
            entity_id: input_select.ambiance_active_salon
            state: lum_sal_b
        sequence:
          - service: scene.turn_on
            target:
              entity_id: scene.scene_ambiance_b_off_salon
            data: {}
      - conditions:
          - condition: state
            entity_id: input_select.ambiance_active_salon
            state: lum_sal_f
        sequence:
          - service: scene.turn_on
            target:
              entity_id: scene.scene_ambiance_f_off_salon
            data: {}
mode: single

EDIT même pas, répondu trop vite, ça n’utilise pas l’input_select
EDIT 2 : c’est mieux

EDIT:

Voilà pour le OFF complet

alias: Ambiance salon OFF
description: ""
trigger:
  - platform: state
    entity_id:
      - input_boolean.lum_sal_a
    to: "off"
  - platform: state
    entity_id:
      - input_boolean.lum_sal_b
    to: "off"
  - platform: state
    entity_id:
      - input_boolean.lum_sal_f
    to: "off"
condition:
  - condition: state
    entity_id: input_boolean.lum_sal_a
    state: "off"
  - condition: state
    entity_id: input_boolean.lum_sal_b
    state: "off"
  - condition: state
    entity_id: input_boolean.lum_sal_f
    state: "off"
action:
  - choose:
      - conditions:
          - condition: state
            entity_id: input_select.ambiance_active_salon
            state: lum_sal_a
        sequence:
          - service: scene.turn_on
            target:
              entity_id: scene.scene_ambiance_b_off_salon
            data: {}
      - conditions:
          - condition: state
            entity_id: input_select.ambiance_active_salon
            state: lum_sal_b
        sequence:
          - service: scene.turn_on
            target:
              entity_id: scene.scene_ambiance_b_off_salon
            data: {}
      - conditions:
          - condition: state
            entity_id: input_select.ambiance_active_salon
            state: lum_sal_f
        sequence:
          - service: scene.turn_on
            target:
              entity_id: scene.scene_ambiance_b_off_salon
            data: {}
mode: single

En fait j’ai qu’une scène pour éteindre, c’est scene.scene_ambiance_b_off_salon la scene.scene_ambiance_a_off_salon et scene.scene_ambiance_f_off_salon n’existe pas mais aucune importance je pense, je peux mettre partout la même. Ca servira le jour ou je veux différencier les off

Il ne reste plus que la gestion des inter. Pour l’inter scène A, si j’utilise ce code, ça ne fonctionne pas. Ca éteint la scène active (disons que c’est la B comme exemple), ça c’est OK mais quand je l’active pour allumer la scène A ça ne fonctionne pas, ça fait un toggle avec scène précédente, la B

alias: Interrupteur mural salon
description: ""
trigger:
  - platform: event
    event_type: xiaomi_aqara.click
    event_data:
      entity_id: binary_sensor.wall_switch_left_sal
      click_type: single
condition: []
action:
  - choose:
      - conditions:
          - condition: state
            entity_id: input_select.ambiance_active_salon
            state: lum_sal_f
        sequence:
          - service: input_boolean.toggle
            metadata: {}
            data: {}
            target:
              entity_id: input_boolean.lum_sal_f
      - conditions:
          - condition: state
            entity_id: input_select.ambiance_active_salon
            state: lum_sal_a
        sequence:
          - service: input_boolean.toggle
            metadata: {}
            data: {}
            target:
              entity_id: input_boolean.lum_sal_a
      - conditions:
          - condition: state
            entity_id: input_select.ambiance_active_salon
            state: lum_sal_b
        sequence:
          - service: input_boolean.toggle
            metadata: {}
            data: {}
            target:
              entity_id: input_boolean.lum_sal_b
mode: single