🔧 Erreur Zigbee Herdsman : Guide Complet de Dépannage avec ESP32/Arduino (2026)

⚠️ NOTE TECHNIQUE : Cet article couvre le dépannage des erreurs Zigbee Herdsman dans le contexte des projets DIY IoT avec ESP32, Arduino et les adaptateurs Zigbee (CC2531, ConBee 2, Sonoff). Nous aborderons à la fois les aspects matériels (câblage, firmware) et logiciels (Zigbee2MQTT, Home Assistant).
Configuration Zigbee avec ESP32 et adaptateur CC2531 pour projet DIY Home Automation
Figure 1 : Configuration typique d'un réseau Zigbee DIY avec ESP32 et adaptateur USB.

Qu'est-ce que l'Erreur Zigbee Herdsman ?

Zigbee Herdsman est la bibliothèque centrale qui gère la communication entre votre adaptateur Zigbee (CC2531, ConBee 2, Sonoff, etc.) et votre système de domotique (Zigbee2MQTT, Home Assistant, Node-RED). L'erreur "Error While Starting Zigbee Herdsman" indique généralement un problème de communication matérielle ou de configuration logicielle.

Symptômes courants :

  • "Failed to connect to the adapter" - Échec de connexion à l'adaptateur
  • "SRSP - SYS - ping after 6000ms" - Timeout de communication
  • "USB adapter discovery error" - Adaptateur non détecté
  • "Firmware revision mismatch" - Incompatibilité de firmware

🔍 Causes Principales de l'Erreur

Problèmes Matériels (Hardware) :

  1. Adaptateur non détecté : Le système d'exploitation ne reconnaît pas l'adaptateur USB Zigbee
  2. Problème de port USB : Port défectueux ou manque d'alimentation
  3. Câblage incorrect : Pour les adaptateurs CC2531 avec ESP32/Arduino
  4. Firmware obsolète : Firmware incompatible sur l'adaptateur Zigbee

Problèmes Logiciels (Software) :

  1. Configuration incorrecte : Mauvais port série dans configuration.yaml
  2. Conflit de permissions : L'utilisateur n'a pas les droits d'accès au port série
  3. Bibliothèques manquantes : Dependencies Node.js non installées
  4. Version incompatible : Version de Zigbee2MQTT incompatible avec le firmware

️ Méthode 1 : Vérification Matérielle de l'Adaptateur

Étape 1 : Tester la Détection USB

Sur Linux (Raspberry Pi) :

# Lister tous les périphériques USB lsusb # Identifier les ports série disponibles ls -la /dev/tty* # Vérifier les logs système dmesg | grep tty dmesg | grep -i zigbee

Sur Windows :

# Ouvrir le Gestionnaire de périphériques (Win + X > Device Manager) # Vérifier dans "Ports (COM & LPT)" # L'adaptateur doit apparaître comme "USB Serial Device (COMx)"

Étape 2 : Tester l'Adaptateur CC2531 avec ESP32

Si vous utilisez un CC2531 avec un ESP32 comme coordinateur Zigbee DIY, voici le schéma de câblage :

CC2531              ESP32
──────              ─────
P2.0 (RX)     ──→   GPIO 16 (TX2)
P2.1 (TX)     ──→   GPIO 17 (RX2)
GND           ──→   GND
VCC (3.3V)    ──→   3.3V (ou alimentation externe)

💻 Méthode 2 : Configuration Logicielle

Configuration Zigbee2MQTT (configuration.yaml)

# Configuration pour adaptateur CC2531 serial: port: /dev/ttyACM0 # Linux Raspberry Pi # port: COM3 # Windows # port: /dev/ttyUSB0 # Alternative Linux adapter: zstack # Pour CC2531 # Pour ConBee II / RaspBee # serial: # port: /dev/ttyACM0 # adapter: deconz # Pour Sonoff Zigbee USB # serial: # port: /dev/ttyUSB0 # adapter: zstack # Configuration avancée advanced: log_level: debug # Mettre en 'debug' pour le dépannage channel: 11 pan_id: 0x1a62 ext_pan_id: [0xDD, 0xDD, ...] mqtt: base_topic: zigbee2mqtt server: 'mqtt://localhost:1883'

Vérification des Permissions (Linux)

# Ajouter l'utilisateur au groupe dialout sudo usermod -a -G dialout $USER # Redémarrer la session ou exécuter newgrp dialout # Vérifier les permissions du port ls -l /dev/ttyACM0 # Doit afficher : crw-rw---- 1 root dialout ...

🔄 Méthode 3 : Mise à Jour du Firmware

Pour CC2531 avec ESP32 :

# Télécharger le firmware Z-Stack (pour CC2531) # Utiliser CC Debugger ou ESP32 pour flasher # Firmware recommandé pour CC2531 : # - coordinator_znp.hex (Z-Stack 3.0.x) # - CC2531ZNP-Prod.hex (version stable) # Vérifier la version du firmware dans les logs Zigbee2MQTT # Chercher : "zigbee-herdsman" dans le journal

Pour ConBee II / RaspBee :

# Mettre à jour le firmware via GCFFlasher sudo GCFFlasher_internal -t 60 -f deCONZ_RaspBeeII_0x26720700.bin.GCF # Ou via Phoscon App (interface web) # Aller dans Settings > Gateway > Firmware Update

🐛 Méthode 4 : Dépannage Avancé

Activer le Mode Debug

# Dans configuration.yaml de Zigbee2MQTT advanced: log_level: debug log_output: - console - file # Redémarrer Zigbee2MQTT cd /opt/zigbee2mqtt npm start # Ou avec systemd sudo systemctl restart zigbee2mqtt sudo journalctl -u zigbee2mqtt -f

Tester la Communication Série

# Installer minicom pour tester le port série sudo apt-get install minicom # Tester la communication minicom -D /dev/ttyACM0 -b 115200 # Envoyer une commande AT pour tester # (pour les modules XBee/CC2530) AT # Doit répondre "OK"

Vérifier les Conflits de Port

# Vérifier quel processus utilise le port sudo lsof /dev/ttyACM0 # Arrêter les services conflictuels sudo systemctl stop modemmanager sudo systemctl disable modemmanager # Pour Home Assistant, vérifier que ZHA n'est pas actif # si vous utilisez Zigbee2MQTT

📊 Tableau de Dépannage Rapide

Erreur Cause Probable Solution
"Adapter not found" Port incorrect ou adaptateur non branché Vérifier lsusb et modifier le port dans config
"SRSP - SYS - ping timeout" Firmware incompatible ou corrompu Flasher le firmware Z-Stack latest
"Permission denied" Problème de permissions Linux Ajouter utilisateur au groupe dialout
"USB error -121" Problème de câble ou port USB Changer de câble USB ou de port

️ Erreurs Courantes Spécifiques

Erreur avec ConBee II :

Symptôme : "Failed to connect to ConBee II"

Solution :
  1. Désactiver ModemManager : sudo systemctl stop ModemManager
  2. Vérifier le firmware : GCFFlasher_internal -l
  3. Mettre à jour via Phoscon App

Erreur avec CC2531 :

Symptôme : "SRSP - SYS - version after 6000ms"

Solution :
  1. Vérifier le câblage ESP32-CC2531
  2. Flasher le firmware Z-Stack 3.0.x
  3. Vérifier l'alimentation 3.3V stable

🔧 Projet DIY : Coordinateur Zigbee ESP32

Si vous rencontrez trop de problèmes avec les adaptateurs USB commerciaux, vous pouvez construire votre propre coordinateur Zigbee avec un ESP32 et un module CC2530/CC2531.

Composants requis :

  • ESP32 DevKit V1
  • Module CC2530 ou CC2531 (sans boîtier USB)
  • Câbles Dupont
  • Alimentation 3.3V stable

FAQ (Foire Aux Questions)

Q1 : Quelle est la différence entre Z-Stack et ZNP pour CC2531 ?

Z-Stack est le firmware complet Texas Instruments pour CC2531. ZNP (Zigbee Network Processor) est une version allégée où le coordinateur (ESP32/Raspberry Pi) gère la logique réseau. Zigbee2MQTT recommande ZNP pour de meilleures performances.

Q2 : Comment choisir entre ConBee II et CC2531 pour un projet DIY ?

Le CC2531 est moins cher (~10€) mais nécessite un flashage manuel et a une portée limitée. Le ConBee II (~40€) est plug-and-play, plus stable et a une meilleure portée. Pour un projet DIY avec ESP32, le CC2531 est idéal pour apprendre.

Q3 : Puis-je utiliser un ESP32 comme coordinateur Zigbee natif ?

Non, l'ESP32 n'a pas de radio Zigbee intégrée. Vous devez utiliser un module radio dédié comme le CC2530/CC2531 connecté via UART, ou utiliser un ESP32-C6/H2 qui supporte Thread/Zigbee nativement (mais nécessite un firmware spécifique).

Q4 : Comment déboguer une erreur Herdsman sur Raspberry Pi ?

Activez le mode debug dans configuration.yaml, puis consultez les logs avec 'journalctl -u zigbee2mqtt -f'. Vérifiez les permissions du port avec 'ls -l /dev/ttyACM0' et assurez-vous que l'utilisateur est dans le groupe 'dialout'.

Conclusion

L'erreur "Error While Starting Zigbee Herdsman" peut sembler complexe, mais elle est généralement liée à des problèmes de configuration matérielle ou logicielle simples. En suivant méthodiquement ce guide - vérification du matériel, configuration des permissions, mise à jour du firmware - vous résoudrez 95% des cas.

Prochaines étapes recommandées :

  1. Commencez par vérifier la détection USB (lsusb)
  2. Vérifiez les permissions Linux (groupe dialout)
  3. Activez le mode debug pour identifier l'erreur précise
  4. Mettez à jour le firmware de l'adaptateur
  5. Consultez les logs Zigbee2MQTT pour l'erreur exacte
Rappel important : Pour les projets DIY avec ESP32 et CC2531, assurez-vous d'utiliser une alimentation 3.3V stable et de qualité. Une alimentation instable est la cause n°1 des erreurs de communication intermittentes.

Bottom Ad [Post Page]