Zigbee2MQTT not starting after update to 2.0.0

I’m having problems after updating to the latest Zigbee2MQTT.
Anyone got a clue about the cause?
I went through the breaking changes, but still. I believe I’m not having a very complicated setup and using a Sonoff USB adapter.

This is from my log

[18:15:26] INFO: Preparing to start…
[18:15:26] INFO: Socat not enabled
[18:15:26] INFO: Starting Zigbee2MQTT…
Starting Zigbee2MQTT without watchdog.
AssertionError [ERR_ASSERTION]: The expression evaluated to a falsy value:
(0, node_assert_1.default)(result instanceof Object)
at read (/app/lib/util/yaml.ts:24:15)
at Object.readIfExists (/app/lib/util/yaml.ts:36:34)
at readDevicesOrGroups (/app/lib/util/settings.ts:317:38)
at read (/app/lib/util/settings.ts:325:5)
at getPersistedSettings (/app/lib/util/settings.ts:393:21)
at Object.reRead (/app/lib/util/settings.ts:640:5)
at start (/app/index.js:130:14)

For now I restored back to 1.42.0, but it would be nice to stay up to speed

Thanks!

Did you follow these steps? Zigbee2MQTT 2.0.0 breaking changes · Koenkk/zigbee2mqtt · Discussion #24198 · GitHub Please show your configuration.yaml

Thanks @fleskefjes Yes I tried to add that part in configuration.yaml

Here it is:

external_converters: []
devices:
  - devices.yaml
groups:
  - groups.yaml
homeassistant: true
permit_join: false
mqtt:
  base_topic: zigbee2mqtt
  user: ******
  password: *******
  server: mqtt://core-mosquitto:1883
serial:
  port: /dev/ttyUSB0
  adapter: zstack
advanced:
  log_level: debug
  pan_id: 6754
  channel: 15
  network_key:
    - 1
    - 3
    - 5
    - 7
    - 9
    - 11
    - 13
    - 15
    - 0
    - 2
    - 4
    - 6
    - 8
    - 10
    - 12
    - 13
  availability_blocklist: []
  availability_passlist: []
  homeassistant_legacy_entity_attributes: false
  homeassistant_legacy_triggers: false
  legacy_api: false
  legacy_availability_payload: false
device_options:
  legacy: false
blocklist: []
passlist: []
queue: {}
frontend:
  port: 8099
experimental: {}
availability: false

Now the log is telling me there maybe something wrong with devices or groups:

at readDevicesOrGroups (/app/lib/util/settings.ts:317:38)

Because my configuration has devices.yaml and groups.yaml, I went through those. groups.yaml is empty, which shouldn’t be a problem.
However in devices.yaml there were two old devices which I don’t have anymore. I removed these from the yaml.

Now I want to retry, however, my upgrade to 2.0.0 is not available anymore. How to get that back?

Edit: in the meantime 2.0.0.2 came through, but the problem persists

Allright solved it. The problem was also addressed by some others at Github.

In fact, the empty groups.yaml is the problem and should be deleted from configuration.yaml

Also, the recommended extra settings in that file, I had to put in.

advanced:
  homeassistant_legacy_entity_attributes: false
  homeassistant_legacy_triggers: false
  legacy_api: false
  legacy_availability_payload: false
device_options:
  legacy: false

I removed the one empty .yaml file that I had and added the above extra settings and I still get an error trying to start the add-on and access the UI. This started with the HA 2025.1 update. When I go back to Z2M 1.42.0-2, everything works correctly.

The solution to my problem was different. I added the line from this page: https://github.com/Koenkk/zigbee2mqtt/discussions/24364

After looking at the logs, I noticed my Zigbee dongle was not being recognized. Thought I would mention it here in case anyone else has the same issue.

To address both your posts:

Groups problem

What I meant here, is there is an empty groups.yaml which leads to a problem. I did not delete the groups.yaml, but instead removed the reference to it from the configuration.yaml, so the last two lines in the excerpt below:

devices:
  - devices.yaml
groups:
  - groups.yaml

Dongle problem

I added that line already before updating, after I’ve gone through the breaking changes, so I don’t know if that would have been a problem.
Good you mention it.

serial:
  port: /dev/ttyUSB0
  adapter: zstack

In my case it’s a zstack adapter (Sonoff), but might be different for others (like ember)

Hi,

I wanted to understand, if
homeassistant_legacy_triggers: false
is mandatory for V2.0, or if this also can be implemented with homeassistant_legacy_triggers: true

I have hundreds of triggers like sensor.bj_tastfeld_sideboard_rechts_action. If I add the line:
homeassistant_legacy_triggers: false to V1.42 nothings works anymore.

Thx.

I wouldn’t know about that. Acoording to the notes this gives the least amount of breaking changes. I guess make a backup and just try?

Hi since today my HA is not working anymore, well the MQTT part can’t start. I modified the configuration file like above, bit it still isn’t working. I restarted HA and rebooted, still not working. What am I missing?

I changed the adapter to zstack and added the lines after advanced.

Here is my file:

data_path: /config/zigbee2mqtt
socat:
  enabled: false
  master: pty,raw,echo=0,link=/tmp/ttyZ2M,mode=777
  slave: tcp-listen:8485,keepalive,nodelay,reuseaddr,keepidle=1,keepintvl=1,keepcnt=5
  options: "-d -d"
  log: false
mqtt:
  server: mqtt://core-mosquitto:1883
  user: ****
  password: ****
serial:
  port: >-
    /dev/serial/by-id/usb-ITEAD_SONOFF_Zigbee_3.0_USB_Dongle_Plus_V2_20240124210837-if00
  adapter: zstack
advanced:
homeassistant_legacy_entity_attributes: false
  homeassistant_legacy_triggers: false
  legacy_api: false
  legacy_availability_payload: false
device_options:
  legacy: false

And maybe the log is helpful


[13:52:50] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
[2025-02-19 13:53:02] info: 	z2m: Logging to console, file (filename: log.log)
[2025-02-19 13:53:02] info: 	z2m: Starting Zigbee2MQTT version 2.1.1 (commit #unknown)
[2025-02-19 13:53:02] info: 	z2m: Starting zigbee-herdsman (3.2.5)
[2025-02-19 13:53:02] info: 	zh:zstack:znp: Opening SerialPort with {"path":"/dev/serial/by-id/usb-ITEAD_SONOFF_Zigbee_3.0_USB_Dongle_Plus_V2_20240124210837-if00","baudRate":115200,"rtscts":false,"autoOpen":false}
[2025-02-19 13:53:02] info: 	zh:zstack:znp: Serialport opened
[2025-02-19 13:53:03] info: 	zh:zstack:znp: Writing CC2530/CC2531 skip bootloader payload
[2025-02-19 13:53:04] info: 	zh:zstack:znp: Skip bootloader for CC2652/CC1352
[2025-02-19 13:53:04] error: 	z2m: Error while starting zigbee-herdsman
[2025-02-19 13:53:04] error: 	z2m: Failed to start zigbee-herdsman
[2025-02-19 13:53:04] error: 	z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start_crashes-runtime.html for possible solutions
[2025-02-19 13:53:04] error: 	z2m: Exiting...
[2025-02-19 13:53:04] error: 	z2m: Error: Error: Not supported, cannot set
[2025-02-19 13:53:04] info: 	zh:zstack:znp: Port closed
[13:53:07] INFO: Preparing to start...
[13:53:07] INFO: Socat not enabled
[13:53:08] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
[2025-02-19 13:53:20] info: 	z2m: Logging to console, file (filename: log.log)
[2025-02-19 13:53:20] info: 	z2m: Starting Zigbee2MQTT version 2.1.1 (commit #unknown)
[2025-02-19 13:53:20] info: 	z2m: Starting zigbee-herdsman (3.2.5)
[2025-02-19 13:53:21] info: 	zh:zstack:znp: Opening SerialPort with {"path":"/dev/serial/by-id/usb-ITEAD_SONOFF_Zigbee_3.0_USB_Dongle_Plus_V2_20240124210837-if00","baudRate":115200,"rtscts":false,"autoOpen":false}
[2025-02-19 13:53:21] info: 	zh:zstack:znp: Serialport opened
[2025-02-19 13:53:21] info: 	zh:zstack:znp: Writing CC2530/CC2531 skip bootloader payload
[2025-02-19 13:53:23] info: 	zh:zstack:znp: Skip bootloader for CC2652/CC1352
[2025-02-19 13:53:23] error: 	z2m: Error while starting zigbee-herdsman
[2025-02-19 13:53:23] error: 	z2m: Failed to start zigbee-herdsman
[2025-02-19 13:53:23] error: 	z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start_crashes-runtime.html for possible solutions
[2025-02-19 13:53:23] error: 	z2m: Exiting...
[2025-02-19 13:53:23] error: 	z2m: Error: Error: Not supported, cannot set
[2025-02-19 13:53:23] info: 	zh:zstack:znp: Port closed
[13:53:26] INFO: Preparing to start...
[13:53:26] INFO: Socat not enabled
[13:53:27] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
[2025-02-19 13:53:39] info: 	z2m: Logging to console, file (filename: log.log)
[2025-02-19 13:53:39] info: 	z2m: Starting Zigbee2MQTT version 2.1.1 (commit #unknown)
[2025-02-19 13:53:39] info: 	z2m: Starting zigbee-herdsman (3.2.5)
[2025-02-19 13:53:40] info: 	zh:zstack:znp: Opening SerialPort with {"path":"/dev/serial/by-id/usb-ITEAD_SONOFF_Zigbee_3.0_USB_Dongle_Plus_V2_20240124210837-if00","baudRate":115200,"rtscts":false,"autoOpen":false}
[2025-02-19 13:53:40] info: 	zh:zstack:znp: Serialport opened
[2025-02-19 13:53:40] info: 	zh:zstack:znp: Writing CC2530/CC2531 skip bootloader payload
[2025-02-19 13:53:41] info: 	zh:zstack:znp: Skip bootloader for CC2652/CC1352
[2025-02-19 13:53:41] error: 	z2m: Error while starting zigbee-herdsman
[2025-02-19 13:53:41] error: 	z2m: Failed to start zigbee-herdsman
[2025-02-19 13:53:41] error: 	z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start_crashes-runtime.html for possible solutions
[2025-02-19 13:53:41] error: 	z2m: Exiting...
[2025-02-19 13:53:41] error: 	z2m: Error: Error: Not supported, cannot set
[2025-02-19 13:53:41] info: 	zh:zstack:znp: Port closed
[13:53:44] INFO: Preparing to start...
[13:53:45] INFO: Socat not enabled
[13:53:46] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
[2025-02-19 13:53:58] info: 	z2m: Logging to console, file (filename: log.log)
[2025-02-19 13:53:58] info: 	z2m: Starting Zigbee2MQTT version 2.1.1 (commit #unknown)
[2025-02-19 13:53:58] info: 	z2m: Starting zigbee-herdsman (3.2.5)
[2025-02-19 13:53:59] info: 	zh:zstack:znp: Opening SerialPort with {"path":"/dev/serial/by-id/usb-ITEAD_SONOFF_Zigbee_3.0_USB_Dongle_Plus_V2_20240124210837-if00","baudRate":115200,"rtscts":false,"autoOpen":false}
[2025-02-19 13:53:59] info: 	zh:zstack:znp: Serialport opened
[2025-02-19 13:53:59] info: 	zh:zstack:znp: Writing CC2530/CC2531 skip bootloader payload
[2025-02-19 13:54:00] info: 	zh:zstack:znp: Skip bootloader for CC2652/CC1352
[2025-02-19 13:54:00] error: 	z2m: Error while starting zigbee-herdsman
[2025-02-19 13:54:00] error: 	z2m: Failed to start zigbee-herdsman
[2025-02-19 13:54:00] error: 	z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start_crashes-runtime.html for possible solutions
[2025-02-19 13:54:00] error: 	z2m: Exiting...
[2025-02-19 13:54:00] error: 	z2m: Error: Error: Not supported, cannot set
[2025-02-19 13:54:00] info: 	zh:zstack:znp: Port closed
[13:54:04] INFO: Preparing to start...
[13:54:04] INFO: Socat not enabled
[13:54:05] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
[2025-02-19 13:54:18] info: 	z2m: Logging to console, file (filename: log.log)
[2025-02-19 13:54:18] info: 	z2m: Starting Zigbee2MQTT version 2.1.1 (commit #unknown)
[2025-02-19 13:54:18] info: 	z2m: Starting zigbee-herdsman (3.2.5)
[2025-02-19 13:54:18] info: 	zh:zstack:znp: Opening SerialPort with {"path":"/dev/serial/by-id/usb-ITEAD_SONOFF_Zigbee_3.0_USB_Dongle_Plus_V2_20240124210837-if00","baudRate":115200,"rtscts":false,"autoOpen":false}
[2025-02-19 13:54:18] info: 	zh:zstack:znp: Serialport opened
[2025-02-19 13:54:19] info: 	zh:zstack:znp: Writing CC2530/CC2531 skip bootloader payload
[2025-02-19 13:54:20] info: 	zh:zstack:znp: Skip bootloader for CC2652/CC1352
[2025-02-19 13:54:20] error: 	z2m: Error while starting zigbee-herdsman
[2025-02-19 13:54:20] error: 	z2m: Failed to start zigbee-herdsman
[2025-02-19 13:54:20] error: 	z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start_crashes-runtime.html for possible solutions
[2025-02-19 13:54:20] error: 	z2m: Exiting...
[2025-02-19 13:54:20] error: 	z2m: Error: Error: Not supported, cannot set
[2025-02-19 13:54:20] info: 	zh:zstack:znp: Port closed
[13:54:24] INFO: Preparing to start...
[13:54:24] INFO: Socat not enabled
[13:54:25] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
[2025-02-19 13:54:37] info: 	z2m: Logging to console, file (filename: log.log)
[2025-02-19 13:54:37] info: 	z2m: Starting Zigbee2MQTT version 2.1.1 (commit #unknown)
[2025-02-19 13:54:37] info: 	z2m: Starting zigbee-herdsman (3.2.5)
[2025-02-19 13:54:38] info: 	zh:zstack:znp: Opening SerialPort with {"path":"/dev/serial/by-id/usb-ITEAD_SONOFF_Zigbee_3.0_USB_Dongle_Plus_V2_20240124210837-if00","baudRate":115200,"rtscts":false,"autoOpen":false}
[2025-02-19 13:54:38] info: 	zh:zstack:znp: Serialport opened
[2025-02-19 13:54:38] info: 	zh:zstack:znp: Writing CC2530/CC2531 skip bootloader payload
[2025-02-19 13:54:39] info: 	zh:zstack:znp: Skip bootloader for CC2652/CC1352
[2025-02-19 13:54:39] error: 	z2m: Error while starting zigbee-herdsman
[2025-02-19 13:54:39] error: 	z2m: Failed to start zigbee-herdsman
[2025-02-19 13:54:39] error: 	z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start_crashes-runtime.html for possible solutions
[2025-02-19 13:54:39] error: 	z2m: Exiting...
[2025-02-19 13:54:39] error: 	z2m: Error: Error: Not supported, cannot set
[2025-02-19 13:54:39] info: 	zh:zstack:znp: Port closed

Does your adapter support zstack?

There are currently two models of the Sonoff Dongle Plus and they use different hardware.

  • The P model uses a chip from Texas Instruments and uses zstack firmware.

  • The E model uses a chip from Silicon Labs and uses ember firmware.

The model code is printed on the device.

Thanks! I thought I had P but I checked to be sure and I have E! So I changed the adapter to ember but I’m still getting an error:


[20:03:31] INFO: Preparing to start...
[20:03:31] INFO: Socat not enabled
[20:03:32] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
[2025-02-19 20:03:47] info: 	z2m: Logging to console, file (filename: log.log)
[2025-02-19 20:03:47] info: 	z2m: Starting Zigbee2MQTT version 2.1.1 (commit #unknown)
[2025-02-19 20:03:47] info: 	z2m: Starting zigbee-herdsman (3.2.5)
[2025-02-19 20:03:47] info: 	zh:ember: Using default stack config.
[2025-02-19 20:03:47] info: 	zh:ember: ======== Ember Adapter Starting ========
[2025-02-19 20:03:47] info: 	zh:ember:ezsp: ======== EZSP starting ========
[2025-02-19 20:03:47] info: 	zh:ember:uart:ash: ======== ASH Adapter reset ========
[2025-02-19 20:03:47] info: 	zh:ember:uart:ash: RTS/CTS config is off, enabling software flow control.
[2025-02-19 20:03:47] info: 	zh:ember:uart:ash: Serial port opened
[2025-02-19 20:03:47] info: 	zh:ember:uart:ash: ======== ASH starting ========
[2025-02-19 20:03:49] info: 	zh:ember:uart:ash: ======== ASH connected ========
[2025-02-19 20:03:49] info: 	zh:ember:uart:ash: ======== ASH started ========
[2025-02-19 20:03:49] info: 	zh:ember:ezsp: ======== EZSP started ========
[2025-02-19 20:03:49] error: 	z2m: Error while starting zigbee-herdsman
[2025-02-19 20:03:49] error: 	z2m: Failed to start zigbee-herdsman
[2025-02-19 20:03:49] error: 	z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start_crashes-runtime.html for possible solutions
[2025-02-19 20:03:49] error: 	z2m: Exiting...
[2025-02-19 20:03:49] error: 	z2m: Error: Adapter EZSP protocol version (12) is not supported by Host [13-16].
    at EmberAdapter.emberVersion (/app/node_modules/.pnpm/[email protected]/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:1403:19)
    at EmberAdapter.initEzsp (/app/node_modules/.pnpm/[email protected]/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:674:9)
    at EmberAdapter.start (/app/node_modules/.pnpm/[email protected]/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:1533:24)
    at Controller.start (/app/node_modules/.pnpm/[email protected]/node_modules/zigbee-herdsman/src/controller/controller.ts:136:29)
    at Zigbee.start (/app/lib/zigbee.ts:69:27)
    at Controller.start (/app/lib/controller.ts:142:13)
    at start (/app/index.js:161:5)
    at start (/app/index.js:161:5)

Just a guess but one of the error messages seems to imply the version of your adapter’s firmware is no longer supported. You may need to upgrade it (and that’s about the end of my expertise with Model E adapters).

Ah ok, hmm that doesn’t sound like fun. I’ll have to look into that. I’m a newbie, so it’s all new to me. Thanks though!

I found this for you:

Yes! Thanks! I found that too, through this thread: Zigbee2MQTT won't start after 2.0.0-1 update with Sonoff ZBDongle-E w/ Ember firmware · Issue #25464 · Koenkk/zigbee2mqtt · GitHub

Did those steps and it worked! So happy that I finally got it to work! Thanks to this forum, I wouldn’t have a clou what to do haha

1 Like

So far I have tried everything mentioned to get my zigbee devices all working again but nothing has returned full service and hacking around is too risky. My HA zigbee2MQTT ver2 is a killer for me. I have bail and go back to vers 1.36-1. All running well on that version. I will just have to stop udating it until a fix is written to repair the damage ver2 does. Zigbee2mqtt has ben rock solid reliable until now, so its worth waitng for a proper fix that we all understand.

There’s probably not going to be a “proper fix” for the upgrade from 1.X to 2.X, since it works. If you need help please explain more about your setup and what issues you are facing with the upgrade.

1 Like

Spartacus: Did you get an answer to this specific question? I have this exact issue and not sure if v2 will work with this requirement