I read that this is a known issue with earlier releases of the device.
Sonoff web site says:
If your dongle’s descriptor hasn’t been customed, you can use the tool linked below to change it to “Sonoff Zigbee 3.0 USB Dongle Plus”.
If your dongle still can’t be auto-discovered, it may be because your version of Hass hasn’t integrated this feature yet, you can follow the normal configuration steps below.
Thanks for the reply. I downloaded the tool but I’m confused and the only instructions are in Chinese. Am I supposed to plug the dongle in a computer and run the exe, or patch it from HA using the .py file?
Introduction: This tool is mainly used to modify the silicon chip usb dongle device descriptor to Sonoff Zigbee 3.0 USB Dongle Plus
Use under windows:
After the Dongle is plugged into the computer, double-click ManufacturingTool.exe
Use under linux:
After the Dongle is plugged into the computer, execute the command: ./ManufacturingTool
Note: The linux that comes with windows cannot use this tool, and the linux must be a 64-bit version.
instruction:
Could not find device :
If the device cannot be found, check whether the driver is installed correctly under Windows, and check whether the dongle is connected to the virtual machine under Linux.
Successful operation prompt:
Edit: Looks like you need to load the driver on Windows before you run it. I believe that the standard driver for the Zigbee dongle. If you have upgraded the firmware under Windows you probably already have it.
I first tried to run the included ManufacturingTool.exe binary executable after inserting the dongle into a USB port and seeing it discovered, then also tried installing Python for Windows and running the .py Python script provided without any luck with it writing the new product description to the CP2102 chip.
FYI, there is much more information about this issue USB discovery issue for Sonoff Plus dongle here:
As mentioned, what is needed is to use a script or program to write a new USB product description to the dongle CP2102N USB chip as those descriptions is what Home Assistant uses for USB discovery.
Note that product description in CP210x USB chip is only needed for USB discovery by ZHA integration:
Note that is only the parts regarding the "Product Description String” that applies in that tutorial as only that will write new product description to USB chip (and not the part about flashing Z-Stack firmware).
"As the “Product Description String” of the dongle plus’ CP2102N serial chip has been customed to a unique identifier “Sonoff Zigbee 3.0 USB Dongle Plus”, which has been also added to Home Assistant’s whitelist of auto-discovered devices, the configuration of the dongle in Hass can be very simple. Just plug the dongle into your computer, it will be automatically discovered, click “CONFIGURE” to complete the configuration automatically, and then add sub-devices to use.
If your dongle’s descriptor hasn’t been customed, you can use the tool linked below to change it to “Sonoff Zigbee 3.0 USB Dongle Plus”.
If your dongle still can’t be auto-discovered, it may be because your version of Hass hasn’t integrated this feature yet, you can follow the normal configuration steps below."
Of course you can do that as a one time temporary workaround but it is not a solution to the root cause.
That only applies to the Z-Stack Zigbee firmware and not the CP210x firmware specifically discussed.
Again, for USB discovery to work you do first need to write “Sonoff Zigbee 3.0 USB Dongle Plus” as the "Product Description String” unique identifier if you happen to got one of the early batches without that.
I have been tuck at this for a while. I have the latest version of HA, I have updated the dongle with the latest FW (CC1352P2_CC2652P_launchpad_coordinator_20220219.hex) using the TI tool, so I know the PC drivers work.
I try to use the ManufacturingTool.exe (I am on a windows environment for configuring the dongle) to change the description string, it keeps giving me the following:
My HA does not detect my dongle, and when I try the manual mode, my dongle does not show up in the Hardware list of HA. My other dongle still does (not Sonoff).
Any pointers? Trying to move to Sonoff because it supports up to 200 nodes with the new firmware. I have a lot of switches.
I just have bought a new dongle. If I try to add the device I get the following error
Logger: homeassistant.config_entries
Source: components/zha/core/gateway.py:170
First occurred: 16:23:24 (1 occurrences)
Last logged: 16:23:24
Error setting up entry Sonoff Zigbee 3.0 USB Dong - /dev/serial/by-id/usb-ITead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_2eaa1d155b9cec118a14634d73138bba-if00-port0, s/n: 2eaa1d155b9cec118a14634d73138bba - ITead - 10C4:EA60 for zha
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 357, in async_setup
result = await component.async_setup_entry(hass, self)
File "/usr/src/homeassistant/homeassistant/components/zha/__init__.py", line 112, in async_setup_entry
await zha_gateway.async_initialize()
File "/usr/src/homeassistant/homeassistant/components/zha/core/gateway.py", line 170, in async_initialize
self.application_controller = await app_controller_cls.new(
File "/usr/local/lib/python3.10/site-packages/zigpy/application.py", line 111, in new
await app._load_db()
File "/usr/local/lib/python3.10/site-packages/zigpy/application.py", line 59, in _load_db
await self._dblistener.load()
File "/usr/local/lib/python3.10/site-packages/zigpy/appdb.py", line 524, in load
await self._load_devices()
File "/usr/local/lib/python3.10/site-packages/zigpy/appdb.py", line 599, in _load_devices
async with self.execute(f"SELECT * FROM devices{DB_V}") as cursor:
File "/usr/local/lib/python3.10/site-packages/aiosqlite/context.py", line 41, in __aenter__
self._obj = await self._coro
File "/usr/local/lib/python3.10/site-packages/aiosqlite/core.py", line 184, in execute
cursor = await self._execute(self._conn.execute, sql, parameters)
File "/usr/local/lib/python3.10/site-packages/aiosqlite/core.py", line 129, in _execute
return await future
File "/usr/local/lib/python3.10/site-packages/aiosqlite/core.py", line 102, in run
result = function()
sqlite3.OperationalError: no such table: devices_v10
If you go online and get the tools they offer for their chipsets. Simplicity studio and some of the plugins. When you do, the zigbee stick is like a kit. Once plugged in, should be detected and the same program you got from the website can be downloaded then.
I wish I can redo and post stee by step but i have already deployed my setup.
I got ZBDongle-E yesterday. Neither Raspberry Pi 4B nor Windows 10 recognize the device. I installed the driver from Sonoff site, but windows still is not recognize the device. Dongle power led is on and windows see device as below. Any suggestion?