Il existe des devices plus ou moins bien intégrés et c'est le cas du contacteur Legrand 412170 (16A) ou 412171 (20A) qui de base est configuré en HP/HC via le signal fourni par le compteur et ou rien dans l'intégration ne permet à ce jour de la passer en mode on/off.

Vous allez me dire qu'il y est très bien géré en Zigbee2MQTT, ou que je pourrais utiliser quelque chose de moins cher (120 €). Là n'est pas la question, mon client (et ami) ne veut que du Legrand dans son tableau et pour simplifier au maximum je ne veux pas de modules externes, d'où ZHA.
L'intégration du contacteur sous ZHA se fait avec le petit bouton qui passe en rouge.
- Assurez-vous que la passerelle (ZHA) n'est pas en mode d'appairage
- Appuyez 8 secondes environ jusqu'à ce qu'il devienne rouge (reset)
- Passez maintenant votre passerelle ZHA en mode d'appairage
- Appuyez sur le bouton de réinitialisation 8 secondes environ pour lancer la procédure d'appairage
- Effectuez des clics successifs sur ce bouton toutes les secondes, jusqu'à ce que la LED devienne verte
La légende dit que les produits Legrand ne fonctionneraient que sur le canal 11, mon réseau est en 15 et d'autres l'on fait fonctionner en 25...
En cherchant sur la toile je me suis aperçu que nos collègues amateurs de Jeedom avaient réussit à changer les choses via deconz/Phoscon. J'avais donc les valeurs à changer, mais je n'ai pas réussit à les intégrer.
{"endpoint" : 1,"cluster":64513,"attribute":0,"manufacturer":64513,"name":"Mode","type":"select","values":[{"value":3,"name":"on/off"},{"value":4,"name":"hp/hc"}]},
Sous ZHA en natif on ne peut rien faire sur les clusters à ce niveau. Avec l'excellent ZHA Toolkit il y beaucoup plus de possibilités. Encore fallait t'il bien connaitre le domaine Zigbee afin de trouver le type de valeur d'attribut à configurer. Et là je remercie mdeweerd pour sa gentillesse et sa patience (je vous laisse lire l'échange ici).
Mise en place
Très simple !
- On commence par installer ZHA Toolkit
- Ensuite il n'y a qu'à lancer cette séquence dans les outils de développement (et on replace la valeur de l'attribut à 4 si on veut revenir au mode HP/HC)
service: zha_toolkit.attr_write
data:
ieee: 00:04:74:00:00:83:f4:f6
endpoint: 1
cluster: 64513
attribute: 0
attr_val: [3, 0]
attr_type: 0x09 # Devrait être facultatif si la lecture précède l'écriture.
# manf: 4129 # Ne pas définir le fabricant car cela ne semble pas nécessaire dans le cas présent.
event_done: legrand_done
write_if_equal: false

Bonus
Sur le même principe il est possible de configurer le comportement de la Led. Ca ne m'a pas intéressé mais voici les valeurs.
{"endpoint" : 1,"cluster":64513,"attribute":1,"manufacturer":64513,"name":"Led dark","type":"select","values":[{"value":0,"name":"Off"},{"value":1,"name":"On"}]}
{"endpoint" : 1,"cluster":64513,"attribute":2,"manufacturer":64513,"name":"Led if on","type":"select","values":[{"value":0,"name":"Off"},{"value":1,"name":"On"}]}
Consommation
Pour l'instant l'intégration ne présente que la puissance en W ou A (encore que je n'ai pas testé). Je vais voir quand j'aurais du temps si on peut ajouter le cumul en kWh, mais c'ets toujours possible sous HA avec Reiman ou Powercalc. Voici avec Powercalc qui s'il est bien configuré a l'avantage de créer les utilility_meter:
à coller dans Energy...
sensor:
- platform: powercalc
name: ECS
entity_id: switch.legrand_ecs
power_sensor_id: sensor.legrand_ecs_active_power
J'ai passé pas mal de temps (trop car j'ai aussi un job...) sur cette affaire, mais ça m'a permis d'explorer un peu les possibilité de ZHA Toolkit et comprendre qu'il est possible d'intégrer des objets ou des fonctions non reconnues.
Liens
En vrac, mes sources :