I am trying to set up my Home Assistant with Zigbee2MQTT but I am getting the following error:
[2025-06-10 12:49:16] error: z2m: Failed to start ‘Bridge’ (TypeError: Cannot read properties of undefined (reading ‘deviceIeeeAddress’)
at Bridge.publishInfo (/app/lib/extension/bridge.ts:699:69)
at Bridge.start (/app/lib/extension/bridge.ts:180:9)
at Controller.startExtension (/app/lib/controller.ts:271:13)
at Controller.start (/app/lib/controller.ts:149:13)
at start (/app/index.js:149:5))
My setup is:
- NUC5CPYH
- Ubuntu 14.04.6 server
- Docker 27.5.1
- ConBee II
$ ls -l /dev/serial/by-id
total 0
lrwxrwxrwx 1 root root 13 Jun 10 12:44 usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE2699991-if00 -> ../../ttyACM0
$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 1cf1:0030 Dresden Elektronik ZigBee gateway [ConBee II]
configuration.yaml
version: 4
mqtt:
base_topic: zigbee2mqtt
server: "mqtt://127.0.0.1:1883"
user: "mqttwilhelmsaue"
password: "**************"
keepalive: 60
reject_unauthorized: true
version: 4
serial:
port: "/dev/ttyACM0"
adapter: deconz
frontend:
enabled: true
port: 8080
advanced:
channel: 20
Docker for Zigbee2MQTT
- name: Run Zigbee2MQTT Docker container
docker_container:
name: zigbee2mqtt
image: koenkk/zigbee2mqtt
restart_policy: unless-stopped
state: started
pull: true
network_mode: host
privileged: true
volumes:
- /opt/zigbee2mqtt/data:/app/data
- /etc/localtime:/etc/localtime:ro
devices:
- "{{ zigbee_device }}:{{ zigbee_device }}"
env:
NODE_ENV: production
tags: zigbee2mqtt
zigbee_device above is: /dev/ttyACM0:/dev/ttyACM0
Logs:
Using '/app/data' as data directory
Starting Zigbee2MQTT without watchdog.
[2025-06-10 12:49:15] info: z2m: Logging to console, file (filename: log.log)
[2025-06-10 12:49:15] info: z2m: Starting Zigbee2MQTT version 2.4.0 (commit #bdb94da46e0461337f4a61b4f2a6bfa5172f608f
)
[2025-06-10 12:49:15] info: z2m: Starting zigbee-herdsman (4.1.0)
[2025-06-10 12:49:15] info: z2m: zigbee-herdsman started (resumed)
[2025-06-10 12:49:15] info: z2m: Coordinator firmware version: '{"meta":{"maintrel":0,"majorrel":38,"minorrel":120,"product":0,"revision":"0x26780700","transportrev":0},"type":"ConBee2/RaspBee2"}'
[2025-06-10 12:49:15] info: z2m: Currently 0 devices are joined.
[2025-06-10 12:49:15] info: z2m: Connecting to MQTT server at mqtt://127.0.0.1:1883
[2025-06-10 12:49:16] info: z2m: Connected to MQTT server
[2025-06-10 12:49:16] info: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/bridge/state', payload '{"state":"online"}'
[2025-06-10 12:49:16] error: z2m: Failed to start 'Bridge' (TypeError: Cannot read properties of undefined (reading 'deviceIeeeAddress')
at Bridge.publishInfo (/app/lib/extension/bridge.ts:699:69)
at Bridge.start (/app/lib/extension/bridge.ts:180:9)
at Controller.startExtension (/app/lib/controller.ts:271:13)
at Controller.start (/app/lib/controller.ts:149:13)
at start (/app/index.js:149:5))
[2025-06-10 12:49:16] info: z2m: Started frontend on port 8080
[2025-06-10 12:49:16] info: z2m: Zigbee2MQTT started!
[2025-06-10 12:49:18] info: z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/bridge/state', payload '{"state":"online"}'
I tried following all the applicable ‘possible issues’ described here:
But no success…
- name: Remove modemmanager package completely
ansible.builtin.apt:
name: modemmanager
state: absent
purge: yes
- name: Add user to required groups
user:
name: "{{ ansible_user }}"
groups: uucp,tty,dialout
append: yes
- name: Create temporary directory
tempfile:
state: directory
suffix: udev
register: temp_dir
- name: Download libudev1 package
get_url:
url: https://snapshot.debian.org/archive/debian/20220829T032859Z/pool/main/s/systemd/libudev1_247.3-7+deb11u1_amd64.deb
dest: "{{ temp_dir.path }}/libudev1_247.3-7+deb11u1_amd64.deb"
- name: Download libudev-dev package
get_url:
url: https://snapshot.debian.org/archive/debian/20220829T032859Z/pool/main/s/systemd/libudev-dev_247.3-7+deb11u1_amd64.deb
dest: "{{ temp_dir.path }}/libudev-dev_247.3-7+deb11u1_amd64.deb"
- name: Download udev package
get_url:
url: https://snapshot.debian.org/archive/debian/20220829T032859Z/pool/main/s/systemd/udev_247.3-7+deb11u1_amd64.deb
dest: "{{ temp_dir.path }}/udev_247.3-7+deb11u1_amd64.deb"
- name: Install libudev1 from .deb (force downgrade)
apt:
deb: "{{ temp_dir.path }}/libudev1_247.3-7+deb11u1_amd64.deb"
force: yes
- name: Install libudev-dev from .deb (force downgrade)
apt:
deb: "{{ temp_dir.path }}/libudev-dev_247.3-7+deb11u1_amd64.deb"
force: yes
- name: Install udev from .deb (force downgrade)
apt:
deb: "{{ temp_dir.path }}/udev_247.3-7+deb11u1_amd64.deb"
force: yes
- name: Hold some packages
ansible.builtin.dpkg_selections:
name: "{{ item }}"
selection: hold
loop:
- udev
- libudev1
- libudev-dev