Bonjour,
Je rencontre un problème avec la clé z-wave AEOTECK Z-Stick GEN5 plus, achetée récemment en remplacement d’un Z-Stick GEN5, après reboot de la machine (odroid C4).
Le problème constaté : suite à un reboot (commande ‹ reboot ›, ou redémarrage depuis jeedom), Le démon z-wave est bien actif, mais ne communique pas avec la clé.
Dans la log OpenzWaved, on obtient 4 fois l’erreur ‹ Error, contrlr, ERROR: Dropping command, expected response not received after 1 attempt(s)
›
Je joins la log, en niveau débug.
Un redémarrage du démon ne suffit pas.
Si je débranche la clé et que je la rebranche, puis redémarrage du démon, ca marche !
Donc, il semble qu’il soit nécessaire que la clé soit coupée électriquement pour qu’elle puisse refonctionner.
J’ai voulu remplacer la clé, car j’ai changé la machine : je suis passé d’un odroid C2 (ports USB 2.0) à un odroid C4 (ports usb 3.0). L’ancienne clé ne fonctionnait pas avec un port usb 3 (même problème qu’avec un raspberry 4) ; j’était obligé de mettre un hub USB pour que ca fonctionne.
J’ai essayé de déplacer la clé sur un autre port ; j’ai même essayé de débrancher la clé conBee, pour être certain qu’il n’y avait pas de conflit. Ca n’a pas éliminé le problème.
J’ai aussi essayé de mettre la clé derrière le hub USB, sans plus de succès.
Je n’ai pas de problème d’alimentation électrique de l’odroid.
Concernant la clé, J’ai recopié la conf (appairages, …) de l’ancienne clé vers la nouvelle avec l’utilitaire ‹ Z-Stick Gen5 Backup Tool ›. Ca a fonctionné, elle est capable de gérer mes équipements z-wave.
Concernant la conf de l’odroid, j’applique la règle udev suivante, pour que la clé ait toujours le même nom de device :
SUBSYSTEM=="tty", ATTRS{idVendor}=="0658", ATTRS{idProduct}=="0200", SYMLINK+="ttyUSB-zstick1"
Et j’ai déclaré dans jeedom /dev/ttyUSB-zstick1 comme port clé Z-wave.
J’applique ceci depuis mes débuts en jeedom, au moins 6 ans.
Le problème n’est pas jeedom, mais lié à la clé ou au système.
Voici quelques infos complémentaires :
après boot (donc avec le problème)
# lsusb
Bus 002 Device 002: ID 2109:0817 VIA Labs, Inc.
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0658:0200 Sigma Designs, Inc. Aeotec Z-Stick Gen5 (ZW090) - UZB
Bus 001 Device 003: ID 1cf1:0030 Dresden Elektronik
Bus 001 Device 002: ID 2109:2817 VIA Labs, Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
# ls -al /dev/ttyUSB-zstick1
lrwxrwxrwx 1 root root 7 mars 11 14:53 /dev/ttyUSB-zstick1 -> ttyACM1
# dmesg | grep -i voltage
[ 1.914218] reg-fixed-voltage regulator-hub_5v: nonexclusive access to GPIO for regulator-hub_5v
# dmesg | grep -i usb
...
[ 3.242742] usb 1-1.3: new full-speed USB device number 3 using xhci-hcd
[ 3.398654] usb 1-1.3: New USB device found, idVendor=1cf1, idProduct=0030, bcdDevice= 1.00
[ 3.398660] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3.398664] usb 1-1.3: Product: ConBee II
[ 3.398666] usb 1-1.3: Manufacturer: dresden elektronik ingenieurtechnik GmbH
[ 3.398668] usb 1-1.3: SerialNumber: DE1965528
[ 3.582756] usb 1-1.4: new full-speed USB device number 4 using xhci-hcd
[ 3.636253] cdc_acm 1-1.3:1.0: ttyACM0: USB ACM device
[ 3.636820] usbcore: registered new interface driver cdc_acm
[ 3.636827] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[ 3.731701] usb 1-1.4: New USB device found, idVendor=0658, idProduct=0200, bcdDevice= 0.00
[ 3.731710] usb 1-1.4: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 3.773496] cdc_acm 1-1.4:1.0: ttyACM1: USB ACM device
Donc, la clé z-wave est bien reconnue par le système, comme /dev/ttyACM1 ; /dev/ttyUSB-zstick1 pointe bien vers la clé
si je débranche et rebranche la clé, sur le même port
Ca va fonctionner, après redémarrage du démon z-wave
La clé Z-Stick a changé de device : de 004 à 005, et a passé de /dev/ttyACM1 à /dev/ttyACM2. /dev/ttyUSB-zstick1 pointe maintenant vers ttyACM2
# lsusb
Bus 002 Device 002: ID 2109:0817 VIA Labs, Inc.
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 0658:0200 Sigma Designs, Inc. Aeotec Z-Stick Gen5 (ZW090) - UZB
Bus 001 Device 003: ID 1cf1:0030 Dresden Elektronik
Bus 001 Device 002: ID 2109:2817 VIA Labs, Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
# ls -al /dev/ttyUSB-zstick1
lrwxrwxrwx 1 root root 7 mars 11 15:39 /dev/ttyUSB-zstick1 -> ttyACM2
# dmesg | grep -i usb
...
[ 2759.805732] usb 1-1.4: USB disconnect, device number 4
[ 2764.172464] usb 1-1.4: new full-speed USB device number 5 using xhci-hcd
[ 2764.321314] usb 1-1.4: New USB device found, idVendor=0658, idProduct=0200, bcdDevice= 0.00
[ 2764.321324] usb 1-1.4: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 2764.380933] cdc_acm 1-1.4:1.0: ttyACM2: USB ACM device
On a donc exactement la même séquence que lors du boot initial.
Je ne sais pas comment traiter ce problème. C’est gênant, mon installation n’est plus fiable, puisqu’il faut une intervention manuelle en cas de reboot du système.
Je vois 2 pistes pour tenter de pallier à ce problème :
-
faire en sorte de pouvoir couper électriquement le port USB lors du boot ; je n’ai pas trouvé comment faire
-
la clé est bien reconnue par le système, même si elle ne répond pas au démon. Elle est vue comme un port série ; je me demande s’il n’est pas possible de lui envoyer une séquence qui permettrait de la forcer à se réinitialiser.
J’ai cherché de la doc pour envoyer des commandes directement à la clé par le port série (/dev/ttyUSB-zstick1) ; je n’ai pas trouvé.
Si vous avez des propositions pour tenter de traiter ce problème, je suis preneur.
Merci …