Zigbee2MQTT avec renifleur USB CC2531 (Help-me! Please)

Bonjour,
J’utilise un jeedom depuis quelque temps et j’ai rencontré une erreur lors de l’installation de la clé CC2531 avec ce tuto: | Zigbee2MQTT
J’ai suivi la procédure à la lettre et tout c’est bien passé par contre quand je refais la commande
cd /opt/zigbee2mqtt
npm start

j’obtiens un message d’erreur qui n’apparaissait pas lors de l’installation.
Après pas mal d’heures de recherche je suis reparti sur une nouvelle image de débian officiel mais j’ai exactement le même probléme.

J’obtiens le message d’erreur suivant:

zigbee2mqtt@1.15.0 start /opt/zigbee2mqtt
node index.js

Zigbee2MQTT:info  2020-10-05 14:05:00: Logging to console and directory: '/opt/zigbee2mqtt/data/log/2020-10-05.14-05-00' filename: log.txt
Zigbee2MQTT:info  2020-10-05 14:05:01: Starting Zigbee2MQTT version 1.15.0 (commit #1bccc5d)
Zigbee2MQTT:info  2020-10-05 14:05:01: Starting zigbee-herdsman...

Zigbee2MQTT:error 2020-10-05 13:53:47: Error while starting zigbee-herdsman
Zigbee2MQTT:error 2020-10-05 13:53:47: Failed to start zigbee
Zigbee2MQTT:error 2020-10-05 13:53:47: Exiting...
Zigbee2MQTT:error 2020-10-05 13:53:47: Error: Error while opening serialport 'Error: Error Resource temporarily unavailable Cannot lock port'
    at Znp.<anonymous> (/opt/zigbee2mqtt/node_modules/zigbee-herdsman/dist/adapter/z-stack/znp/znp.js:136:32)
 at Generator.next (<anonymous>)
    at /opt/zigbee2mqtt/node_modules/zigbee-herdsman/dist/adapter/z-stack/znp/znp.js:27:71
    at new Promise (<anonymous>)
    at __awaiter (/opt/zigbee2mqtt/node_modules/zigbee-herdsman/dist/adapter/z-stack/znp/znp.js:23:12)
    at SerialPort.<anonymous> (/opt/zigbee2mqtt/node_modules/zigbee-herdsman/dist/adapter/z-stack/znp/znp.js:134:49)
    at SerialPort._error (/opt/zigbee2mqtt/node_modules/zigbee-herdsman/node_modules/@serialport/stream/lib/index.js:198:14)
    at /opt/zigbee2mqtt/node_modules/zigbee-herdsman/node_modules/@serialport/stream/lib/index.js:242:12
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! zigbee2mqtt@1.15.0 start: `node index.js`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the zigbee2mqtt@1.15.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/pi/.npm/_logs/2020-10-05T12_05_02_008Z-debug.log

Affichage du LOG /home/pi/.npm/_logs/2020-10-05T11_30_36_603Z-debug.log

0 info it worked if it ends with ok
1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'start' ]
2 info using npm@6.14.6
3 info using node@v12.18.4
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info lifecycle zigbee2mqtt@1.15.0~prestart: zigbee2mqtt@1.15.0
6 info lifecycle zigbee2mqtt@1.15.0~start: zigbee2mqtt@1.15.0
7 verbose lifecycle zigbee2mqtt@1.15.0~start: unsafe-perm in lifecycle true
8 verbose lifecycle zigbee2mqtt@1.15.0~start: PATH: /usr/lib/node_modules/npm/$
9 verbose lifecycle zigbee2mqtt@1.15.0~start: CWD: /opt/zigbee2mqtt
10 silly lifecycle zigbee2mqtt@1.15.0~start: Args: [ '-c', 'node index.js' ]
11 silly lifecycle zigbee2mqtt@1.15.0~start: Returned: code: 1  signal: null
12 info lifecycle zigbee2mqtt@1.15.0~start: Failed to exec start script
13 verbose stack Error: zigbee2mqtt@1.15.0 start: `node index.js`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/no$
13 verbose stack     at EventEmitter.emit (events.js:315:20)
13 verbose stack     at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/no$
13 verbose stack     at ChildProcess.emit (events.js:315:20)
13 verbose stack     at maybeClose (internal/child_process.js:1021:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_pr$
14 verbose pkgid zigbee2mqtt@1.15.0
15 verbose cwd /opt/zigbee2mqtt
16 verbose Linux 5.4.51-v7+
17 verbose argv "/usr/bin/node" "/usr/bin/npm" "start"
18 verbose node v12.18.4
19 verbose npm  v6.14.6
20 error code ELIFECYCLE
21 error errno 1
22 error zigbee2mqtt@1.15.0 start: `node index.js`
22 error Exit status 1
23 error Failed at the zigbee2mqtt@1.15.0 start script.
23 error This is probably not a problem with npm. There is likely additional l$
24 verbose exit [ 1, true ]

je n’arrive pas à trouver la solution sur le net…
Si quelqu’un à une idée je suis preneur car bloqué dans mon projet domotique…

Merci.

Hello

Ta config n’est pas bonne

Merci pour cette réponse ultra rapide.
je suis novice et c’est la config de quoi ce message?

Je suis tombé sur une vidéo qui explique ce problème (complément zigbee2mqtt - YouTube)

Je fais la commande:
systemctl stop zigbee2mqtt.service
Puis
npm start (plus de message d’erreur c’est ok)
je ne comprends pas trop comment corriger le problème
Penses-tu que c’est juste ça mon problème?

Vérifie que tu as bien indiqué le port de la clé cc2531 (un truc du genre /dev/ttyXXXXX) dans /opt/zigbee2mqtt/data/configuration.yaml`

Dans le premier cas, tu lances npm en tant que service, le deuxième en mode interactif… Ce qui est sur c’est que les 2 en même temps c’est pas possible…
Le deuxième mécanisme est bien pour voir ce qu’il se passe… mais si tu quittes ta session ssh, ça s’arrête aussitôt… Le mode service permet de garder zigbee2mqtt en fonctionnement tout le temps

Que te donnes la commande :

ls -l /dev/serial/by-id

1-Voici ma config
nano /opt/zigbee2mqtt/data/configuration.yaml


Home Assistant integration (MQTT discovery)
homeassistant: false

allow new devices to join
permit_join: true

MQTT settings
mqtt:
MQTT base topic for zigbee2mqtt MQTT messages
base_topic: zigbee2mqtt
MQTT server URL
server: ‹ mqtt://localhost ›
MQTT server authentication, uncomment if required:
user: pi
password: ******

Serial settings
serial:
Location of CC2531 USB sniffer
port: /dev/ttyACM0

2-Quand je fais (ls -l /dev/serial/by-id ) la clé est bien vu
(lrwxrwxrwx 1 root root 13 oct. 5 16:09 usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00124B0014D9A5DA-if00 → …/…/ttyACM0)

3-Ok si j’ai bien compris il n’est pas possible de lancer les 2 commandes en même temps ?
(cd /opt/zigbee2mqtt
npm start)
ET
(sudo systemctl start zigbee2mqtt)

Mais comme j’ai mis le démarrage auto du service je ne peux pas exécuter la commande interactif?
Au final ma config est correct?

Exactement, tu peux si besoin stopper le service si tu as besoin de vérifier en direct … Il ne faut pas oublier de le relancer après

Non, il manque un bloc, à ajouter à la fin par exemple

serial:
  port: /dev/ttyACM0

ma copie était pas terrible (en gras plus haut) mais j’ai bien rentré dans le fichier

Serial settings
serial:
Location of CC2531 USB sniffer
port: /dev/ttyACM0

Ok mais vérifie qu’il ne manque un commentaire sur ces lignes qui sont pas de la config

Je pense que ma config est bonne…( j’ai revérifié les lignes c’est OK)

J’ai fais plusieurs reboot pour tester après avoir restauré mon backup jeedom et mon service se lance correctement et quand je veux passer en commande interactif j’arrête le service et ça passe.

Quand j’arrête le service et je lance la commande
cd /opt/zigbee2mqtt
npm start

zigbee2mqtt@1.15.0 start /opt/zigbee2mqtt
node index.js

Zigbee2MQTT:info  2020-10-05 17:56:02: Logging to console and directory: '/opt/zigbee2mqtt/data/log/2020-10-05.17-56-02' filename: log.txt
Zigbee2MQTT:info  2020-10-05 17:56:04: Starting Zigbee2MQTT version 1.15.0 (commit #1bccc5d)
Zigbee2MQTT:info  2020-10-05 17:56:04: Starting zigbee-herdsman...
Zigbee2MQTT:info  2020-10-05 17:56:06: zigbee-herdsman started
Zigbee2MQTT:info  2020-10-05 17:56:06: Coordinator firmware version: '{"meta":{"maintrel":3,"majorrel":2,"minorrel":6,"product":0,"revision":20190608,"transportrev":2},"type":"zStack12"}'
Zigbee2MQTT:info  2020-10-05 17:56:06: Currently 0 devices are joined:
Zigbee2MQTT:warn  2020-10-05 17:56:06: `permit_join` set to  `true` in configuration.yaml.
Zigbee2MQTT:warn  2020-10-05 17:56:06: Allowing new devices to join.
Zigbee2MQTT:warn  2020-10-05 17:56:06: Set `permit_join` to `false` once you joined all devices.
Zigbee2MQTT:info  2020-10-05 17:56:06: Zigbee: allowing new devices to join.
Zigbee2MQTT:info  2020-10-05 17:56:06: Connecting to MQTT server at mqtt://localhost
Zigbee2MQTT:info  2020-10-05 17:56:07: Connected to MQTT server
Zigbee2MQTT:info  2020-10-05 17:56:07: MQTT publish: topic 'zigbee2mqtt/bridge/state', payload 'online'
Zigbee2MQTT:info  2020-10-05 17:56:07: MQTT publish: topic 'zigbee2mqtt/bridge/config', payload '{"commit":"1bccc5d","coordinator":{"meta":{"maintrel":3,"majorrel":2,"minorrel":6,"product":0,"revision":20190608,"transportrev":2},"type":"zStack12"},"log_level":"info","network":{"channel":11,"extendedPanID":"0xdddddddddddddddd","panID":6754},"permit_join":true,"version":"1.15.0"}'

Je pense que ma config est bonne (3 warning comme sur différents tuto)mais quand je mets mon détecteur de mouvement en appairage ou que je mets ma lampe sous-tension rien ne se passe alors que je devrais voir des trames passées? As-tu une idée? sur jeedom même problème j’ai crée une antenne tout est ok mais en mode inclusion je vois rien.
Merci déja je comprends au moins ce qu’il se passe

Oui là plus de message d’erreur du port

Un bon outil toutefois : http://mqtt-explorer.com/ qui permet de voir ce qui circule dans les messages et les différents topics

La ca semble être fonctionnel.

Pour l’appairage, il faut être à moins de 30cm et ne pas hésitez à répéter l’opération.
Si ca ne marche pas, ca m’est arrivé, j’ai simplement redémarré la machine pour que ca remarche.

alors j’ai fait plusieurs tests d’appairage à 30cm mais toujours rien
C’est une clé aliexpress (avec antenne) peut-être un problème de qualité je vois pour en récupérer une autre.
Merci pour les infos.

Sauf erreur, les clés sont vierges… Tu as installé un firmware dedans ?

oui j’ai trouvé le tuto sur Zigbee2MQTT
et je n’ai pas eu de problème.
il y a moyen de faire fonctionner la clé sur windows avec l’utilitaire ?
http://mqtt-explorer.com/

Pas possible

je suis repartie du début sur la partie mosquitto
et quand je fais pi@raspberrypi:~ $ mosquitto -v

1601921918: mosquitto version 1.5.7 starting
1601921918: Using default config.
1601921918: Opening ipv4 listen socket on port 1883.
1601921918: Error: Address already in use

C’est un problème cette erreur? j’ai une antenne usb enocean pour info

Non, à tous les coups le service marche en parallèle… Tu peux pas faire les 2

J’ai décidé de repartir sur la partie flashage et je m’aperçoit que la clé est vu sur windows en tant que « périphérique série usb(com 5) » et non comme sur la procédure en tant « CC2531 usb dongle »
J’ai refais un flashage une 2eme fois sans message d’erreur mais toujours pas reconnu.
Ceci pourrais expliquer mon problème?

Une autre question il faut utiliser quel plugin JQMTT QMTT ou zigbee? j’essaye avec JQMTT

jMQTT pour ma part.