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

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 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 ‹ switch › at configuration.yaml, line 11: required key ‹ platform › not provided

Voici mes fichiers de configuration :
configuration.yaml

# 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:

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
___

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 :

- 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 %}"  

Bj

tu peux regarde ceci aussi

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 « par entité » ni sous le nom « Inverse Chauffage WC » ni « convecteur ».
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 « bouton » affichable directement ou il vient en surcouche sur un bouton existant pour le modifier visuellement.

De rien :wink:

L’entité devrait s’appeler switch.convecteur.

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

Ça devrait t’aider à le retrouver.

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

Malheureusement, il n’apparait pas dans la liste :

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:

Merci

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

Merci beaucoup @Herbs et @Nothing

1 « J'aime »