You don’t need the router firmware, but the coordinator firmware.
Unfortunately its the exact same situation (and error) when using the coordinator firmware.
Hi, I have stumbled upon this problem with my zigbee dongle-E. Seems that Sonoff sells two models, “dongle-e” which uses ember based adapter and “dongle-p (plus)” a zstack adapter. From your config I see your adapter is set to “ember” have you tried setting to “zstack” ? That helped me (a dumb little parameter change), I had “zstack” setting on my Dongle-E adapter, which failed with same error.
Hope this helps even after long time.
Note that on the zigbee2mqtt adapters zstack page this confusion is mentioned
Had exactly he same issues when using the P ZBDongle-E in on my Linux server PC running Docker, Portainer and Zigbe2MQTT.
Got it all to work thanks to ChatGPT.
Had logs using Visual Code Studio or Portainer to paste on CHatGPT to interpret what happened and why.
In my case the path to the USB port was incorrect. And after that reject_unauthorized: TRUE needed to be set to FALSE to validate the certificat of MQTT for the Zignbee2MQTT server. Al in all several items that needed tweaking.
My current Docker-compose.yaml:
services:
portainer:
container_name: portainer
image: portainer/portainer-ce
restart: always
ports:
- "9000:9000/tcp"
environment:
- TZ=Europe/Amsterdam
volumes:
- /opt/portainer:/data
- /var/run/docker.sock:/var/run/docker.sock
homeassistant:
container_name: homeassistant
image: "ghcr.io/home-assistant/home-assistant:stable"
volumes:
- /opt/homeassistant/config:/config
- /etc/localtime:/etc/localtime:ro
- /run/dbus:/run/dbus:ro
restart: unless-stopped
privileged: true
network_mode: host
mosquitto:
image: eclipse-mosquitto
container_name: mosquitto
volumes:
- /opt/mosquitto/config:/mosquitto/config
- /opt/mosquitto/data:/mosquitto/data
- /opt/mosquitto/log:/mosquitto/log
ports:
- 1884:1884
- 9001:9001
restart: unless-stopped
nodered:
container_name: Node-RED
image: nodered/node-red:latest
environment:
- TZ=Europe/Amsterdam
ports:
- "1880:1880"
# user: 1000:1000
volumes:
- /opt/nodered/data:/data
restart: unless-stopped
zigbee2mqtt:
container_name: zigbee2mqtt
image: koenkk/zigbee2mqtt
restart: unless-stopped
volumes:
- /opt/zigbee2mqtt/data:/app/data
- /run/udev:/run/udev:ro
ports:
- 81:8080
environment:
- TZ=Europe/Amsterdam
devices:
- "/dev/ttyUSB0:/dev/ttyUSB0"
And Sigbee2MQTT:
homeassistant:
enabled: true
mqtt:
base_topic: zigbee2mqtt
server: mqtt://mosquitto:1884
user: hass
password: JidBkt!0974
keepalive: 60
reject_unauthorized: false
version: 4
frontend:
enabled: true
advanced:
pan_id: 6770
serial:
port: /dev/ttyUSB0
adapter: ember
baudrate: 115200
version: 4
Using ChatGPT it checks everything for you and even implements places to store your logs and configurations. Lifesaver for me, try it.
I’m going to predict that you will run into the exact same issue somewhere in the future, ChatGPT should have explained to you the purpose of /dev/serial/by-id/...
