Clé SONOFF Zigbee 3.0 USB ZBDongle-P

J’ai eu le même souci. Mettre sur ZNP/TI ne change pas le paramètre dans le fichier de conf de Z2M. Il faut l’éditer à la main avec l’éditeur de fichier de jeedom. Trouver le fichier configuration.yaml dans le dossier du plug-in et chercher adapter: remplacer ezsp par zstack

3 « J'aime »

Effectivement, j’ai remplacé ezsp par zstack dans le fichier configuration.yaml du répertoire /plugins/z2m/data/.

Le démon ne démarre toujours pas.
Voici le log de z2md avec une nouvelle erreur :

Zigbee2MQTT:debug 2023-09-13 19:59:27: Loaded state from file /var/www/html/plugins/z2m/data/state.json
Zigbee2MQTT:info  2023-09-13 19:59:27: Logging to console and directory: '/var/www/html/plugins/z2m/data/log/2023-09-13.19-59-27' filename: log.txt
Zigbee2MQTT:debug 2023-09-13 19:59:27: Removing old log directory '/var/www/html/plugins/z2m/data/log/2023-09-13.15-30-12'
Zigbee2MQTT:info  2023-09-13 19:59:28: Starting Zigbee2MQTT version 1.33.0 (commit #f224ef7)
Zigbee2MQTT:info  2023-09-13 19:59:28: Starting zigbee-herdsman (0.18.5)
Zigbee2MQTT:debug 2023-09-13 19:59:28: Using zigbee-herdsman with settings: '{"adapter":{"concurrent":null,"delay":null,"disableLED":false},"backupPath":"/var/www/html/plugins/z2m/data/coordinator_backup.json","databaseBackupPath":"/var/www/html/plugins/z2m/data/database.db.backup","databasePath":"/var/www/html/plugins/z2m/data/database.db","network":{"channelList":[11],"extendedPanID":[221,221,221,221,221,221,221,221],"networkKey":"HIDDEN","panID":6754},"serialPort":{"adapter":"zstack","path":"/dev/ttyUSB1"}}'
Zigbee2MQTT:error 2023-09-13 20:00:34: Error while starting zigbee-herdsman
Zigbee2MQTT:error 2023-09-13 20:00:34: Failed to start zigbee
Zigbee2MQTT:error 2023-09-13 20:00:34: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start.html for possible solutions
Zigbee2MQTT:error 2023-09-13 20:00:34: Exiting...
Zigbee2MQTT:error 2023-09-13 20:00:34: Error: network commissioning timed out - most likely network with the same panId or extendedPanId already exists nearby
    at ZnpAdapterManager.beginCommissioning (/var/www/html/plugins/z2m/resources/zigbee2mqtt/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/manager.ts:347:23)
    at ZnpAdapterManager.start (/var/www/html/plugins/z2m/resources/zigbee2mqtt/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/manager.ts:92:17)
    at Controller.start (/var/www/html/plugins/z2m/resources/zigbee2mqtt/node_modules/zigbee-herdsman/src/controller/controller.ts:132:29)
    at Zigbee.start (/var/www/html/plugins/z2m/resources/zigbee2mqtt/lib/zigbee.ts:60:27)
    at Controller.start (/var/www/html/plugins/z2m/resources/zigbee2mqtt/lib/controller.ts:101:27)
    at start (/var/www/html/plugins/z2m/resources/zigbee2mqtt/index.js:107:5)

1 « J'aime »

Est ce que la commande « ls -l /dev/serial/by-id » te remonte bien le port de ta clé ?

Oui, voici le résultat :

ce qui correspond bien à ce que j’indique dans la configuration :

Hello,
As-tu tenté de mettre /dev/ttyUSB0 comme port du contrôleur?

Dans le log on voit usb1 et pas 0.

En fait, à force de changer de clé (entre la Popp et la Sonoff), le RPI m’a passé la clé en USB1. Mais depuis, je suis repassé en USB0. Je ne sais pas pourquoi le RPI a momentanément changé…

Je viens de tester, mais aucun changement.

Quand je regarde le dernier log :

Zigbee2MQTT:error 2023-09-13 20:00:34: Error: network commissioning timed out - most likely network with the same panId or extendedPanId already exists nearby
    at ZnpAdapterManager.beginCommissioning (/var/www/html/plugins/z2m/resources/zigbee2mqtt/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/manager.ts:347:23)
    at ZnpAdapterManager.start (/var/www/html/plugins/z2m/resources/zigbee2mqtt/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/manager.ts:92:17)
    at Controller.start (/var/www/html/plugins/z2m/resources/zigbee2mqtt/node_modules/zigbee-herdsman/src/controller/controller.ts:132:29)
    at Zigbee.start (/var/www/html/plugins/z2m/resources/zigbee2mqtt/lib/zigbee.ts:60:27)
    at Controller.start (/var/www/html/plugins/z2m/resources/zigbee2mqtt/lib/controller.ts:101:27)
    at start (/var/www/html/plugins/z2m/resources/zigbee2mqtt/index.js:107:5)

et suite aux recherches que j’ai faites sur le net, je pense que le problème vient d’un réseau déjà existant (celui créé avec ma clé Popp) et qui rentre en conflit (même panId) avec le nouveau réseau qui serait créé avec ma nouvelle clé Sonoff.

Bonjour,

Mes plugins sont à jour de cette nuit et le bug est encore présent pour JeeZigbee avec le paramétrage du dongle Sonoff.

C’est simple j’ai une Zigate+ et j’ai voulu la remplacer par une Sonoff P, je ne comprenais pas car j’avais sans arrêt une erreur avec « ZiGateAdapter.start » alors que je n’avais plus la Zigate donc j’ai même supprimé les 3 modules Zigbee en test mais toujours la même chose.

Puis j’ai testé les autres types de contrôleur dans la config de JeeZigbee/z2m pour voir et c’était bien des erreurs différentes.

Là où c’est intéressant c’est que j’ai testé avec « Deconz/Conbee » en dernier puis j’ai remis sur « ZNP/TI », mais il a l’air de rester sur le dernier sélectionné avant ZNP :

> zigbee2mqtt@1.33.0 start
> node index.js
Zigbee2MQTT:debug 2023-09-21 09:45:59: Loaded state from file /var/www/html/plugins/z2m/data/state.json
Zigbee2MQTT:info  2023-09-21 09:45:59: Logging to console and directory: '/var/www/html/plugins/z2m/data/log/2023-09-21.09-45-59' filename: log.txt
Zigbee2MQTT:debug 2023-09-21 09:45:59: Removing old log directory '/var/www/html/plugins/z2m/data/log/2023-09-21.08-55-27'
Zigbee2MQTT:info  2023-09-21 09:46:00: Starting Zigbee2MQTT version 1.33.0 (commit #f224ef7)
Zigbee2MQTT:info  2023-09-21 09:46:00: Starting zigbee-herdsman (0.18.5)
Zigbee2MQTT:debug 2023-09-21 09:46:00: Using zigbee-herdsman with settings: '{"adapter":{"concurrent":null,"delay":null,"disableLED":false},"backupPath":"/var/www/html/plugins/z2m/data/coordinator_backup.json","databaseBackupPath":"/var/www/html/plugins/z2m/data/database.db.backup","databasePath":"/var/www/html/plugins/z2m/data/database.db","network":{"channelList":[11],"extendedPanID":[221,221,221,221,221,221,221,221],"networkKey":"HIDDEN","panID":6754},"serialPort":{"adapter":"deconz","path":"/dev/ttyUSB2"}}'
Zigbee2MQTT:error 2023-09-21 09:46:11: Error while starting zigbee-herdsman
Zigbee2MQTT:error 2023-09-21 09:46:11: Failed to start zigbee
Zigbee2MQTT:error 2023-09-21 09:46:11: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start.html for possible solutions
Zigbee2MQTT:error 2023-09-21 09:46:11: Exiting...
Zigbee2MQTT:error 2023-09-21 09:46:11: undefined

Donc il persiste à rester sur {« adapter »:« deconz »,« path »:« /dev/ttyUSB2 »} quoi que je fasse (réenregistrer les paramètres x fois) par contre je ne suis pas allé bricoler de fichier de config parce que j’aimerai quand même que cela fonctionne depuis l’interface.

Par ailleurs je ne sais pas si le port du contrôleur sur « Auto » fonctionne, en tout cas pour moi il n’a jamais fonctionné :

Zigbee2MQTT:error 2023-09-16 01:26:17: Error: failed to connect to zigate adapter Error while opening serialPort 'Error: Error: No such file or directory, cannot open auto'

Voilà je ne vois pas quoi ajouter d’autre pour l’instant :sweat_smile:

EDIT : Juste pour tester j’ai édité le fichier /var/www/html/plugins/z2m/data/configuration.yaml qui a bien « adapter: deconz » donc j’ai remplacé par « adapter: zstack » et c’est bon « « serialPort »:{« adapter »:« zstack »,« path »: »/dev/ttyUSB2"}" , donc j’ai remis sur Deconz puis Zigate c’était pris en compte, puis remis sur ZNP/TI et même problème d’adaptateur non modifié dans configuration.yaml

EDIT 2 : dans /var/www/html/plugins/z2m/core/class/z2m.class.php il y a :

   if (config::byKey('controller', 'z2m') != 'ti') {
      $configuration['serial']['adapter'] = config::byKey('controller', 'z2m');
    }

donc je suppose que le problème vient du fait que si c’est un type ZNP/TI (= ti) alors le contrôleur Sonoff n’est pas reporté dans configuration.yaml lorsque le démon est démarré et que ce fichier est modifié à la volée par z2m.

oui cela semble être le contournement obligatoire actuellement :confused: Problème Dongle Sonoff Zigbee 3.0 suite à court circuit? - #22 par Tonio16

Bonjour,
Pour information le bug sur le ti sera corrigé dans la beta de demain du plugin.

Pour le soucis de network commissionned timeout je vous invite a consulter ce sujet CC2652RB stick Error: network commissioning timed out - most likely network with the same panId or extendedPanId already exists nearby · Issue #12953 · Koenkk/zigbee2mqtt · GitHub

1 « J'aime »

Hello
Pour commencer, merci à tous pour vos info fournies dans ce sujet.

Je suis en train de remplacer ma clé conbee II par une Sonoff-P et j’ai rencontré les mêmes problèmes. Vos information m’ont permis de résoudre rapidement le problème du type d’adapter.

Le souci de « same panId » m’a posé plus de difficultés. J’ai tenté de flasher mon adapter avec le dernier puis l’avant dernier firmware sans résultat. Il semble que la suppression d fichier data/coordinator_backup.json a résolu le soucis. Mais je ne sais pas si cette suppression aurait été suffisante si je l’avais fait dès le début.

Je vais maintenant pouvoir commencer à réinclure mes équipements…

1 « J'aime »

Je m’étais réjouis un peu trop vite. J’ai encore eu des problèmes.

Finalement, j’ai fait un restore et tout recommencé depuis le début pour arriver à nouveau au souci du démon qui ne plante avec le message ...same panId....
J’ai alors édité le fichier data/configuration.yaml et ajouté une ligne channel=12 sous advanced:

...
...
advanced:
  last_seen: ISO_8601
  log_level: debug
  channel: 12
  network_key:
    - 202
    - 203
...
...

A ce que j’ai compris lors de mes recherches sur internet, les équipements qui ont été inclus dans l’ancien contrôleur envoient de trames avec le panId qui a été repris sur le nouveau contrôleur. Il y avait donc « collision ». Une solution aurai peut-être été de modifier le panId pour le nouveau contrôleur mais je n’ai pas trouver comment le faire.

Il semble qu’il aurai aussi été possible de couper l’alimentation sur TOUS les routers de l’ancien réseau mais c’était trop lourd pour me lancer dans l’opération.

J’ai préféré configurer le nouveau contrôleur pour qu’il utilise un canal différent et ne voie donc plus les devices de l’ancien réseau.

Le canal 12 n’existe par en zigbee il me semble.

Voir cette discussion:

Meme si il semble que le pan_id generate soit present depuis 1.33

Antoine

J’ai d’abord tenté avec le 10 mais j’ai eu un message d’erreur dans les log z2md me disant que ce canal n’existe pas. J’ai alors mis le 12 et ça a fonctionné. Pour le moment, j’ai inclus du Sonoff et du Xiaomi sans problème.

J’avais tenté de mettre GENERATE pour le pan_id mais sans résultat (il est possible/probable que je ne l’avais pas fait au bon endroit).

Il semble, selon ce message Informations sur cohabitation Zigbee et Wifi que zigbee utilise les canaux 11 à 26.

Bonjour @ktn,

Sous l’interface Z2M tu peux changer le canal Zigbee et il y a une recommandation écrite juste en dessous du champ ou tu peux inscrire le canal Zigbee : Canal 11 - 15 - 20 ou 25

Je pense que cette recommandation n’est pas là par hasard :grin:

Merci pour l’info.
Vu que je ne pouvais pas démarrer le deamon, je n’avais pas accès à l’interface de Zigbee2MQTT. J’ai donc tâtonner en faisant des modifs directement dans les fichiers de config.

Vu que je n’avais pas encore commencer à inclure les modules montés derrière des prises ou interrupteurs, j’ai pu revenir sur la canal 11 avec changement de pan_id.

Pour info:
Selon ce que j’ai pu observer, les modifications dans le fichier resources/zigbee2mqtt/data/configuration.yaml ne sont pas prises en compte. Il faut modifier le fichier data/configuration.yaml. Mais le mieux est de passer par les interfaces web lorsque c’est possible.

Bonjour @ktn,

Le canal se change sous l’interface Z2M mais, attention, si vous changez le canal Zigbee sans faire une manip supplémentaire le démon va tomber sans arrêt.
La manip supplémentaire consiste « juste » à « supprimer » (mieux : renommer) un fichier (Le fichier d’origine se recréera automatiquement après). Donc il faut :

  1. Changer le canal sous l’interface Z2M. (On constate tout de suite après que le démon s’arrête en permanence…)

  2. Arreter/désactiver le plugin Jeezigbee

  3. Aller sous Systemeconfiguration>_OS/DBEditeur de Fichiers
    Puis à gauche : html / Plugins / z2m / data et il faut renommer le fichier coordinator_backup.json en coordinator_backup-json.old (par exemple et au cas où… on ne sait jamais !)
    (Après la manip terminée on pourra revenir au même endroit et constater qu’un nouveau coordinator_backup.json est bien présent)

  4. On active le plugin Jeezigbee et on redémarre le démon (s’il ne l’a pas fait de lui même).
    Tout devrait être stable maintenant et vous avez changé de canal zigbee :wink: :smiley:

J’ai vu cette astuce dans community et je me le suis noté pour l’appliquer (Et cela marche du tonnerre !) mais je ne sait plus ou pour faire le lien avec le fil d’origine (désolé). :neutral_face:

→ Je précise que j’ai appliqué cette manip AVANT tous les problèmes récents Z2M du 20.09.2023 (donc j’espère que cette manip marche encore)

C’est souvent le canal par défaut. J’espère que tu n’as pas de voisins domotisés trop proches ! :grin:

Oui, mais le point 1 ne peut être fait que si le démon fonctionne. Dans mon cas, il détectait un autre réseau (des appareils qui était sur l’ancien contrôleur) avec la même panId. Je n’avais donc pas accès à l’inferface Z2M. J’ai donc modifié le fichier de config via une session ssh. La dificulté était de savoir quel fichier modifier.

Pour le fichier coordinator_backp.yml oui, il faut effectivement le supprimer. J’ai oublier d’en reparler mais c’est clairement indiqué dans le log si on ne l’a pas supprimé.