SLZB-06M coordinator “idle”, stuck at Zigbee2MQTT Onboarding page, tried everything

I’m trying to get my SM Light SLZB-06M Zigbee coordinator working with Zigbee2MQTT over LAN (PoE) in Home Assistant. I just can’t figure it out.

Setup:

  • My HAOS is running as a VM on Proxmox, with network device set to bridge=vmbr0 (Linux Bridge), so the VM and the SLZB-06M are on the same LAN and subnet.

  • SM Light SLZB-06M is set as Coordinator (LAN, not USB)

  • SLZB-06M is using a TP-Link PoE injector (have also tried USB-C)

  • SLZB-06M has a static IP, can access device’s web GUI, no problem whatsoever

  • Using TCP: tcp://192.168.178.8:6638 (standard SLZB-06M port, as seen in SLZB’s GUI)

  • Adapter: ember (also tried ezsp, same result)

  • Note: in my internet router > Settings > Home Network > Network > Network connections, the SLZB-06M is sometimes listed as “active” (green) but most of the time it’s listed as “idle” (greyed out); even when greyed out, I can access the GUI without any porblem

Problems:

  • SLZB-06M shows as “idle” in my router’s network list (sometimes goes green/active after a reboot
  • I can always ping the device and access its web GUI, but the TCP bridge (6638) seems to be the problem, maybe?
  • Zigbee2MQTT onboarding always gets stuck, it shows “Found Devices: /dev/ttyS0 to ttyS3” but no LAN coordinator, which I understand is normal (should use YAML for networked sticks) since my HAOS is a VM on the Proxmox
  • When I start Z2M, logs only show the “onboarding page is available…” line, then nothing else. No errors, no info, no coordinator startup messages:
[19:16:25] INFO: Preparing to start...
[19:16:25] INFO: Socat not enabled
[19:16:26] INFO: Starting Zigbee2MQTT...
Starting Zigbee2MQTT without watchdog.
Onboarding page is available at http://0.0.0.0:8099/

What I’ve tried:

  1. Confirmed ping and web GUI work for the SLZB-06M.
  2. Tested both PoE injector and USB-C for power; device comes online, but problem persists. After some DYOR, PoE injectors are reported to cause instability, but no real improvement with USB-C.
  3. Checked the (new) network cable and tried a (new) different one.
  4. Confirmed port 6638 is listening: couldn’t telnet (not installed) but shell Test-NetConnection -ComputerName 192.168.178.8 -Port 6638 threw: “TcpTestSucceeded : True”.
  5. Zigbee2MQTT config: should be okay, copied from SLZB-06M GUI, “Z2M and ZHA” tab
  6. No other Zigbee integration is enabled (ZHA, etc.).
  7. Rebooted everything multiple times, tried both current and old configs (different adapters, indentation, etc.).
  8. Logs only ever show: see above
  9. Tried both ember and ezsp as adapters: same result.

Any ideas?

Questions:

  • Is there a definitive way to test if the serial bridge on SLZB-06M is really listening and accepting connections? Any tricks for checking if Z2M is actually talking to it?
  • Is there a way to debug if the Z2M add-on is failing to parse config, or silently dying before starting the Zigbee stack?
  • Anyone running the same setup? Can you share your known-working config, and PoE hardware brand?

What else can I try? I think I tried just about everything. If you need more details, just ask. Thanks in advance for any insight!

configuration.yaml:

version: 4
mqtt:
  base_topic: zigbee2mqtt
  server: mqtt://core-mosquitto:1883
  user: addons
  password: A.............................................h
serial:
  port: tcp://192.168.178.8:6638
  baudrate: 115200
  adapter: ember
  disable_led: false
  rtscts: false
advanced:
  log_level: debug
  channel: 11
  network_key:
    - 79
(cut some values here for readability)
    - 13
  pan_id: 40337
  ext_pan_id:
    - 9
(cut some values here for readability)
    - 144
  transmit_power: 20
frontend:
  enabled: true
  port: 8099
homeassistant:
  enabled: true
onboarding: true

Update:

I ran “ps aux | grep 6638” in the HA terminal add-on:
206 root 0:00 grep 6638

I ran “ps aux | grep socat” in the HA terminal add-on:
209 root 0:00 grep socat

I ran “ps aux | grep ser2net” in the HA terminal add-on:
212 root 0:00 grep ser2net

I ran “netstat -tulpen | grep 6638” and it didn’t return anything, just a new blank line:

[core-ssh ~]$netstat -tulpen | grep 6638
[core-ssh ~]$

Nothing is exposing the SLZB as a TCP port on my Home Assistant system. There is no open port 6638 on HAOS or the Proxmox VM. So why did nc report “open”? No idea…

change this to false if you filled out the config tab on the Z2M addon

Onboarding does better if you:

For Onboarding

  1. Place the Z2M in the sidebar to assist with onboarding

  1. Leave these fields clear in the Z2M config

  1. Start Z2M and then click the SideBar link, you should see the onboarding screen.
  2. Fill in your config data there.

Also in future please format your config correctly. Dont use the quote button. Use the preformatted text button </> which sometimes hides in the cog icon menu. Spacing and indentation are important in YAML and we cant see if you have made a mistake unless you do this.

Thank you, @LiQuid_cOOled, but that didn’t solve it:

  • I set onboarding to: false
    1. Z2M was already in sidebar
    1. mqtt and local were already empty
    1. restarted Z2M
    1. onboarding page not available anymore (unable to start Z2M):
[2025-06-23 09:46:10] debug: 	zh:ember:uart:ash: Waiting for RSTACK... 2400/2500
[2025-06-23 09:46:10] error: 	z2m: Error while starting zigbee-herdsman
[2025-06-23 09:46:10] error: 	z2m: Failed to start zigbee-herdsman
[2025-06-23 09:46:10] error: 	z2m: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start_crashes-runtime.html for possible solutions
[2025-06-23 09:46:10] error: 	z2m: Exiting...
[2025-06-23 09:46:10] error: 	z2m: Error: Failed to start EZSP layer with status=HOST_FATAL_ERROR.
    at EmberAdapter.initEzsp (/app/node_modules/.pnpm/[email protected]/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:666:19)
    at EmberAdapter.start (/app/node_modules/.pnpm/[email protected]/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:1548:24)
    at Controller.start (/app/node_modules/.pnpm/[email protected]/node_modules/zigbee-herdsman/src/controller/controller.ts:133:29)
    at Zigbee.start (/app/lib/zigbee.ts:71:27)
    at Controller.start (/app/lib/controller.ts:102:13)
    at start (/app/index.js:149:5)

Hi @tom_l, I didn’t know that. Fixed. And post updated:

Update:

I ran “ps aux | grep 6638” in the HA terminal add-on:
206 root 0:00 grep 6638

I ran “ps aux | grep socat” in the HA terminal add-on:
209 root 0:00 grep socat

I ran “ps aux | grep ser2net” in the HA terminal add-on:
212 root 0:00 grep ser2net

I ran “netstat -tulpen | grep 6638” and it didn’t return anything, just a new blank line:

[core-ssh ~]$netstat -tulpen | grep 6638
[core-ssh ~]$

Nothing is exposing the SLZB as a TCP port on my Home Assistant system. There is no open port 6638 on HAOS or the Proxmox VM. So why did nc report “open”? No idea…

It’s one or the other. If the config is empty you need to fill out the onboarding page.

you mean mqtt and serial?

  • my config wasn’t empty but when I change onboarding to: false, as per your suggestion, Z2M doesn’t start at all
  • yes, mqtt and serial, sorry
  • my issue seems to be port 6638 related, not config

If you are having network port issues, the advice I shared is worthless.

Tale a look at the SLZB UI via the IP http://192.168.178.8 or whatever the IP shows on your router

I did that about 50 times or so in the past 2 days:

--- in the SLZB-06M control panel, I can see:

-- Mode:

- Radio [EFR32MG21] Mode
- Zigbee Coordinator: checked
- Zigbee Router: unchecked
- Matter-over-Thread: unchecked
- Socket Port: 6638, Serial Speed: 115200: both greyed out, I cannot change these values

- Bluetooth proxy mode
- Bluetooth Proxy (ESPHome based): unchecked

- Ethernet to Wi-Fi bridge: unchecked

- Connection mode
- Ethernet connection: checked
- Wi-Fi connection: unchecked
- USB connection: unchecked
- Keep ON Wi-Fi/Ethernet network & web server in USB mode: checked, greyed out

I’m on the latest SLZB firmware, the problem is not the config but the port 6638, just don’t know how to fix…

Z2M and ZHA to change the port

Thank you very much, @francisp! I changed the port to 8888 and that solved it. Phew, that wasn’t easy! Glad it’s done. Thanks again!