ITEAD Studio (of Sonoff fame) now sells this linked Zigbee USB dongle for only $4 US-dollars, it is based on a Texas Instruments CC2531 chip and has no enclosure or external antenna but comes pre-flashed with a Zigbee coordinator firmware that should make it compatible and ready-to-use directly with several computer-based DIY home automation controllers/hubs, including Home Assistant on Raspberry Pi.
That firmware which comes preloaded on those should make it out-of-the-box compatible with the Zigbee2mqtt gateway with Home Assistant or on its own, as well as the native ZHA integration built-into Home Assistant (which is compatible with many different Zigbee adapters from multiple manufacturers, without Zigbee2mqtt).
@nickrout I disagree with you here as I think that you are wrong on both those accounts and will try to explain why below.
My argument regarding these being very inexpensive is that the total cost of ownership the CC2531 USB-dongle that ITEAD sell are less than others because they already come pre-loaded/pre-flashed with the correct firmware, especially if you only want one or two. You can not simply compare to current Aliexpress prices for just any CC2531 USB-dongle as those that have similar prices to ITEAD do not come pre-loaded/pre-flashed with the correct firmware.
If you are straight just looking to buy a other CC2531 USB-dongle which already come pre-loaded/pre-flashed with the correct firmware so that it compatible out-of-the-box has these then know that at least I have not been able to find a reseller that sells those for under twice the price of what ITEAD are sell selling its pre-loaded/pre-flashed CC2531 USB-dongle. For example on eBay pre-loaded/pre-flashed CC2531 USB-sticks are sold for about three to four times the price and shipping if often more than from ITEAD. Not sure if you knew this but ITEAD have a very good reputation in most home automation communities because the fact that they also the designer and manufacturer of Sonoff devices.
List price for those that ITEAD sell are not more than those that are sold without firmware you do not need to spend time and money to flash them yourself. Flashing it yourself is relatively time-consuming and complexed comparing to just plugging those that ITEAD sell which take no time or skills at all. Yes flashing CC2531 USB-dongles with a purchased debugger-adapter is easy and relatively fast but fact is that a debugger-adapter alone cost more than then the USB-stick. And while flashing with an Arduino/ESP8266/ESP32 or Raspberry Pi GPIO might not be super-hard the fact is that does take more time than to set-up flashing with the debugger-adapter for the first time.
Most importantly I believe that just hearing about having to flash brand new USB-stick via Arduino or Raspberry Pi GPIO before you can use it will put many people off from buying one a Zigbee USB-stick in the first place. I’m sure that many people are then willing to either not buy one at all or buy the more expensive ConBee which also does come pre-loaded/pre-flashed with the correct firmware for it to work.
Regarding re-flashing/upgrading firmware on ownership the CC2531 USB-dongle that ITEAD sell. Fact is that since these are already flashed with the correct firmware they now also already have a bootloader, and with using that bootloader you can upgrade/reflash the Z-Stack firmware the USB-port, meaning that you do not need a debugger-adapter to flash them, you can read one way of doing that here https://github.com/Koenkk/zigbee2mqtt/issues/320 and the same goes with the adapters that you have already flashed yourself. I even read that Zigbee2mqtt developers are considering adding firmware re-flashing/upgrading via its software for USB-sticks that already come with a bootloader. This will make even more sense in the future since the newer CC2652 chips all come with such bootloader direct from the factory so you can even do the initial flashing from USB.
NotEnoughTech has some good strong arguments as well, like the fact that a number of people have had issues flashing older revisions, and not having to pay $10 for a single-use cable if you don’t have to
Worth noting that the firmware version that came with mine was old (“20180507”).
I needed to update the firmware to “20190608” to enable the zigbee devices I had to work.
eg. " Ikea 1743 TRADFRI ON/OFF switch button" messages weren’t being decoded - no messages in the logs in either ZHA or zigbee2mqtt. (i.e. button presses were not detected and my device only appeared to expose it’s battery level).
Fact is still that all other USB-adapters that are plug-and-play that work directly out-of-the-box cost more than 5-10 times more. This works good as an entry device to try Zigbee with ZHA in Home Assistant
That is 4.25 the price if only count that device alone but the total cost before usable is actually is more than 5 times if also count price of a TTL-adapter which you need to flash it before it can be used with ZHA, and since you need to modify it with third-party firmware before you can use it with ZHA you can not argue that it is ”plug-and-play” and simply works ”out-of-the-box” as you need to take it apart and flash it before you can use it. You do however get much better hardware with it, but there fact remain it has a higher cost and more effort before it is usable so many new users will probably not buy it just to try ZHA