ITead Zigbee 3.0 USB dongle/stick/adapter based on Silicon Labs EFR32MG21

I am able to add devices, and they work. After clicking on the “Coordinator”, there is an add device button and that performs the pairing. Works great. Thanks for all the help, I love this community.

1 Like

After trying many times a managed to add 1 Ikea lamp and my xiaomi deviced. 4 other Ikea lamp Wont join

I have the integrated added just fine but cannot seem to pair any bulbs (Hue or Ecosmart). My abode hub seems to pick them up just fine, not sure where the issue is :frowning: Running HA on a RPi4, stick is in the 3.0 USB slot.

A general tip is that some type/models of Zigbee devices can be tricky to pair when you are first creating your Zigbee network unless you hold the device very close (as in even closer than 10-centimetres/4-inches) for the initial pairing and that will then obviously sometimes mean that you either have to move the Zigbee device to the Zigbee coordinator USB dongle or vice versa by temporarily moving the Zigbee coordinator USB dongle (and thus also your whole Home Assistant installation) closer to the Zigbee device just for the pairing process.

Also, adding any device that has previously been paired to another coordinator/bridge/gateway will usually not show up during search unless you first reset those devices to their factory default settings.

Resetting to factory default settings are not the same on all models and each manufacturer might call the reset to defaults setting process/options something different, like; reset, restore wipe, erase, etc…

Tips on resetting Philips Hue / Signify Hue devices here:

https://www.home-assistant.io/integrations/zha/#add-philips-hue-bulbs-that-have-previously-been-added-to-another-bridge

Not sure if that should matters but FYI, this stick is a USB 2.0 / 2.x adapter and not USB 3.0 / 3.x stick.

It uses a CH340E (WCH 340E942 USB-to-UART chip) to convert USB bus to serial communication.

If are not using Home Assistant OS then you might have to first CH340 drivers in the operatingsystem.

https://learn.sparkfun.com/tutorials/how-to-install-ch340-drivers?_ga=2.41031015.417113913.1617180575-428830341.1616414600

I removed the integration, shutdown the host (RPi), added the device in a USB 2.0 slot, booted, reinstalled the integration (seemed to install fine), but still no device pairing :frowning:

I will try and find a way to get the bulbs super close (they are maybe 10ft away now) and try again.
Update: No dice with the bulbs right next to the stick.

Here are a few others across Reddit/HA Community having similar issues:.
Reddit HA Thread
Reddit Sonoff Thread

Can you maybe post some links to those other discussions or perhaps even refer them to this thread?

I think best would be if we could collect all info and links in one place, at least now in the beginning while this device is brand new, that way most of the teething issues can hopefully be sorted out early.

I do not believe that your issue is with the code in upstream bellows library (nor upstream zigpy library) so if you want to open a bug report with debug logs from ZHA then you should first report it via HA core:

https://github.com/home-assistant/core/issues

That process for reporting issues and how-to collect debug logs is summerized in ZHA documentation:

https://www.home-assistant.io/integrations/zha/#reporting-issues

https://www.home-assistant.io/integrations/zha/#debug-logging

But be sure to also read all the general rules and guidelines for reporting issues to Home Assistant:

https://www.home-assistant.io/help/reporting_issues/

Tip is to not cut and paste long logs in issue tracker, but if have longer logs post to pastebin and link it:

https://pastebin.com/

Hi Hedda

Thank you for the thoughtful insight on how to progress with this issue! I have modified by above post with links to the reddit threads referencing the issue. Additionally I followed your linked reporting issues best practices and submitted one to HA Core and included logs at the recommended debug levels using pastebin.

ZHA: Unable to Pair Devices w/ ITEAD Zigbee 3.0 USB Dongle #48592

1 Like

unable to connect socket. i tried socket://192.168.1.31:8888
115200 port.
keeps failing when manual is selected.
when i select /dev/ttyUSB0 - USB Serial, s/n: n/a
i can set it up. but i cannot add any device as child.

1 Like

Work perfect for me. I have to delete zigbee.db
I have 30 zigbee devices all works

Socket is only for connecting to remote port via Serial-to-IP bridge/gateway/proxy over Ethernet or WiFi.

Zigbee adapter connected directly via USB, GPIO or UART should get mapped to a local serial port.

https://www.home-assistant.io/integrations/zha/#configuration—gui

Most devices need at the very least the serial device path, like /dev/ttyUSB0 , but it is recommended to use device path from /dev/serial/by-id folder, e.g., /dev/serial/by-id/usb-Silicon_Labs_HubZ_Smart_Home_Controller_C0F003D3-if01-port0

A list of available device paths can be found in Supervisor > System > Host System > dot menu > Hardware .

If not using Home Assistant OS then do a google search for something like ex. “linux listing serial ports”

oddly i was able to pair the snzb-01 button which i ordered with the adapter. i have some old aqara sensors but i cant seem to get them in pairing mode, and even my hues, i cant get them to pair. im using an rpi with usbip and sharing that with the home-assistant docker setup in my basement. i also did flash the newer fw.
its the 1st time im using the stick, but im not sure if my hues are still paired to the hub (i added and deleted them from the hue app).

this is what the log shows when i press the button:
[0x0000:zdo] ZDO request ZDOCmd.Mgmt_Permit_Joining_req: [60, <Bool.false: 0>]
[0x8a60:1:0x0006] ZCL deserialize: <ZCLHeader frame_control= manufacturer=None tsn=8 command_id=2>
[0x8a60:1:0x0006] ZCL request 0x0002: []
[0x8a60:1:0x0006] No handler for cluster command 2

EDIT: i was able to pair my aqara sensors now. still cant get the hue bulbs in pairing mode i believe.
also i used the add device by ID instead of /dev/ttyUSB0

If a device is not brand new then you always have to first manually reset each device to its factory default before you will be able pair to a other Zigbee coordinator that it has never been paired to before.

Devices that follow standard Zigbee specifications device can probably be paired after a factory reset.

Note that pairing may require multiple attempts and you may need to try again to reset and pair devices.

Understand that resetting devices to factory default settings can be different for each device model and manufacturer and there are also several different methods for factory resetting each type of device.

Recommend lookup each device in Zigbee2mqtt + Blakadder lists for some tips on resetting + pairing

https://www.zigbee2mqtt.io/information/supported_devices.html

https://zigbee.blakadder.com/

I know that just removing Hue devices from Philips Hue Bridge does not reset them to their defaults.

Suggest first read https://www.home-assistant.io/integrations/zha/#add-philips-hue-bulbs-that-have-previously-been-added-to-another-bridge and also check out this other new tip if got a Lutron remote https://github.com/home-assistant/home-assistant.io/issues/16908

Xiaomi / Aqara devices are not fully Zigbee compliant, and are known to suffer from multiple problems.

Tip is that Hubitat has posted quite a few tips and tricks that are specific to Xiaomi and Aqara devices:

https://community.hubitat.com/t/xiaomi-aqara-devices-pairing-keeping-them-connected/623

Pairing Xiaomi / Aqara Devices

Best Practices When Pairing

  • Before anything else, if you haven’t read it already, please read Hubitat’s informative and helpful How to Build a Solid Zigbee Mesh support how-to article. Based on that article, you should:
    • Check that you have enough ZigBee repeater devices, and if you don’t have any, invest in some repeaters that are known to work with Xiaomi / Aqara devices. Please see a list of repeaters confirmed to work near the bottom of this post. However, you should also…
    • Make sure you don’t have any “incompatible” ZigBee repeaters (i.e., reported not to work with Xiaomi / Aqara devices). Again, please check the list near the bottom of this post.
    • Pair your Xiaomi / Device in its intended final location, not next to the hub. As explained in the above linked how-to page, pairing a ZigBee device next to the hub and then moving it can result in a dropped connection or other issues (such as dropped ZigBee messages).
  • Follow the pairing procedure specific to the Xiaomi / Aqara device. In general, please refer to my basic pairing instructions found in this post. Here are links to pairing instructions / recommendations for some specific devices:
  • Be patient. Some users have reported needing to go through numerous pairing attempts before success. As in 10-20+ minutes of attempts.
  • If a Xiaomi / Aqara device just won’t complete the pairing process, there are a few things that can be tried to manually pair it to a Hubitat hub. Please see this post for details.

Possible reasons for pairing difficulties

  • Interference from another nearby Zigbee hub and/or 2.4GHz WiFi router (see this post for more information)
  • The device may simply be difficult to pair with a non-Xiaomi hub, for example: the 2 button Aqara Smart Wall Switch model WXKG02LM.
  • Pairing through an incompatible Zigbee repeater device (see lists, below)
  • The maximum end-device limit has been reached: 32 ZigBee end devices can be connected directly to the Hubitat hub, and any ZigBee repeater devices used to go above that maximum will also have a limit on how many end-devices can be connected through them.
  • A “weak” Zigbee network mesh (e.g., the device is too far from the hub or a repeater)
  • The Zigbee Stick may need to be reset. (There is one reported instance of a reset resolving pairing issues with Xiaomi / Aqara buttons.)
  • Low battery voltage. Some people have reported replacing the battery on their newly received Xiaomi / Aqara devices solved pairing issues.

thank you very much. i did end up pairing the aqara sensors after many attempts and they work well. i ordered a dimmer for the moment as i tried using hue-thief using the docker container, but it literally just hung doing nothing. i saw it was using the s = await util.setup(device, baudrate=57600) so i changed it to 115200, but still no luck resetting them. i’ll wait till the dimmer comes in and try again. thank you.

EDIT: I got the wireless dimmer just now and was able to reset the bulbs. now they are working with the zigbee stick.

cloudfree has plenty in stock

1 Like

FYI, firmware released with it has AT LEAST one serious bug so require a firmware upgrade before use.

https://github.com/xsp1989/zigbeeFirmware/tree/master/firmware/Zigbee3.0_Dongle

  • ncp-uart-sw_679_115200.gbl = v6.7.9 (EZSP v8), software flow control, 115200 baud rate
  • ncp-uart-nsw_679_115200.gbl = v6.7.9 (EZSP v8), no flow control, 115200 baud rate
  • ncp-uart-sw_678_115200.gbl = v6.7.8 (EZSP v8), software flow control, 115200 baud rate
  • ncp-uart-nsw_678_115200.gbl = v6.7.8 (EZSP v8), no flow control, 115200 baud rate
  • ncp-uart-sw_655_115200.gbl = v6.5.5 (EZSP v7), software flow control, 115200 baud rate

Home Assistant’s ZHA integration should work with their “sw” (software flow control) firmware images. ITead has regardless not yet provided firmware images preconfigure for “hw” (hardware flow control).

Firmware can be updated via Elelabs EZSP Firmware Update Utility after stop any software that use it.

https://github.com/Elelabs/elelabs-zigbee-ezsp-utility/

Example command:

#python3 Elelabs_EzspFwUtility.py flash -f data/ncp-uart-sw_679_115200.gbl -p /dev/ttyUSB0
#python3 Elelabs_EzspFwUtility.py probe -p /dev/ttyUSB0

Alternatively can update firmware using Docker image → https://github.com/walthowd/husbzb-firmware

Note! FW or HW still has more bugs as per info in https://github.com/home-assistant/core/issues/48592

PS: Maybe unrelated to problems experienced so far but FYI; CH340E (WCH CH340 E) USB to Serial chip the dongle uses is apparently infamously known to have driver issues in both Linux and Mac OS.

2 Likes

I’m using it for my CC2652 USB coordinators. It has issues with my mac for sure, but has been rock solid on Linux.

2 Likes

FYI, apparently the engineer of this ITead stick missed connecting RTS and CTS between the EFR32 chip and the CH340E chip, meaning it will not be possible to build firmware with hardware flow control:

https://github.com/xsp1989/zigbeeFirmware/issues/15

You will of course still be able to use software flow control with ZHA and that should be to work as well from an end-user perspective as long as all other components are properly implemented and stable.

Note! Developers and users who tested this as a Zigbee coordinator now believe that device paring issues with this Zigbee 3.0 dongle from ITead seem to be due to extreme sensitivity to component and environmental noise or interferences as they discovered that device pairing works much better if use a long USB extension cable and get it as far away from other electronic appliances as possible (including the computer that you run your home automation application software on as well as any devices such as example external harddrives or storage devices, and power-supplies, etc.).

Their troubleshooting has revealed that CCA fail count gets much lower with a USB extension cord.

It is true that using a USB extension cable and trying to keep it away from other possible sources that can interfere with receiving signals is the general recommendation for all RF radio dongles for home automation control, but in this specific case, the interference symptoms are so extreme that users are reporting not being able to pair any devices at all unless getting it some distance away from their computer plus devices/appliances like external harddrives (and of course any WiFi access points, etc.).

Note! As you can see from the pictures the radio chip and the crystal does circuit does not have a EMF shielding (metal plate cover) which means that this board will be very sensitive with its current hardware design will have very high receive sensitivity to electromagnetic interference (EMI) / radio-frequency interference (RMI). This means that it will be extra important to keep it away from any other electronic devices or appliances that may generate an electromagnetic field (EMF or EM Field) or send our interfering radio signals. That includes the computer that you run your home automation application software on as well as any devices such as for example external harddrives or storage devices, power-supplies, etc., and of course any Wi-Fi access points or routers nearby. It also means that the dongle in its current hardware revision is unlikley to ever pass FCC certification. If adding electromagnetic shielding to your other devices/appliances is not possible then one workaround is to use the dongle with a long USB extension cable to get it away as far as possible from any sources of electromagnetic interferances.

PS: I also understand that the EFR32 board antenna design of the “SM-011 V1.0” Zigbee module used inside ITead’s Sonoff ZBBridge share the same antenna design have very high receive sensitivity to electromagnetic interference (EMI) / radio-frequency interference. This means that it will be extra important to keep it too away from any other electronic devices or appliances that may generate an electromagnetic field (EMF or EM Field) or send our interfering radio signals.

Too bad ITead didn’t add SMA (or IPEX) connector + external antenna or used a ceramic chip antenna.

Solder points for PCB trace antenna look too small for an average DIY thinker like myself for soldering on a RG316 SMA-Female to PCB solder pigtail antenna cable, but maybe others are willing to do it?

There are guides to solder SMA connector PCB trace antenna path so can use external antenna, ex:

https://www.instructables.com/External-Antenna-for-ESP8266/

https://community.home-assistant.io/t/how-to-add-an-external-antenna-to-an-esp-board/131601

https://community.openhab.org/t/esp8266-antenna-mod-extend-wifi-range/78982

Most of those guides use RG316 SMA-Female to PCB solder pigtail cable and a 2.4GHz WiFi antenna:

https://www.amazon.com/Pigtail-Antenna-Extension-Connector-Lsgoodcare/dp/B072LFYHHN

Note that there are of couse a huge difference in quality between different external antennas for Zigbee:

https://notenoughtech.com/home-automation/testing-9-external-antennas-with-cc2531-zigbee-coordinator/

PS: New dongles with only integrated antenna should use a ceramic antenna, not a PCB trace antenna.