Z2M Error: [INIT TC] Network init timed out after 10000ms

Hallo,
ich nutze Sonoff Dongle-E und habe sowohl mit ZigBee-Firmware 7.4.5 als auch mit 8.0.2 getestet.
Die Plattform ist ein RasPi4 und der Dongle ist mit einem USB-Kabel an einem USB 2.0 Port angeschlossen.
Die Funkkanäle von Zigbee und WLAN meiner Fritz!Box habe ich so eingestellt, dass sie möglichst weit auseinander liegen, damit gegenseitige Störungen so gering wie möglich sind.

Ich habe viele Threads in unterschiedlichen Foren gelesen, aber für mein Problem keine Lösung gefunden:

error: z2m: Error while starting zigbee-herdsman
...
error: 	z2m: Error: [INIT TC] Network init timed out after 10000ms
  • ich habe Mosquitto und Zigbee2MQTT komplett neu installiert,
  • ich habe einen eigenen MQTT-Benutzer mit Passwort eingerichtet – in meinem Testfall den Benutzer „mqtt“, Passwort: ,
  • nach der Neuinstallation von Mosquitto funktionieren alle Geräte, die das nutzen normal und werden auch mit Hilfe der ‚Mqtt Explorer‘ Addons angezeigt,
  • das Senden/Empfangen über einen Test Topic funktioniert ebenfalls.
    => Das bedeutet für mich, dass der MQTT Broker funktioniert.

Zigbee2Mqtt funktioniert nicht und schreibt Fehler ins log.
Ich habe Log-Level ‚debug‘ eingestellt, der liefert für mich nur die Information, dass soweit alles Okay ist.
Trotzdem bekomme ich diesen Fehler:

[2025-07-31 07:15:18] debug: 	zh:ember:ezsp: <=== [FRAME: ID=23:"NETWORK_INIT" Seq=27 Len=6]
[2025-07-31 07:15:18] debug: 	zh:ember: [INIT TC] Network init status=OK.
[2025-07-31 07:15:18] debug: 	zh:ember:ezsp: <=== [CBFRAME: ID=25:"STACK_STATUS_HANDLER" Seq=27 Len=5]
[2025-07-31 07:15:18] debug: 	zh:ember:ezsp: ezspStackStatusHandler: status=OK
[2025-07-31 07:15:18] debug: 	zh:ember: [STACK STATUS] OK.
[2025-07-31 07:15:28] error: 	z2m: Error while starting zigbee-herdsman
[2025-07-31 07:15:28] error: 	z2m: Failed to start zigbee-herdsman
[2025-07-31 07:15:28] error: 	z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start_crashes-runtime.html for possible solutions
[2025-07-31 07:15:28] error: 	z2m: Exiting...
[2025-07-31 07:15:28] error: 	z2m: Error: [INIT TC] Network init timed out after 10000ms
    at Object.start (/app/node_modules/.pnpm/zigbee-herdsman@4.3.1/node_modules/zigbee-herdsman/src/adapter/ember/adapter/oneWaitress.ts:283:23)
    at EmberOneWaitress.startWaitingForEvent (/app/node_modules/.pnpm/zigbee-herdsman@4.3.1/node_modules/zigbee-herdsman/src/adapter/ember/adapter/oneWaitress.ts:308:63)
    at EmberAdapter.initTrustCenter (/app/node_modules/.pnpm/zigbee-herdsman@4.3.1/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:869:36)
    at processTicksAndRejections (node:internal/process/task_queues:105:5)
    at runNextTicks (node:internal/process/task_queues:69:3)
    at processImmediate (node:internal/timers:453:9)
    at EmberAdapter.initEzsp (/app/node_modules/.pnpm/zigbee-herdsman@4.3.1/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:707:18)
    at EmberAdapter.start (/app/node_modules/.pnpm/zigbee-herdsman@4.3.1/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:1547:24)
    at Controller.start (/app/node_modules/.pnpm/zigbee-herdsman@4.3.1/node_modules/zigbee-herdsman/src/controller/controller.ts:133:29)
    at Zigbee.start (/app/lib/zigbee.ts:68:27)
[07:15:30] INFO: Preparing to start...
[07:15:30] INFO: Socat not enabled
[07:15:31] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
Onboarding page is available at http://0.0.0.0:8099/

Meine Z2M Konfiguration:

version: 4
mqtt:
  base_topic: zigbee2mqtt
  server: mqtt://core-mosquitto:1883
  user: mqtt
  password: <mqtt-passwd>
serial:
  port: /dev/serial/by-id/usb-Itead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_V2_8c9c0faa5fe7ed11a73c6b6262c613ac-if00-port0
  adapter: ember
  baudrate: 115200
  rtscts: false
advanced:
  log_level: debug
  channel: 25
  network_key:
    - xxx(0)
    - ...
    - xxx(n)
  pan_id: yyyy
  ext_pan_id:
    - yyy(0)
    - ...
    - yyy(n)
frontend:
  enabled: true
  port: 8099
homeassistant:

Ich wäre Euch dankbar, wenn Ihr eine Lösung für mein Problem hättet oder mir eine Link zu einem Thread schickt, der mir potentiell eine Lösung zeigt.

LG, Gerald.

PS: Mit MultiPAN hat es funktioniert, aber die Firmware wird ja nicht weiterentwickelt, daher zwei Dongles, einen für ZigBee, einen für Thread.

Der User unter dem zigbee2mqtt läuft muß Mitglied der Gruppe dialout sein

sudo usermod -aG dialout USER

Vielen Dank für die Info.
Ich verwende einen Raspi4 mit HassOS. Da finde ich das Komando „usermode“ nicht. Die ‚BussyBox‘ stellt dieses Kommando nicht zur Verfügung.
Der „mqtt“ User steht auch nicht in der ‚/etc/passwd‘ sondern wird offensichtlich innerhalb HomeAssistant/Mosquitto verwendet.
Mit Tuya-Plugs funktioniert Mosquitto mit dem User ja und ich kann mich beim HA ja auch mit diesem Namen anmelden.
Daher glaube ich, dass das Problem mit Z2M wo anders liegt :-/

usermod und NICHT usermode!

Vielen Dank für den Hinweis - mein Fehler hier.
Aber in der Busybox von HASSOS gibt es keine „usermod“ Kommando, egal ob mit oder ohne ‚e‘ am Ende. Wenn es am ‚e‘ gelegen haben sollte, hätte ich das bestimmt gemerkt.
In ‚/etc/group‘ gibt es die Gruppe ‚dialout‘, da ist nur user ‚root‘ eingetragen.
Den User ‚mqtt‘ (wie ich ihn in HA angelegt habe), existiert in ‚/etc/passwd‘ nicht. der ist HA-intern. Daher hilft auch kein ‚usermod‘.
Okay, ich verstehe nicht ganz warum dieser User zur Gruppe ‚dialout‘ gehören sollte. Es ging vorher ohne dass dieser User dem ‚Linux Base OS‘ bekannt war. Die Nutzerverwaltung von Homeassistant läuft oberhalb des Linux-Systems ab.

Weil nur Mitglieder diieser Gruppe das Recht haben auf serielle Devices zuzugreifen.
Der Zigbeestick ist i.d.R ein serielles Device.

Aber, wie HAOS das macht, weiss ich nicht…

HAOS finde ich grausam!

Man mag zu HOS stehen wie man möchte. Es macht das, was es soll und ich muss mich nicht selbst um das LinuxOS kümmern. Aber es steht doch jedem frei, wie er sein System aufsetzt :wink:.
Ich bevorzuge hier ein klar definiertes System für HomeAssistant um den Support durch und für die Community einfach zu halten.
Daher schraube ich da auf den unteren Ebenen nach Möglichkeit nicht herum - ist nach dem nächsten Update ja eh wieder futsch …
Das ist hier aber nicht der Punkt. Der Zugriff auf den Stick funktioniert ja, was man in den Logs sieht. An Zugriffsrechten auf die serielle Schnittstelle liegt es offensichtlich nicht.
Das Problem liegt an einigen ‚Animositäten‘ von Z2M. Nur an welcher? :thinking:

Auf welcher Hardware läuft HA eigentlich und wie ist der USB Dongle angeschlossen? Wird eine USB Verlängerung verwendet?

RasPi4 und der Dongle ist nicht direkt sondern über ein eher hochwertiges USB-Kabel angeschlossen. Hat ja alles schon funktioniert, so dass ich kein HW-Problem vermute.
Ich bin nur von ‚MultiPAN‘ auch ‚native Zigbee‘ umgestiegen.
Den Kanal habe ich weit genug entfernt von dem gelegt, den meine FritzBox für WLAN verwendet, so dass gegenseitige Störungen minimal sein sollten.

Ich habe den ursprünglichen Post dahingehend überarbeitet und die ‚Config‘ hinzugefügt.

Hast du den Dongle im USB 2.0 des Raspberry Pi 4 angeschlossen? Wenn nein, dann versuche das mal oder nutze ein USB 2.0 Kabel. Das war damals das große Problem bei mir. Im USB 3.0 hat es aus irgendeinem Grund nicht funktioniert und die Z2M Einrichtung ist auch immer fehlgeschlagen.

Ja, USB2.0. Der Stick funktioniert ja - sieht man am Protokoll. Ausserdem lässt er sich mit dem „Sonoff Dongle Flascher“ Addon beliebig flashen - natürlich mit passenden Firmware-Versionen.
USB 3.0 nutze ich für SSD. Für mich würde es auch keinen Sinn ergeben ein Gerät mit einer USB-2-UART Bridge an USB3.0 anzuschließen. Die CP210x kann A-seitig nur USB2.0 (max. 12 Mbis/s) und B-seitig max. 1Mb (hängt von der Version ab).
Bei Z2M sind 115k max. einstellbar, bei Thread 480k. Beides reicht völlig aus. Warum USB3.0?
Für OTA wäre das gut, aber da ist das Protokoll auf der Luftschnittstelle der ‚Bottleneck‘, nicht USB-to-UART.