# Switch virtuel pour inversion d'état de SONOFF ZBMINI ZigBee

**URL:** <https://forum.hacf.fr/t/switch-virtuel-pour-inversion-detat-de-sonoff-zbmini-zigbee/33559>\
**Category:** Entraide Home Assistant\
**Created:** [Décembre 31, 2023, 10:05 UTC](https://forum.hacf.fr/t/switch-virtuel-pour-inversion-detat-de-sonoff-zbmini-zigbee/33559 "2023-12-31T10:05:41Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Kestouf](https://forum.hacf.fr/user_avatar/forum.hacf.fr/kestouf/32/48758_2.png) [@Kestouf](https://forum.hacf.fr/u/Kestouf)\
**Post date:** [Décembre 31, 2023, 10:05 UTC](https://forum.hacf.fr/t/switch-virtuel-pour-inversion-detat-de-sonoff-zbmini-zigbee/33559/1 "2023-12-31T10:05:41Z")

</div>

## Mon problème

Bonjour et merci d’être là pour nous aider

Depuis plusieurs jours, je cherche une solution pour l’inversion de l’état via un switch virtuel de mes modules SONOFF ZBMINI ZigBee. En cherchant sur votre forum, je suis tombé sur un poste pointant sur ce tuto : [Gestion du chauffage de bout en bout](https://hacf.fr/blog/confort-gestion-chauffage/) qui est exactement ma configuration.  
J’ai donc créé un switch virtuel en reprenant le code de la partie 8.1 du tuto et en le modifiant pour l’adapter à mon module (enfin, je pense l’avoir bien fait).  
Malheureusement, je tombe sur une erreur que je n’arrive pas régler. La voici:

> Avertissements de configuration  
> Invalid config for ‹&nbsp;switch&nbsp;› at configuration.yaml, line 11: required key ‹&nbsp;platform&nbsp;› not provided

Voici mes fichiers de configuration :  
configuration.yaml

```auto
# Loads default set of integrations. Do not remove.
default_config:

# Load frontend themes from the themes folder
frontend:
  themes: !include_dir_merge_named themes

automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
switch: !include switch.yaml

http :
  use_x_forwarded_for: true
  trusted_proxies:
  - XXX.XXX.XXX.XXX
  ip_ban_enabled: true
  login_attempts_threshold: 5

```

switch.yaml:

```auto
switch:
  - platform: template
    switches:
      convecteur:
        friendly_name: Inverse chauffage WC
        value_template: "{{ is_state('light.chauffage_wc_lumiere', 'off') }}"
        turn_on:
          service: switch.turn_off
          data:
            entity_id: light.chauffage_wc_lumiere
        turn_off:
          service: switch.turn_on
          data:
            entity_id: light.chauffage_wc_lumiere
        icon_template: "{% if is_state('light.chauffage_wc_lumiere', 'on') %}mdi:radiator-disabled{% else %}mdi:radiator{% endif %}"

```

Je me permets donc de poster ici pour vous demander votre aide.  
Merci

## Ma configuration

* * *

Texte à remplacer par votre configuration

## System Information

| version | core-2023.12.4 |
| --- | --- |
| installation\_type | Home Assistant OS |
| dev | false |
| hassio | true |
| docker | true |
| user | root |
| virtualenv | false |
| python\_version | 3.11.6 |
| os\_name | Linux |
| os\_version | 6.1.63-haos |
| arch | x86\_64 |
| timezone | Europe/Paris |
| config\_dir | /config |

> **Home Assistant Community Store**
>
> | GitHub API | ok |
> | --- | --- |
> | GitHub Content | ok |
> | GitHub Web | ok |
> | GitHub API Calls Remaining | 5000 |
> | Installed Version | 1.33.0 |
> | Stage | running |
> | Available Repositories | 1359 |
> | Downloaded Repositories | 2 |

> **Home Assistant Cloud**
>
> | logged\_in | false |
> | --- | --- |
> | can\_reach\_cert\_server | ok |
> | can\_reach\_cloud\_auth | ok |
> | can\_reach\_cloud | ok |

> **Home Assistant Supervisor**
>
> | host\_os | Home Assistant OS 11.2 |
> | --- | --- |
> | update\_channel | stable |
> | supervisor\_version | supervisor-2023.12.0 |
> | agent\_version | 1.6.0 |
> | docker\_version | 24.0.7 |
> | disk\_total | 30.8 GB |
> | disk\_used | 4.3 GB |
> | healthy | true |
> | supported | true |
> | board | ova |
> | supervisor\_api | ok |
> | version\_api | ok |
> | installed\_addons | File editor (5.7.0), Terminal & SSH (9.8.1) |

> **Dashboards**
>
> | dashboards | 1 |
> | --- | --- |
> | resources | 0 |
> | views | 1 |
> | mode | storage |

> **Recorder**
>
> | oldest\_recorder\_run | 30 décembre 2023 à 16:07 |
> | --- | --- |
> | current\_recorder\_run | 30 décembre 2023 à 17:49 |
> | estimated\_db\_size | 108.34 MiB |
> | database\_engine | sqlite |
> | database\_version | 3.41.2 |

\_\_\_

---

<div class="post-metadata">

**Author:** ![Herbs](https://forum.hacf.fr/user_avatar/forum.hacf.fr/herbs/32/8029_2.png) [@Herbs](https://forum.hacf.fr/u/Herbs)\
**Post date:** [Décembre 31, 2023, 10:16 UTC](https://forum.hacf.fr/t/switch-virtuel-pour-inversion-detat-de-sonoff-zbmini-zigbee/33559/2 "2023-12-31T10:16:09Z")

</div>

Salut @Kestouf

Le `switch:` de la première ligne de `switch.yaml` est en trop (principe de base des include).

Donc tu dois le supprimer et revoir l’indentation comme ça :

```auto
- platform: template
  switches:
    convecteur:
      friendly_name: Inverse chauffage WC
      value_template: "{{ is_state('light.chauffage_wc_lumiere', 'off') }}"
      turn_on:
        service: switch.turn_off
        data:
          entity_id: light.chauffage_wc_lumiere
      turn_off:
        service: switch.turn_on
        data:
          entity_id: light.chauffage_wc_lumiere
      icon_template: "{% if is_state('light.chauffage_wc_lumiere', 'on') %}mdi:radiator-disabled{% else %}mdi:radiator{% endif %}"  

```

---

<div class="post-metadata">

**Author:** ![Nothing](https://forum.hacf.fr/user_avatar/forum.hacf.fr/nothing/32/36642_2.png) [@Nothing](https://forum.hacf.fr/u/Nothing)\
**Post date:** [Décembre 31, 2023, 10:51 UTC](https://forum.hacf.fr/t/switch-virtuel-pour-inversion-detat-de-sonoff-zbmini-zigbee/33559/3 "2023-12-31T10:51:49Z")

</div>

Bj

tu peux regarde ceci aussi

> [@Demande d'aide Aqara SSM-02 fil pilote](https://forum.hacf.fr/t/demande-daide-aqara-ssm-02-fil-pilote/21709/9):
>
> Hello de rien , des fois aller au plus simple et roule !! wink je te donne un de mes template sensor pour inversé les commande si besoin. - platform: template switches: rad\_entree: friendly\_name: Radiateur Entrée icon\_template: mdi:radiator value\_template: "{{ is\_state('switch.radiateur\_entree', 'off') }}" turn\_on: service: switch.turn\_off entity\_id: switch.radiateur\_entree turn\_off: service: switch.tu…

---

<div class="post-metadata">

**Author:** ![Kestouf](https://forum.hacf.fr/user_avatar/forum.hacf.fr/kestouf/32/48758_2.png) [@Kestouf](https://forum.hacf.fr/u/Kestouf)\
**Post date:** [Décembre 31, 2023, 11:10 UTC](https://forum.hacf.fr/t/switch-virtuel-pour-inversion-detat-de-sonoff-zbmini-zigbee/33559/4 "2023-12-31T11:10:15Z")

</div>

Merci @Herbs pour ta réponse rapide.  
Ça a marché, pourtant j’avais essayé de le retirer après avoir lu un poste parlant des includes, mais ça m’ajouter une nouvelle erreur qui, je ne sais pas pourquoi, n’est plus là et c’est tant mieux.  
Si tu me permets, je voudrais te prendre encore un peu de temps, car maintenant que j’ai mon switch virtuel je voudrais l’ajouter à mon dashboard. Mais je ne le vois pas dans la liste «&nbsp;par entité&nbsp;» ni sous le nom «&nbsp; **Inverse Chauffage WC** &nbsp;» ni «&nbsp; **convecteur** &nbsp;».  
Je ne comprends pas bien encore le fonctionnement HA. Pour moi, il devrait être affichable directement. Mais comme je ne le vois pas, je me demande si ce switch virtuel que j’ai créé est un «&nbsp;bouton&nbsp;» affichable directement ou il vient en surcouche sur un bouton existant pour le modifier visuellement.

---

<div class="post-metadata">

**Author:** ![Herbs](https://forum.hacf.fr/user_avatar/forum.hacf.fr/herbs/32/8029_2.png) [@Herbs](https://forum.hacf.fr/u/Herbs)\
**Post date:** [Décembre 31, 2023, 11:20 UTC](https://forum.hacf.fr/t/switch-virtuel-pour-inversion-detat-de-sonoff-zbmini-zigbee/33559/5 "2023-12-31T11:20:14Z")

</div>

> [@Kestouf](#):
>
> Merci

De rien 😉

L'entité devrait s'appeler `switch.convecteur`.

Au pire tu vas dans "Outils de développement \ États" et tu filtres :

 ![image](https://forum.hacf.fr/uploads/default/original/3X/5/1/51486533a3f3da5e984e1ac60207f48e1a2e13af.png)

Ça devrait t'aider à le retrouver.

PS : penses à passer le message en résolu 😉

---

<div class="post-metadata">

**Author:** ![Kestouf](https://forum.hacf.fr/user_avatar/forum.hacf.fr/kestouf/32/48758_2.png) [@Kestouf](https://forum.hacf.fr/u/Kestouf)\
**Post date:** [Décembre 31, 2023, 11:46 UTC](https://forum.hacf.fr/t/switch-virtuel-pour-inversion-detat-de-sonoff-zbmini-zigbee/33559/6 "2023-12-31T11:46:13Z")

</div>

Malheureusement, il n'apparait pas dans la liste :

 ![entité](https://forum.hacf.fr/uploads/default/original/3X/b/0/b0770eb3c7fd7b95205ef9324e9f5e2b9d9943ac.png)

Est-ce que cela peut être dû à une erreur dans l'appel du boitier par un mauvais nom " **light.chauffage\_wc\_lumiere**"

Voilà mon entité chauffage WC:

 ![zigbee chauffage WC](https://forum.hacf.fr/uploads/default/original/3X/e/a/eab2642005b2365fdced5c5474de481ae0bc50bc.png)

Merci

---

<div class="post-metadata">

**Author:** ![Kestouf](https://forum.hacf.fr/user_avatar/forum.hacf.fr/kestouf/32/48758_2.png) [@Kestouf](https://forum.hacf.fr/u/Kestouf)\
**Post date:** [Décembre 31, 2023, 11:52 UTC](https://forum.hacf.fr/t/switch-virtuel-pour-inversion-detat-de-sonoff-zbmini-zigbee/33559/7 "2023-12-31T11:52:16Z")

</div>

Ha c’est bon, j’ai dû redémarrer la totalité de me HA et il est apparue.

Merci beaucoup @Herbs et @Nothing
