plugin-ZIGBEE Beta

Salut nicolas

pour les commandes de batteries pour l’instant en zigbee de ce qui est de %tages
on ne les vois pas passée celà est peut être trés trés lent donc a surveiller dans le temps …

sur xiaomi c’est la commande info est 1::1::33

pour les valeurs de tension de de batterie celle-ci sont remontées
ajoute cette fois une commande 1::1::32 fait une division par 10 (#value#/10) pour l’afficher

pour tout ce qui n’est pas référencé je t’invite a remonter le brut du json
équipement / configuration / onglet information brute
bonne soirée

Salut Olive,

Merci pour les infos je vais essayer :wink:
Pour les remontées de JSON il y a un endroit en particulier pour les poster ou je fais ca a la suite de ce post ?

Bonne journée

Nicolas

Le post spécifique est dans la partie bêta testeur donc remonte le ici
en précisant bien le type de capteur sa référence et tout ce qui peut aider
fait un post par type de capteur.

les consignes de Loïc pour des capteurs inconnus :

Donner le modele exacte de votre module (avec un lien vers la page de vente)
Sur la page de l’équipement cliquer sur configuration puis onglet « Informations brutes » et envoyer le contenu à l’équipe Jeedom
Mettre le démon en debug (et le redemarrer), faire des actions sur l’équipement (si c’est un capteur de température faire varier la température par exemple, si c’est une vanne faire varier la consigne…) et envoyer le log en debug zigbee (attention a bien prendre le zigbee et pas le zigbeed)
Mettre l’image de votre module détourée (obligatoire si l’image n’est pas détourée en png avec transparence votre demande ne sera pas prise en compte)

Merci Olive

  1. Detecteur de fumee Xiaomi / Honeywell: https://xiao-mi.fr/produit/detecteur-de-fumee-alarme-incendie-sonore-et-visuelle-notification-telephone-avec-mi-home

je voulais mettre en pj : le JSON brute et le log Zigbee en debug sur lequel j’ai fait declencher l’alarme par une alumette … mais je suis pas autorisé en temps que « nouveau »
du coup,le JSON brut:

{
    "ieee": "00:15:8d:00:03:9d:ad:ad",
    "nwk": 28410,
    "status": 2,
    "lqi": "255",
    "rssi": "-52",
    "last_seen": "1603893584.2332237",
    "node_descriptor": "02:40:80:37:10:7f:64:00:00:00:64:00:00",
    "endpoints": [
        {
            "id": 1,
            "status": 1,
            "device_type": 1026,
            "profile_id": 260,
            "output_clusters": [
                {
                    "id": 25,
                    "name": "Ota",
                    "attributes": []
                }
            ],
            "input_clusters": [
                {
                    "id": 0,
                    "name": "BasicCluster",
                    "attributes": []
                },
                {
                    "id": 1,
                    "name": "Power Configuration",
                    "attributes": [
                        {
                            "id": 32,
                            "name": "battery_voltage",
                            "value": 30
                        },
                        {
                            "id": 33,
                            "name": "battery_percentage_remaining",
                            "value": 200
                        },
                        {
                            "id": 49,
                            "name": "battery_size",
                            "value": 8
                        },
                        {
                            "id": 51,
                            "name": "battery_quantity",
                            "value": 1
                        }
                    ]
                },
                {
                    "id": 3,
                    "name": "Identify",
                    "attributes": []
                },
                {
                    "id": 12,
                    "name": "AnalogInput",
                    "attributes": []
                },
                {
                    "id": 18,
                    "name": "MultistateInput",
                    "attributes": []
                },
                {
                    "id": 1280,
                    "name": "IAS Zone",
                    "attributes": [
                        {
                            "id": 16,
                            "name": "cie_addr",
                            "value": [
                                11,
                                19,
                                6,
                                255,
                                255,
                                46,
                                33,
                                0
                            ]
                        }
                    ]
                }
            ]
        }
    ]
}

cdlt

Nicolas

et j’ai pas le choix pour mettre le debug pareil
et le log en debug:

[2020-10-28 15:55:29][INFO] : Lancement démon zigbeed : /usr/bin/python3 /var/www/html/plugins/zigbee/resources/zigbeed/zigbeed.py --device auto --loglevel info --socketport 8089 --callback http://127.0.0.1:80/plugins/zigbee/core/php/jeeZigbee.php --apikey 1qNDVs5pkv3NyX8UAqSkc3biIZyxPjFS --cycle 0.3 --pid /tmp/jeedom/zigbee/deamon.pid --data_folder /var/www/html/plugins/zigbee/data --controller deconz --channel 11
[2020-10-28 16:03:26][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":{"1280":{"cmd":[{"value":"0","cluster_name":"IAS Zone"},{"value":"ZoneStatus.Alarm_1","cluster_name":"IAS Zone"}]}}}}}
[2020-10-28 16:03:26][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::0 => 0
[2020-10-28 16:03:26][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::1 => ZoneStatus.Alarm_1
[2020-10-28 16:03:26][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":[{"gcmd":{"65281-0-0":{"value":"\u0001!\ufffd\u000b\u0003(\u0016\u0004!\ufffd\u0013\u0005!!","cluster_name":"BasicCluster"}},"65281":{"value":"b'\x01!\xf9\x0b\x03(\x16\x04!\xa8\x13\x05!!\x00\x06$\x06\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d \xdf\x96#\x00\x02\x04\x02'","cluster_name":"BasicCluster"}},{"33":{"value":"200","cluster_name":"Power Configuration"},"32":{"value":"30","cluster_name":"Power Configuration"}}]}}}
[2020-10-28 16:03:26][DEBUG] : Search general command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::gcmd::65281-0-0 => !�(!�!!
[2020-10-28 16:03:26][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::65281 => b'\x01!\xf9\x0b\x03(\x16\x04!\xa8\x13\x05!!\x00\x06$\x06\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d \xdf\x96#\x00\x02\x04\x02'
[2020-10-28 16:03:26][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1::32 => 30
[2020-10-28 16:03:31][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":{"1280":{"cmd":[{"value":"0","cluster_name":"IAS Zone"},{"value":"ZoneStatus.Alarm_1","cluster_name":"IAS Zone"}]}}}}}
[2020-10-28 16:03:31][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::0 => 0
[2020-10-28 16:03:31][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::1 => ZoneStatus.Alarm_1
[2020-10-28 16:03:31][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":[{"gcmd":{"65281-0-0":{"value":"\u0001!\ufffd\u000b\u0003(\u0016\u0004!\ufffd\u0013\u0005!!","cluster_name":"BasicCluster"},"5-0-0":{"value":"lumi.sensor_smoke","cluster_name":"BasicCluster"}},"65281":{"value":"b'\x01!\xf9\x0b\x03(\x16\x04!\xa8\x13\x05!!\x00\x06$\x07\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d \xaa\x96#\x00\x00\x00\x03'","cluster_name":"BasicCluster"},"5":{"value":"lumi.sensor_smoke","cluster_name":"BasicCluster"}},{"33":{"value":"200","cluster_name":"Power Configuration"},"32":{"value":"30","cluster_name":"Power Configuration"}}]}}}
[2020-10-28 16:03:31][DEBUG] : Search general command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::gcmd::65281-0-0 => !�(!�!!
[2020-10-28 16:03:31][DEBUG] : Search general command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::gcmd::5-0-0 => lumi.sensor_smoke
[2020-10-28 16:03:31][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::65281 => b'\x01!\xf9\x0b\x03(\x16\x04!\xa8\x13\x05!!\x00\x06$\x07\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d \xaa\x96#\x00\x00\x00\x03'
[2020-10-28 16:03:31][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::5 => lumi.sensor_smoke
[2020-10-28 16:03:31][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1::32 => 30
[2020-10-28 16:03:37][INFO] : Lancement démon zigbeed : /usr/bin/python3 /var/www/html/plugins/zigbee/resources/zigbeed/zigbeed.py --device auto --loglevel debug --socketport 8089 --callback http://127.0.0.1:80/plugins/zigbee/core/php/jeeZigbee.php --apikey 1qNDVs5pkv3NyX8UAqSkc3biIZyxPjFS --cycle 0.3 --pid /tmp/jeedom/zigbee/deamon.pid --data_folder /var/www/html/plugins/zigbee/data --controller deconz --channel 11
[2020-10-28 16:03:38][DEBUG] : null
[2020-10-28 16:03:40][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":{"1280":{"cmd":[{"value":"0","cluster_name":"IAS Zone"},{"value":"ZoneStatus.0","cluster_name":"IAS Zone"}]}}}}}
[2020-10-28 16:03:40][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::0 => 0
[2020-10-28 16:03:40][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::1 => ZoneStatus.0
[2020-10-28 16:03:40][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":[{"gcmd":{"65281-0-0":{"value":"\u0001!\ufffd\u000b\u0003(\u0016\u0004!\ufffd\u0013\u0005!!","cluster_name":"BasicCluster"}},"65281":{"value":"b'\x01!\xf9\x0b\x03(\x16\x04!\xa8\x13\x05!!\x00\x06$\x08\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d ,\x96#\x00\x00\x00\x00'","cluster_name":"BasicCluster"}},{"33":{"value":"200","cluster_name":"Power Configuration"},"32":{"value":"30","cluster_name":"Power Configuration"}}]}}}
[2020-10-28 16:03:40][DEBUG] : Search general command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::gcmd::65281-0-0 => !�(!�!!
[2020-10-28 16:03:40][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::65281 => b'\x01!\xf9\x0b\x03(\x16\x04!\xa8\x13\x05!!\x00\x06$\x08\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d ,\x96#\x00\x00\x00\x00'
[2020-10-28 16:03:40][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1::32 => 30
[2020-10-28 16:04:40][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":{"1280":{"cmd":[{"value":"0","cluster_name":"IAS Zone"},{"value":"ZoneStatus.Alarm_1","cluster_name":"IAS Zone"}]}}}}}
[2020-10-28 16:04:40][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::0 => 0
[2020-10-28 16:04:40][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::1 => ZoneStatus.Alarm_1
[2020-10-28 16:04:40][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":[{"gcmd":{"65281-0-0":{"value":"\u0001!\ufffd\u000b\u0003(\u0017\u0004!\ufffd\u0013\u0005!!","cluster_name":"BasicCluster"}},"65281":{"value":"b'\x01!\xf9\x0b\x03(\x17\x04!\xa8\x13\x05!!\x00\x06$	\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d \x7f\x96#\x00\x02\x05\x02'","cluster_name":"BasicCluster"}},{"33":{"value":"200","cluster_name":"Power Configuration"}}]}}}
[2020-10-28 16:04:40][DEBUG] : Search general command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::gcmd::65281-0-0 => !�(!�!!
[2020-10-28 16:04:40][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::65281 => b'\x01!\xf9\x0b\x03(\x17\x04!\xa8\x13\x05!!\x00\x06$	\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d \x7f\x96#\x00\x02\x05\x02'
[2020-10-28 16:04:40][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":{"1":{"32":{"value":"30","cluster_name":"Power Configuration"}}}}}}
[2020-10-28 16:04:40][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1::32 => 30
[2020-10-28 16:04:42][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":{"1280":{"cmd":[{"value":"0","cluster_name":"IAS Zone"},{"value":"ZoneStatus.Alarm_1","cluster_name":"IAS Zone"}]}}}}}
[2020-10-28 16:04:42][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::0 => 0
[2020-10-28 16:04:42][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::1 => ZoneStatus.Alarm_1
[2020-10-28 16:04:42][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":[{"gcmd":{"65281-0-0":{"value":"\u0001!\ufffd\u000b\u0003(\u0017\u0004!\ufffd\u0013\u0005!!","cluster_name":"BasicCluster"}},"65281":{"value":"b'\x01!\xf9\x0b\x03(\x17\x04!\xa8\x13\x05!!\x00\x06$
\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d \x7f\x96#\x00\x00\x00\x02'","cluster_name":"BasicCluster"}}]}}}
[2020-10-28 16:04:42][DEBUG] : Search general command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::gcmd::65281-0-0 => !�(!�!!
[2020-10-28 16:04:42][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::65281 => b'\x01!\xf9\x0b\x03(\x17\x04!\xa8\x13\x05!!\x00\x06$
\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d \x7f\x96#\x00\x00\x00\x02'
[2020-10-28 16:04:42][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":{"1":{"33":{"value":"200","cluster_name":"Power Configuration"},"32":{"value":"30","cluster_name":"Power Configuration"}}}}}}
[2020-10-28 16:04:42][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1::32 => 30
[2020-10-28 16:04:48][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":{"1280":{"cmd":[{"value":"0","cluster_name":"IAS Zone"},{"value":"ZoneStatus.Alarm_1","cluster_name":"IAS Zone"}]}}}}}
[2020-10-28 16:04:48][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::0 => 0
[2020-10-28 16:04:48][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::1 => ZoneStatus.Alarm_1
[2020-10-28 16:04:48][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":[{"gcmd":{"65281-0-0":{"value":"\u0001!\ufffd\u000b\u0003(\u0017\u0004!\ufffd\u0013\u0005!!","cluster_name":"BasicCluster"},"5-0-0":{"value":"lumi.sensor_smoke","cluster_name":"BasicCluster"}},"65281":{"value":"b'\x01!\xf9\x0b\x03(\x17\x04!\xa8\x13\x05!!\x00\x06$\x0b\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d \x11\x96#\x00\x00\x00\x03'","cluster_name":"BasicCluster"},"5":{"value":"lumi.sensor_smoke","cluster_name":"BasicCluster"}},{"33":{"value":"200","cluster_name":"Power Configuration"},"32":{"value":"30","cluster_name":"Power Configuration"}}]}}}
[2020-10-28 16:04:48][DEBUG] : Search general command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::gcmd::65281-0-0 => !�(!�!!
[2020-10-28 16:04:48][DEBUG] : Search general command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::gcmd::5-0-0 => lumi.sensor_smoke
[2020-10-28 16:04:48][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::65281 => b'\x01!\xf9\x0b\x03(\x17\x04!\xa8\x13\x05!!\x00\x06$\x0b\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d \x11\x96#\x00\x00\x00\x03'
[2020-10-28 16:04:48][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::5 => lumi.sensor_smoke
[2020-10-28 16:04:48][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1::32 => 30
[2020-10-28 16:04:50][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":{"1280":{"cmd":[{"value":"0","cluster_name":"IAS Zone"},{"value":"ZoneStatus.0","cluster_name":"IAS Zone"}]}}}}}
[2020-10-28 16:04:50][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::0 => 0
[2020-10-28 16:04:50][DEBUG] : Search command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1280::cmd::1 => ZoneStatus.0
[2020-10-28 16:04:50][DEBUG] : {"devices":{"00:15:8d:00:03:9d:ad:ad":{"1":[{"gcmd":{"65281-0-0":{"value":"\u0001!\ufffd\u000b\u0003(\u0017\u0004!\ufffd\u0013\u0005!!","cluster_name":"BasicCluster"}},"65281":{"value":"b'\x01!\xf9\x0b\x03(\x17\x04!\xa8\x13\x05!!\x00\x06$\x0c\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d 
\x96#\x00\x00\x00\x00'","cluster_name":"BasicCluster"}},{"33":{"value":"200","cluster_name":"Power Configuration"},"32":{"value":"30","cluster_name":"Power Configuration"}}]}}}
[2020-10-28 16:04:50][DEBUG] : Search general command for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::gcmd::65281-0-0 => !�(!�!!
[2020-10-28 16:04:50][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::0::65281 => b'\x01!\xf9\x0b\x03(\x17\x04!\xa8\x13\x05!!\x00\x06$\x0c\x00\x01\x00\x00
!\x00\x00\x08!\x04\x10d 
\x96#\x00\x00\x00\x00'
[2020-10-28 16:04:50][DEBUG] : Search attribut for 00:15:8d:00:03:9d:ad:ad logicalId : 1::1::32 => 30

cdlt

STOP si vous n’utiliser pas le Tag </> ca va pas le faire …

donc j’ai rien vu pour l’instant

Bonjour,
Attention on est en beta, il faut donc avant toute demande :

  • mettre à jour le plugin
  • relancer le demon
  • refaire l’inclusion
  • m’envoyer le json (bien mettre la balise code sinon c’est illisible)), le nom du capteur, la ref et une photo

Ensuite je pourrais faire l’ajout dans le plugin dans 90% des cas. La par exemple ton json est pas bon mais c’est du je pense a l’inclusion sur une version du plugin qui date de quelques jours donc les basic sont pas remonté. Et sans les info dans les basics je peux pas faire de conf…

Idem j’ai corrigé un truc hier pour les batteries, alors pour l’instant j’ai toujours des soucis avec certain module dont les xiaomi qui remonte 200% de batterie ce qui n’est pas possible…

Bonjour,

merci a vous 2, je corrige tout ca …j’ai ete un peu trop enthousiaste a l’idée de partager des produits et de possibles données

Cdlt

Nicolas

C’est très bien et j’apprécie c’est juste qu’on doit cadrer dès le debut, on va avoir enormement de conf a faire donc faut ca soit carrée dès le debut.

2 « J'aime »

Super. Le plug in Zigbee est un générateur d’énergie spontanée. J’achète tout de suite les droits exclusifs et on part s’installer sur une ile paradisiaque (ou dans n’importe quel autre endroit paradisiaque qui conviendra la Team Jeedom). Surtout ne touchez plus à rien sur le Plug in :sunglasses: :+1: :surfing_man:

1 « J'aime »

Bonjour,
puis-je vous embêter aussi autour de ce plugin Beta?
J’aimerais vous faire part de mes essais sur votre nouveau plugin en cours de développement.

Jusqu’à présent j’utilisais le Zigbee2Mqtt, mais dès que j’ai appris la volonté de Jeedom de partir sur le développement de leur propre plugin, il a fallu que je teste.

Je suis reparti de zéro car j’ai observé des problèmes de port qui se mélangaient entre la Conbee II et la Z2M, quand on redémarre le RPI4 de temps en temps l’un est en ttyACM0 ou 1 et inversement. j’ai passé beaucoup de temps a trouver le problème et ai fait tellement de manip, que j’ai préférer partir de Zéro.

donc pour les base j’ai un RPI4 de 8Go avec SSD sur usb3.
Installation Debian 10 Buster complète avec interface graphique
Installation en ligne de commande :
# wget https://raw.githubusercontent.com/jeedom/core/master/install/install.sh
# chmod +x install.sh
# ./install.sh
L’installation de Jeedom V4 est OK.

après j’installe des truc perso genre dongle Enocean, server mqtt, et mDNS
je passe donc

Installation du plugin Zigbee
Recherche du port ls -l /dev/serial/by-id
Donc impec je repère le port ttyACM0

le Démon est maintenant mis à jour et lancé je vais donc tester l’appairage d’une ampoule Philips HUE White model « 806 lumen a60 9w »
acheté https://www.amazon.fr/Philips-Démarrage-Blanc-avec-inclus/dp/B016H0R7SE
N’ayant pas trouvé le bon model dans Jeedom je l’ai donc mis en LWB010
surement à tord

{
    "ieee": "00:17:88:01:04:ba:7d:29",
    "nwk": 48928,
    "status": 2,
    "lqi": "255",
    "rssi": "-49",
    "last_seen": "1604051695.7337463",
    "node_descriptor": "01:40:8e:0b:10:47:2d:00:00:00:2d:00:00",
    "endpoints": [
        {
            "id": 11,
            "status": 1,
            "device_type": 256,
            "profile_id": 49246,
            "output_clusters": [
                {
                    "id": 25,
                    "name": "Ota",
                    "attributes": []
                }
            ],
            "input_clusters": [
                {
                    "id": 0,
                    "name": "Basic",
                    "attributes": [
                        {
                            "id": 4,
                            "name": "manufacturer",
                            "value": "Philips"
                        },
                        {
                            "id": 5,
                            "name": "model",
                            "value": "LWB010"
                        }
                    ]
                },
                {
                    "id": 3,
                    "name": "Identify",
                    "attributes": []
                },
                {
                    "id": 4,
                    "name": "Groups",
                    "attributes": []
                },
                {
                    "id": 5,
                    "name": "Scenes",
                    "attributes": []
                },
                {
                    "id": 6,
                    "name": "On\/Off",
                    "attributes": []
                },
                {
                    "id": 8,
                    "name": "Level control",
                    "attributes": []
                },
                {
                    "id": 4096,
                    "name": "LightLink",
                    "attributes": []
                }
            ]
        },
        {
            "id": 242,
            "status": 1,
            "device_type": 97,
            "profile_id": 41440,
            "output_clusters": [
                {
                    "id": 33,
                    "name": "GreenPowerProxy",
                    "attributes": []
                }
            ],
            "input_clusters": [
                {
                    "id": 33,
                    "name": "GreenPowerProxy",
                    "attributes": []
                }
            ]
        }
    ]
}

j’essai de suivre le mod-op avec les balises
voici les infos du Démon zigbee après avoir joué avec l’ampoule

[2020-10-30 11:28:49][DEBUG] : http://127.0.0.1:8484/device/command type : PUT
[2020-10-30 11:28:52][DEBUG] : http://127.0.0.1:8484/device/command type : PUT
[2020-10-30 11:28:59][DEBUG] : http://127.0.0.1:8484/device/command type : PUT
[2020-10-30 11:29:02][DEBUG] : http://127.0.0.1:8484/device/command type : PUT
[2020-10-30 11:29:05][DEBUG] : http://127.0.0.1:8484/device/command type : PUT
[2020-10-30 11:29:07][DEBUG] : http://127.0.0.1:8484/device/command type : PUT

Toutes les commandes se passent bien par contre je n’ai aucun retour d’état de l’ampoule
allumage ampoule

[2020-10-30 11:33:32][DEBUG] : [DeviceHandler.prepare] Json arg : {'ieee': '00:17:88:01:04:ba:7d:29', 'cmd': [{'endpoint': 11, 'cluster': 'on_off', 'command': 'on', 'await': 1}], 'allowQueue': False}
[2020-10-30 11:33:32][DEBUG] : Sending Zigbee request with tsn 36 under 37 request id, data: b'012401'
[2020-10-30 11:33:32][DEBUG] : Command Command.aps_data_request (18, 37, 0, <DeconzAddressEndpoint address_mode=2 address=0xBF20 endpoint=11>, 260, 6, 1, b'\x01$\x01', 2, 0)
[2020-10-30 11:33:32][DEBUG] : Send: 0x124c001900120025000220bf0b040106000103000124010200
[2020-10-30 11:33:32][DEBUG] : Frame received: 0x124c00090002002225
[2020-10-30 11:33:32][DEBUG] : APS data request response: [2, <DeviceState.APSDE_DATA_REQUEST_SLOTS_AVAILABLE|2: 34>, 37]
[2020-10-30 11:33:32][DEBUG] : Frame received: 0x0e4d000700a600
[2020-10-30 11:33:32][DEBUG] : Device state changed response: [<DeviceState.128|APSDE_DATA_REQUEST_SLOTS_AVAILABLE|APSDE_DATA_CONFIRM|2: 166>, 0]
[2020-10-30 11:33:32][DEBUG] : Command Command.aps_data_confirm (0,)
[2020-10-30 11:33:32][DEBUG] : Send: 0x044d0007000000
[2020-10-30 11:33:32][DEBUG] : Frame received: 0x044d0013000c0022250220bf0b010000000000
[2020-10-30 11:33:32][DEBUG] : APS data confirm response for request with id 37: 00
[2020-10-30 11:33:32][DEBUG] : Request id: 0x25 'aps_data_confirm' for <DeconzAddressEndpoint address_mode=ADDRESS_MODE.NWK address=0xbf20 endpoint=11>, status: 0x00
[2020-10-30 11:33:32][DEBUG] : Frame received: 0x0e4e000700aa00
[2020-10-30 11:33:32][DEBUG] : Device state changed response: [<DeviceState.128|APSDE_DATA_REQUEST_SLOTS_AVAILABLE|APSDE_DATA_INDICATION|2: 170>, 0]
[2020-10-30 11:33:32][DEBUG] : Command Command.aps_data_indication (1, 1)
[2020-10-30 11:33:32][DEBUG] : Send: 0x174e000800010001
[2020-10-30 11:33:32][DEBUG] : Frame received: 0x174e0023001c0022020000010220bf0b04010600050018240b010000afff6bb2ffffcf
[2020-10-30 11:33:32][DEBUG] : APS data indication response: [28, <DeviceState.APSDE_DATA_REQUEST_SLOTS_AVAILABLE|2: 34>, <DeconzAddress address_mode=ADDRESS_MODE.NWK address=0x0000>, 1, <DeconzAddress address_mode=ADDRESS_MODE.NWK address=0xbf20>, 11, 260, 6, b'\x18$\x0b\x01\x00', 0, 175, 255, 107, 178, 255, 255, -49]
[2020-10-30 11:33:32][DEBUG] : [0xbf20:11:0x0006] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=36 command_id=Command.Default_Response>
[2020-10-30 11:33:32][DEBUG] : 'aps_data_indication' response from <DeconzAddress address_mode=ADDRESS_MODE.NWK address=0xbf20>, ep: 11, profile: 0x0104, cluster_id: 0x0006, data: b'18240b0100'
[2020-10-30 11:33:32][INFO] : 200 PUT /device/command (127.0.0.1) 26.68ms

règlage luminosité

[2020-10-30 11:34:59][DEBUG] : [DeviceHandler.prepare] Json arg : {'ieee': '00:17:88:01:04:ba:7d:29', 'cmd': [{'endpoint': 11, 'cluster': 'level', 'command': 'move_to_level', 'await': 1, 'args': ['133', '0']}], 'allowQueue': False}
[2020-10-30 11:34:59][DEBUG] : Sending Zigbee request with tsn 38 under 39 request id, data: b'012600850000'
[2020-10-30 11:34:59][DEBUG] : Command Command.aps_data_request (21, 39, 0, <DeconzAddressEndpoint address_mode=2 address=0xBF20 endpoint=11>, 260, 8, 1, b'\x01&\x00\x85\x00\x00', 2, 0)
[2020-10-30 11:34:59][DEBUG] : Send: 0x124f001c00150027000220bf0b040108000106000126008500000200
[2020-10-30 11:34:59][DEBUG] : Frame received: 0x124f00090002002227
[2020-10-30 11:34:59][DEBUG] : APS data request response: [2, <DeviceState.APSDE_DATA_REQUEST_SLOTS_AVAILABLE|2: 34>, 39]
[2020-10-30 11:34:59][DEBUG] : Frame received: 0x0e50000700a600
[2020-10-30 11:34:59][DEBUG] : Device state changed response: [<DeviceState.128|APSDE_DATA_REQUEST_SLOTS_AVAILABLE|APSDE_DATA_CONFIRM|2: 166>, 0]
[2020-10-30 11:34:59][DEBUG] : Command Command.aps_data_confirm (0,)
[2020-10-30 11:34:59][DEBUG] : Send: 0x04500007000000
[2020-10-30 11:34:59][DEBUG] : Frame received: 0x04500013000c0022270220bf0b010000000000
[2020-10-30 11:34:59][DEBUG] : APS data confirm response for request with id 39: 00
[2020-10-30 11:34:59][DEBUG] : Request id: 0x27 'aps_data_confirm' for <DeconzAddressEndpoint address_mode=ADDRESS_MODE.NWK address=0xbf20 endpoint=11>, status: 0x00
[2020-10-30 11:34:59][DEBUG] : Frame received: 0x0e51000700aa00
[2020-10-30 11:34:59][DEBUG] : Device state changed response: [<DeviceState.128|APSDE_DATA_REQUEST_SLOTS_AVAILABLE|APSDE_DATA_INDICATION|2: 170>, 0]
[2020-10-30 11:34:59][DEBUG] : Command Command.aps_data_indication (1, 1)
[2020-10-30 11:34:59][DEBUG] : Send: 0x1751000800010001
[2020-10-30 11:34:59][DEBUG] : Frame received: 0x17510023001c0022020000010220bf0b04010800050018260b000000afff72b2ffffd2
[2020-10-30 11:34:59][DEBUG] : APS data indication response: [28, <DeviceState.APSDE_DATA_REQUEST_SLOTS_AVAILABLE|2: 34>, <DeconzAddress address_mode=ADDRESS_MODE.NWK address=0x0000>, 1, <DeconzAddress address_mode=ADDRESS_MODE.NWK address=0xbf20>, 11, 260, 8, b'\x18&\x0b\x00\x00', 0, 175, 255, 114, 178, 255, 255, -46]
[2020-10-30 11:34:59][DEBUG] : [0xbf20:11:0x0008] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=38 command_id=Command.Default_Response>
[2020-10-30 11:34:59][DEBUG] : 'aps_data_indication' response from <DeconzAddress address_mode=ADDRESS_MODE.NWK address=0xbf20>, ep: 11, profile: 0x0104, cluster_id: 0x0008, data: b'18260b0000'
[2020-10-30 11:34:59][INFO] : 200 PUT /device/command (127.0.0.1) 35.37ms

et extinction

[2020-10-30 11:36:25][DEBUG] : [DeviceHandler.prepare] Json arg : {'ieee': '00:17:88:01:04:ba:7d:29', 'cmd': [{'endpoint': 11, 'cluster': 'on_off', 'command': 'off', 'await': 1}], 'allowQueue': False}
[2020-10-30 11:36:25][DEBUG] : Sending Zigbee request with tsn 42 under 43 request id, data: b'012a00'
[2020-10-30 11:36:25][DEBUG] : Command Command.aps_data_request (18, 43, 0, <DeconzAddressEndpoint address_mode=2 address=0xBF20 endpoint=11>, 260, 6, 1, b'\x01*\x00', 2, 0)
[2020-10-30 11:36:25][DEBUG] : Send: 0x125500190012002b000220bf0b04010600010300012a000200
[2020-10-30 11:36:25][DEBUG] : Frame received: 0x12550009000200222b
[2020-10-30 11:36:25][DEBUG] : APS data request response: [2, <DeviceState.APSDE_DATA_REQUEST_SLOTS_AVAILABLE|2: 34>, 43]
[2020-10-30 11:36:25][DEBUG] : Frame received: 0x0e56000700a600
[2020-10-30 11:36:25][DEBUG] : Device state changed response: [<DeviceState.128|APSDE_DATA_REQUEST_SLOTS_AVAILABLE|APSDE_DATA_CONFIRM|2: 166>, 0]
[2020-10-30 11:36:25][DEBUG] : Command Command.aps_data_confirm (0,)
[2020-10-30 11:36:25][DEBUG] : Send: 0x04560007000000
[2020-10-30 11:36:25][DEBUG] : Frame received: 0x04560013000c00222b0220bf0b010000000000
[2020-10-30 11:36:25][DEBUG] : APS data confirm response for request with id 43: 00
[2020-10-30 11:36:25][DEBUG] : Request id: 0x2b 'aps_data_confirm' for <DeconzAddressEndpoint address_mode=ADDRESS_MODE.NWK address=0xbf20 endpoint=11>, status: 0x00
[2020-10-30 11:36:25][DEBUG] : Frame received: 0x0e57000700aa00
[2020-10-30 11:36:25][DEBUG] : Device state changed response: [<DeviceState.128|APSDE_DATA_REQUEST_SLOTS_AVAILABLE|APSDE_DATA_INDICATION|2: 170>, 0]
[2020-10-30 11:36:25][DEBUG] : Command Command.aps_data_indication (1, 1)
[2020-10-30 11:36:25][DEBUG] : Send: 0x1757000800010001
[2020-10-30 11:36:25][DEBUG] : Frame received: 0x17570023001c0022020000010220bf0b040106000500182a0b000000afff79b2ffffd0
[2020-10-30 11:36:25][DEBUG] : APS data indication response: [28, <DeviceState.APSDE_DATA_REQUEST_SLOTS_AVAILABLE|2: 34>, <DeconzAddress address_mode=ADDRESS_MODE.NWK address=0x0000>, 1, <DeconzAddress address_mode=ADDRESS_MODE.NWK address=0xbf20>, 11, 260, 6, b'\x18*\x0b\x00\x00', 0, 175, 255, 121, 178, 255, 255, -48]
[2020-10-30 11:36:25][DEBUG] : [0xbf20:11:0x0006] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=42 command_id=Command.Default_Response>
[2020-10-30 11:36:25][DEBUG] : 'aps_data_indication' response from <DeconzAddress address_mode=ADDRESS_MODE.NWK address=0xbf20>, ep: 11, profile: 0x0104, cluster_id: 0x0006, data: b'182a0b0000'
[2020-10-30 11:36:25][INFO] : 200 PUT /device/command (127.0.0.1) 26.39ms

En espérant avoir bien suivi le protocole d’extraction des données.

Merci d’avance

Je remonte ces infos a Loïc sur le post beta testeur

Merci

Bonjours,

Est-ce du ZLL ? Si oui on a pas retour d’état en ZLL que en ZHA. Donc je me pose la question de faire des conf que avec les commandes la…

Pour info, il est possible de créer une règle pour affecter un alias au bon port et éviter les surprises. C’est détaillé dans la FAQ de Zigbee2MQTT : Verify that the user you run Zigbee2MQTT as has write access to the port.
Si le port est accédé par Jeedom, il doit falloir mettre www-data comme « owner ».

Bonjour @Kazymir,

Pour une ampoule Philips Hue,
dans Configuration du noeud / informations brutes,

Dans le Endpoint 11 :

  • si profile_id = 49246 => ZLL
  • si profile_id = 260 => ZHA

Avec le plugin zigbee (zigpy), à ce stade, pas de retour d’état si ZLL.

Exemple : Ampoule Philips LCT015 :
La Commande Etat (type Info, Binaire), Logical ID 11::6::0, n’est pas mise à jour (1 ou 0) sur une commande On ou Off.
Autrement dit, Endpoint 11, cluster entrant 6, On/Off → attributs vides)

EDIT 12/11/2020 :

Pour les ampoules ZLL, dans l’équipement, si elles n’existent pas déjà, ajouter les commandes :

Nom : Etat
Type : Info, Binaire
Logical ID : 11::6::0
(Type générique Lumière état)

Nom : Rafraîchir
Type : Action, Défaut
Logical ID : refresh

A ce stade du développement beta, si ces commandes existent, le plugin met à jour la commande Etat, suite a l’action des commandes On et Off.

akenad :slight_smile:

Merci beaucoup je vais regarder cela

Bonjour Loïc,
ravi de pouvoir causer avec l’un des dieux de Jeedom,
en effet il me semble que c’est du ZLL.
Pas d’inquiétude je reste patient.
On a déjà les commandes ce qui permet de faire déjà pleins de choses.
Merci à toi de répondre à ma requête.

Si je peux me permettre je remarque une nette fiabilité par rapport à la Z2M, ici votre système ne plante pas en cas de mauvaise réception d’une trame Green Power, même si cette dernière n’est pas encore configurable.
Choses qui m’insupportait, d’être obligé de la redémarrer dès que je sollicitait trop mon bouton Friends of hue de chez Enocean.
Avez vous une idée prévisionnelle de la compatibilité avec les boutons PTM215ZE ou PTM216 de chez Enocean?

Merci d’avance et longue vie à Jeedom

Bonjour,
Je vais donc les ajouter que avec les commandes sans retour d’état.

Pour le green power c’est prévu mais ca prendra longtemps très longtemps je pense, c’est vraiment pas simple cette partie en zigbee et il n’y a rien dans zigpy dessus pour le moment.

Là dessus je peux grandement vous aider. prenons exemple du PTM215ZE qui est similaire au PTM535Z que j’utilise (Denis et Thomas sont au courant)
Les émetteur zigbee GPD sont des émetteur simple (pas de réception) et envoient des trames clair. avec couche physique bien-sur

la trame reçu par la ConbeeII est du type (visible dans les log du plugin en mode debug)
0x196a0016000f008c309a2d51017a00000022470ba89a

Mac Header
19 contrôles de trame 2 octets pour identifier le type de trame, la version du protocole, l’adressage et le mode de sécurité
6a compteur d’envoie (en général un message est renvoyé 2 fois)
après je sais pas trop mais ça change jamais donc j’ai envie de dire dans l’immédiat on s’en fou.

Mac Payload
8c30 Contrôle des télégrammes (2 octets) Le champ Contrôle des télégrammes est réglé sur 0x308C indiquant que le PTM 535Z utilise une signature de charge utile de 4 octets basée sur une clé unique de l’appareil et un compteur de séquence de 4 octets
9a2d5101 id de l’émetteur ici 01512d9a
7a000000 soit 00 00 00 7a compteur du message
22 data du message
470ba89a Signature du télégramme (4 octets) Le champ Signature du télégramme sert à valider l’authenticité du télégramme. La signature du télégramme est calculée sur la base de la charge utile du télégramme en utilisant AES128

Donc les seul choses intéressante sont l’identité et la data le reste n’est pas utile à mon sens.