Depuis quelques jours, les nœuds à piles ne marchent plus sur mon réseau zwave. Par contre, les modules branchés fonctionnent. La table des voisinages est vide aussi.
J’ai un RPi 4B et je suis en version 4.4.19. Le plugin zwave JS est à jour, donc la version est celle du 16-11-24. J’avais eu ce même problème et j’avais réinstallé le plugin et tout s’était mis en route. Mais pas cette fois-ci, la réinstallation n’a plus restauré le réseau.
Génial si quelqu’un pouvait me donner des idées à tester…
Le système avait finalement été remis en marche en redémarrant le démon MQTT. Dans tous les cas, le système est encore très instable.
Après de nombreux problèmes de communication avec ma passerelle Z-Wave (RaZberry sur les GPIO d’une Raspberry Pi), j’ai découvert avec l’aide de perplexity que le port série /dev/ttyAMA0 était bloqué par le processus du service Z-Way Server (z-way-ser).
J’avait cet erreur dans le log zwavejs:
« Error while writing true on 37-6-targetValue: Timeout while waiting for a callback from the controller (ZW0200) »
Alors j’ai vérifié qu’il y avait 2 processus (node et z-way-server) en parallèle qui bloquaient la communication:
Avec:
sudo lsof | grep ttyAMA0
Résultat:
node 2498 2647 node root 21uW CHR 204,64 0t0 133 /dev/ttyAMA0
z-way-ser 3242 root 7u CHR 204,64 0t0 133 /dev/ttyAMA0
Ce service z-way-ser, installé auparavant, démarrait automatiquement à chaque reboot, ce qui empêchait le plugin zwavejs d’accéder au matériel et provoquait des erreurs de timeout et de callback.
- J’ai donc désactivé le service Z-Way Server avec :
sudo systemctl stop z-way-server
sudo pkill z-way-server
- Après redémarrage, il faut verifier que le plugin zwavejs utilise le port série, et ma réseau Z-Wave fonctionne à nouveau normalement (y compris les modules sur batterie).
Vérifiez avec sudo lsof | grep ttyAMA0 que le port n’est pas utilisé par plusieurs processus. Il est indispensable de désactiver le service Z-Way Server si vous utilisez zwavejs, pour éviter tout conflit matériel.