ITead's "Sonoff Zigbee 3.0 USB Dongle Plus" (model "ZBDongle-P") based on Texas Instruments CC2652P +20dBm radio SoC/MCU

Where exactly can the output power setting be increased to 20dBm after flashing ‘CC1352P2_CC2652P_launchpad_coordinator_20211217.hex’ which has the output set to 9dBm by default?

1 Like

Yes, I removed the cover and pressed the boot button. Unfortunately, it still doesn’t reach the bootloader.
Do I have an adapter like this
that could be used to flash?

Probably not. You need to verify that the debugger you buy supports 2-pin cJTAG (“IEEE 1149.7” a.k.a C-JTAG or c/JTAG) compatibility mode and not just common JTAG SWD as TI CC2652 debug do not use SWD and SWDCLK, etc. but instead only TMS and TCK cJTAG is not SWD/SWDCLK as cJTAG (IEEE 1149.7) is an extension to the JTAG standard (IEEE 1149.1). See details at → Flash Firmware using c/JTAG - Electrolama

Looking at pictures on ITead’s product page for the Sonoff CC2552P board you see that no SWD and SWDCLK pads are exposed, but it does expose TMS and TCK pads so those is what you need to use.

So will probably need cJTAG debug probe with TMS and TCK, and thus you will need to user a cJTAG compatible debugger probe adapter like Texas Instruments XDS110 or a clone of TI’s XDS110.


The cheapest option for an officially supported debugger is Texas Instruments CC-DEVPACK-DEBUG:

The official TMDSEMU110-U XDS110 JTAG Debug Probe is better option though as offer more options:

Texas Instruments XDS110 JTAG debug probe is a bit expensive but cheap clones of it should work, ex:

Also, note that original Segger J-Link V9 (legacy) debug probes does not support cJTAG, so need at least a Segger J-Link V10:

Finally Texas Instrument’s registration is working again :face_with_hand_over_mouth:



Hello !
I would like to know too :slight_smile:


1 Like

Posted details above in a previous post →


Zigbee2MQTT adapter settings examples:

transmit_power: 5
transmit_power: 9
transmit_power: 14
transmit_power: 20

ZHA integration advanced configuration examples:—yaml

Also, looking at zigpy-znp configuration example sounds as if 19 dBm is highest can set for CC2652P?

      tx_power: 5

5 versus 9 in tx_power configuration

      tx_power: 9

9 versus 14 in tx_power configuration

      tx_power: 14

14 versus 19 in tx_power configuration

      tx_power: 19


PS: Recommendation after testing is just to leave it at the new +9 dBm default and use that instead of using a higher setting thinking to get better result, as it is just the Zigbee coordinator “shouting louder” and not “listening better” so if Zigbee devices from very far away try to connect directly to the Zigbee coordinator instead of going through a Zigbee router then their signals back might not always be strong enough.

1 Like

Hey, everybody,
I have a few questions. I have HA running on HAOS (non-virtual environment). I currently have ZHA installed with about 75 devices. Every time HA restarts then only about 60 devices boot back up. Most of the time the end battery sensors go down. So I updated the coordinator firmware (Sonoff ZigBee 3.0 USB) to the latest version 20211712 according to the instructions

Unfortunately, after putting the coordinator back in, no devices loaded and I had to re-pair all 75 devices. Unfortunately, even so, this did not help solve my problem that after restarting HA some devices do not load (and I have to manually add them again).

  • Please, is it necessary to do some IEEE backup or something like that before updating the firmware (using FLASH-PROGRAMMER)?

Thank you very much for your help

Hello everyone,

Newbie on HA with Zigbee2mqtt , aqara devices and this sonoff dongle plus. I started pairing with two aqara devices : a temp/humidity sensor and a wireles mini button.
The battery indicator of the temp/humidity sensor shows a “?” symbol instead of the battery level/status.

I have read other people having battery level indicator issues with aqara devices and this sonoff dongle plus. Has anyone else had this problem and solved it ?

Thank you

Sometimes takes several hours before xiaomi zigbee devices will report a battery value, it should hopefully show a value after a few more hours.

Unfortunately even then the battery value is only an approximation. Often with some of the older xiaomi / aqara devices the battery value will seem OK but its only when the device drops off the network that I realise the battery is dead. Pretty much anything below 50% means it could die at any time. Most of the xiaomi sensors have brilliant battery life though (years, in some cases).

I’ve bought one of these sticks to replace a flakey cc2531 (would have to be unplugged and plugged back in every couple days to work)

I followed the instructions on the Z2M site for updating the ieee address of the sonof to match the old device and it looked like it had worked

Starting Zigbee2MQTT fails with the below error message.

2022-01-09T09:28:01.202Z zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext []
Zigbee2MQTT:error 2022-01-09 09:28:59: Error while starting zigbee-herdsman
Zigbee2MQTT:error 2022-01-09 09:28:59: Failed to start zigbee
Zigbee2MQTT:error 2022-01-09 09:28:59: Exiting...
Zigbee2MQTT:error 2022-01-09 09:28:59: Error: Coordinator failed to start, probably the panID is already in use, try a different panID or channel
    at /app/node_modules/zigbee-herdsman/dist/adapter/z-stack/adapter/startZnp.js:172:23
    at Generator.throw (<anonymous>)
    at rejected (/app/node_modules/zigbee-herdsman/dist/adapter/z-stack/adapter/startZnp.js:25:65)
npm ERR! errno 1
npm ERR! [email protected] start: `node index.js`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2022-01-09T09_28_59_820Z-debug.log

If i change the panID zigbee2MQTT loads but then will have to repair all my devices.

Have i missed something? Would rather avoid repairing if i can.

1 Like

You are still using the deprecated daniel welch add-on. Upgrade your add-on to the official one

Reinsert your cc2531, start the add-on with version 1.22.2 at least once, then swap to the CC2652.


Backup of your old dongle and restore to new is required for ZHA when migrating from another dongle.

Firmware upgrades usually erase network settings so best to perform a backup before upgrading.

Backup is not strictly necessarily required when upgrading firmware on the same dongle however it is still always recommended to do backups. If you for example mess up and flash the wrong firmware image (as some people do) then you will need that backup to restore without having to pair all devices again. Upgrading firmware can sometimes also reset some configurations stored on the dongle itself.

1 Like

Tip! le_top added possibility to backup your Zigbee network to a JSON file within Home Assistant ZHA via “zha_custom” custom component by mdeweerd (originally fork of zha_custom by Adminiuga):

I must have missed the change of repo for the add-on! Thanks seems to be working now.

Hopefully the new dongle wont still keep losing connection every couple days!

1 Like

FYI, not confirmed but someone now claims Auto-BSL is also working in the ZigStar GW Multi tool too:

1 Like

I bought one of these dongles as my first foray into Zigbee having only started with HA about 9 months ago and only used WiFi devices before now. My HA runs as a VirtualBox VM on a Windows host and I’ve been able to pass through USB to connect the dongle to the HA VM and ZHA detects it OK from within HA. All good so far, this it where it all unravels though.

I have 3 Sonoff Zigbee devices, two motion sensors and a door sensor, all battery powered. When I put them in pairing mode ZHA seems extremely hit and miss whether it detects the device or not despite only being 1 plasterboard wall and about 3m from the dongle. Having added all 3 again last night after reinstalling the integration from scratch just in case, by this morning 2 of the devices reported as “unavailable”. I then moved the sensors so they sat within 20cm of the dongle and although one sensor then reconnected the other stays “unavailable”. What’s more the door sensor that is back online continually reports 2% battery despite the battery having 3.2v tested and having swapped it for another new battery just in case.

My host PC is fairly close to my main Asus WiFi router so could be a source of interference but I’ve connected it to a 2m USB extension lead to get it as far away as practical, surely connectivity shouldn’t be this flaky should it? Is there a chance I’ve got a faulty aerial on the dongle perhaps?

I have a similar setup except I’m using ESXi that also sits next to my ASUS router. My first suggestion is to upgrade the firmware to the latest. I’m running the latest dev version. The firmware that is pre-flashed may not be that great. There is a YouTube vid a few post up that shows the process if you are not familiar. After that try increasing the tx. I was getting a big delay with the default tx. Changing mine to tx 10 helped a great deal. Instructions for that is posted before the YouTube vid about the firmware update. Another thing to check is the make sure your wifi and zigbee network are not using the same channel. I use Zigbee2mqtt and that defaults to channel 11. I assume zha does as well. Hope that helps.


If only using Xiaomi/Aqara and Tuya sensors without any Zigbee Router devices then yes they can be unreliable, especially during pairing. Suggest update coordinator firmware first then follow all these tips:


If you are still having problems after following all that (preferably including adding at a few known good mains-powered Zigbee devices) then I too would assume that your problem is faulty antenna or dongle.

The tx_power in the latest firmware is already set to +9 dBm as default so that should best for most scenarios. Increasing tx_power to more than that you might actually get a worse result because it will only make the coordinator “shout louder” and not “listen better” so it can get issues receiving instead.

Note! Recommendation is to change channel on Wi-Fi routers/APs, and not changing Zigbee channel. Reason for that is that some Zigbee devices will not pair and/or communicate on all Zigbee channels.

1 Like

Complete Idiot that I am I inadvertently flash the wrong firmware to my Sonoff USB Plus stick, im getting the following on checking dmesg, but when i try and flash using llama or ccbsl i get the 55 error. (I’ve tried the boot button aswell)

I assume the device is dead unless i can reflash using the special TI cjtag debugger? I have a CCdebugger for my old stick but i assume thats no good?

cp210x 1-4:1.0: device disconnected
usb 1-4: new full-speed USB device number 14 using xhci_hcd
usb 1-4: New USB device found, idVendor=10c4, idProduct=ea60, bcdDevice= 1.00
usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-4: Product: Sonoff Zigbee 3.0 USB Dongle Plus
usb 1-4: Manufacturer: ITead
usb 1-4: SerialNumber: 1ea97fabbf19ec118dc37fe5f01c6278
cp210x 1-4:1.0: cp210x converter detected
usb 1-4: cp210x converter now attached to ttyUSB3

Yes and yes, you will need another type of debugger probe to unbrick CC2652 and CC1352 chips, see: