Aide sur les commandes Infos dans MQTT Manager

Bonjour,

Je suis à la recherche d’informations pour savoir si il est possible de réaliser un ‹ hack › dans le plugin JeeZigbee pour suppléer un problème avec Zigbee2mqtt.
J’ai mis dans ce post les pistes que j’ai explorées en espérant que quelqu’un puisse m’éclairer SVP.

Pour donner un peu du contexte, j’utilise :

  • Core stable 4.3.17
  • Plugin MQTT Manager (mqtt2) en mode broker local
  • JeeZigbee (z2m) avec une clé Conbee2 (Zigbee2mqtt en version 1.33.2)

Le but de ma manip est d’utiliser ma télécommande Sunricher ZG2858A qui est compatible avec Zigbee2MQTT.

Cette même page du produit indique également que l’appareil expose

  • Battery (numeric)
  • Action (enum)
  • Linkquality (numeric)

Ces commandes sont bien créées dans le plugin lorsque j’inclus le device.
Également, quand je me connecte sur l’interface de Zigbee2mqtt et que je vais voir le device, je vois bien ces 3 éléments exposés dans l’onglet ‹ expose ›.
Donc tout va bien côté Jeedom, le problème a l’air d’être dans Zigbee2mqtt.

Ma problématique :

Etant donné que ces informations ne suffisent pas à utiliser cette télécommande, j’aimerais récupérer les infos de couleur et de température de couleur que la télécommande envoie bien et que Zigbee2mqtt reçoit bien, cf. l’onglet ‹ État › de l’interface Zigbee2mqtt :

{
    "battery": 100,
    "last_seen": "2023-11-16T11:59:37.555Z",
    "linkquality": 255,
    "action": "color_move_ep1",
    "action_color_temperature": 161,
    "action_group": 57857,
    "action_transition_time": 0,
    "device": {
       //... pas d'intérêt
    },
    "action_color": {
        "x": 0.382,
        "y": 0.611
    }
}

Les pistes explorées :

Piste 1 : Ajouter des commandes Infos
J’essaye donc de récupérer les champs ‹ action_color_temperature › et ‹ action_color ›
Je créé donc deux commande info dans le plugin :

  • 1 numérique avec comme logical ID : action_color_temperature
    => OK : j’ai bien l’info qui remonte .
  • 1 autre avec comme logical ID : action_color
    => NOK : j’ai une info « vide » ou erronnée qui remonte (mais qqch qui remonte quand-même)

Piste 2 : Rajouter encore des commandes Infos
Ne m’avouant pas vaincu, j’essaye de récupérer les infos de action_color séparément (x et y) dans 2 commandes quitte à me débrouiller avec un virtuel ensuite :

  • 1 avec le logical ID: action_color::x
  • 1 avec le logical ID: action_color::y

Là-dessus pas de chances, rien ne remonte.

Piste 3 : Utiliser MQTT Manager
J’essaye tant bien que mal de rajouter des commandes dans un nouvel appareil.
Je comprends de la doc que c’est possible de le faire donc je vais dans cette direction.
Je m’aide également de ce post de Loïc pour bien configurer (dans mon cas, je mets uniquement zigbeemqtt dans le topic racine et dans la commande je mets bien le topic : 0x84ba20fffec4b737/action_color) mais rien n’y fait.

Je sais que je ne peux pas faire de get sur action_color, peut-être est-ce dû à ça ?
J’abandonne donc cette piste.

Piste 4 : Retour sur la piste 1
En me replongeant dessus, je sais que l’info de couleur remontée par la télécommande est en format x/y (CIE 1931).
Je regarde donc pour comparer une de mes ampoules RGB dans l’interface Zigbee2mqtt et je vois bien dans l’onglet ‹ Etat › ces infos :

 "color": {
        "x": 0.4691,
        "y": 0.4125
}

Bingo, donc l’information remontée par la télécommande est structurée pareillement que cette ampoule, il y a de l’espoir.

Je pousse donc la comparaison plus loin je constate une différence dans les informations de la commande de l’ampoule, dans le champ configuration, je vois marqué :

{"color_mode":"xy","returnStateValue":"", [etc.]

Cependant ma commanque info sur le logical ID action_color créée en piste 1 n’a pas ce color_mode:xy !

N’arrivant pas à trouver ce qu’il faut faire pour rajouter cet attribut proprement, je décide de faire le changement directement dans le base de donnée (pas bien!).
Pas de soucis à ce niveau là, mais mon problème n’est pas résolu pour autant, la remontée ne se fait toujours pas.

Et c’est là où je suis bloqué

Effectivement, je constate que l’ampoule RGB en question même si elle envoie bien la couleur au format x/y, l’information remontée dans mon affichage de Jeedom est sous la forme #aabbcc, il y a donc une conversion quelque part qui m’échappe et que je n’arrive pas à reproduire pour la télécommande.

Tout ce post pour en arriver là : est-ce que quelqu’un aurait une piste pour faire en sorte que ça marche SVP ?

Dans le même temps, je vais essayer de voir avec le projet Zigbee2mqtt pour « exposer » les infos manquantes.

Bonjour,

La beta de demain (plugin jeezigbee) devrait corriger ton soucis (il faut mettre action_color en logical id dans la commande).

Si ce n’est pas le cas il faudra me donner les logs en debug alors pour que je puisse corriger.

Bonjour @Loic,

Je te remercie beaucoup pour ta rapidité impressionnante.
Je n’ai pu tester qu’à l’instant la beta (2023-11-17 01:01:48) et je te confirme qu’elle fonctionne parfaitement.

Merci encore et bon week-end.

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.