HassOS and Sonoff Zigbee 3.0 Dongle Plus


Running into an issue with the Sonoff Zigbee 3.0 dongle plus, stock firmware running on HassOS (core-2022.4.7).
Device: Asus Tinkerboard

When I plug in the device, nothing appears in HA.
I did some research and was able to find that HA does see it via Terminal in dev/serial/by-id/

I have read about permissions being an issue, but I do not have the same commands available (or don’t know how to get to them) when running HassOS (others are using Linux variants, or containers).

If anyone has experience with this, would love to get it to work.

Thank you!!

I think you need to flash the Sonoff Zigbee 3.0 dongle’s firmware to use it in HA. Lots of good videos on YouTube showing you how to do it.

If you can see it via the terminal then check if you can see it under hardware in Home Assistant OS?

Configuration → Add-ons, Backups & Supervisor → System → Host → Three-dots → Hardware

Also read the many more tips here → https://community.home-assistant.io/t/iteads-sonoff-zigbee-3-0-usb-dongle-plus-based-on-texas-instruments-cc2652p-20dbm-radio-mcu-now-sold-for-14-99/340705

Not related to your original issue but recommend also following tips here → https://github.com/home-assistant/home-assistant.io/pull/18864 as well as best practices later → https://www.home-assistant.io/integrations/zha#best-practices-to-avoid-pairingconnection-difficulties

The default firmware it ships with should work out–of-the-box but always recommend upgrade firmware

Thank you for your suggestions, yes, I do see it there, here is the log:

Device path:
DEVNAME: /dev/ttyUSB0
DEVPATH: /devices/platform/ff540000.usb/usb1/1-1/1-1.4/1-1.4:1.0/ttyUSB0/tty/ttyUSB0
ID_BUS: usb
ID_MODEL: Sonoff_Zigbee_3.0_USB_Dongle_Plus
ID_MODEL_ENC: Sonoff\x20Zigbee\x203.0\x20USB\x20Dongle\x20Plus
ID_PATH: platform-ff540000.usb-usb-0:1.4:1.0
ID_PATH_TAG: platform-ff540000_usb-usb-0_1_4_1_0
ID_SERIAL: Itead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_0001
ID_TYPE: generic
MAJOR: '188'
MINOR: '0'
TAGS: ':systemd:'
USEC_INITIALIZED: '173650367331'

I have flashed the firmware as per: Z-Stack-firmware/CC1352P2_CC2652P_launchpad_coordinator_20220219.zip at master · Koenkk/Z-Stack-firmware (github.com)

I have updated it using FLASH-PROGRAMMER-2 — SmartRF Flash Programmer v2.
I had to install the drivers for Windows 11 (CP210x_Universal_Windows_Driver) prior.
I tried using the Itead software to update the description, but it ‘could not find’.

I would like to use ZHA not MQTT if possible.

Any further thoughts based on updated information?

Thank you!!!

The information you just posted above, looks good. The device is seen on path /dev/ttyUSB0.
I just re did my zigbee network from scratch, using the same dongle, and I have also updated the firmware on it.

I don’t know if you had ZHA already installed. I did, so I had to delete it, then read add it. When I re-added it, it saw the dongle on /dev/ttyUSB0 immediately.

Under 2022.5.0: if you go to Settings > Devices & Services, do you see the ZHA integraions on the Integrations tab? If not, you have to add the integration.

@pmulkins Are you sure that you did not connect the same serial device path in another or an existing integration or application?

If you have then that serial path will be locked until you disable or stop that other integration/application.

Can test if you can communicate with the Z-Stack application firmware on the USB adapter using zigpy-znp command tools on a different computer just to see if the adapter and application firmware work?


You could for example try NVRAM reset (a.k.a. factory reset) of the ZNP by erasing the NVRAM entries in it by running one of the following command: python -m zigpy_znp.tools.nvram_reset /dev/serial/by-id/your-radio

It must already have the correct description as otherwise the by-id serial path would not read “Itead…”, so there should be no reason for you to try to update the USB description again.

Yeah if it is seen under hardware in the supervisor then should have permission and should be able to either add it manually using either /dev/ttyUSB0 or dev/serial/by-id/usb-Itead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_0001-if00-port0 as device path or alternatrivly even let Home Assistant OS and ZHA auto discovering the USB adapter (if have not already installed ZHA or something else is using that device / serial port device path).

Oh man, I feel like an idiot.
Ok, yes, I had ZHA already installed as I was going from the SONOFF ZBBridge (which was NOT reliable) to the slightly more reliable dongle…
It got me thinking, so I deleted it, then re-added ZHA, as a result it was seen immediately.

I truely appreciate everyones help on this!

Thank you!!

Great, glad you got it working!