[SOLVED] [EU] ZigBee / Thread Protocol / Z-Wave Dongle

Tags: #<Tag:0x00007f7458bf9db0> #<Tag:0x00007f7458bf9cc0> #<Tag:0x00007f7458bf9bd0>

I would like to experiment with the potential of the various protocols (ZigBee, Z-Wave, Thread), implementing them on a Raspberry Pi 3B+ on which openHAB 2.1 is installed.
Because of the known problems concerning frequency and compatibility, I appeal to the most experienced to understand how to set up my Raspberry according to the European standard.

ZigBee and OpenThread should both work on the IEEE 802.15.4 network on the 2.4GHz frequency, so I thought that a single USB stick could cover both (even if I did not find OpenThread bindings on the doc, should I use TCP & UDP Binding?). Therefore, reading this docs: ZigBee - Bindings, I think I will buy Telegesis ETRX357USB. Should I consider other drives? (I prefer to avoid CC2531 USB because are cheaper but more problematic.)

As for the Z-Wave protocol, that he too uses IEEE 802.15.4 network but works on the 868.4 MHz frequency (in Europe), I thought I would buy the Z-Stick Aeotec. I noticed that in the community has excellent reviews. Which alternatives can be valid (in Europe)?

I am aware that there are devices that include the two protocols, such as HUSBZB, but I have noticed that they are always problematic. I would like to build a solid project, so I would like to find the best setup on which to experiment.

Any inspiration, guidance, experience will be appreciated! :smile:

I use the CC2531USB stick, something you mentioned avoiding, with no issues. My advice is to update your OH version from 2.1 to 2.4. This will save you some frustrations whatever route you take.

Best of Luck.

1 Like

I had discarded this choice because in the documentation it says that it is difficult to find the correct firmware to flash, so I thought it was problematic. :confounded:
Are you using the official USB? Can you use OpenThread without problems with that USB stick? In the OpenThread guidelines they recommend using CC1352, CC2538, CC2650, CC2652 chips.

I’m not familiar with OpenThread so I can comment. The CC2531 stick can be connected to all the Zigbee devices listed in this link.

Also check the top of the link to see how you can add devices that are not supported and the devices that are listed as not yet supported.

Note: if considering the CC2531 this is for zigbee only, you will need another USB stick for Zwave. On the link posted, see the right side 7th from the top, see “Getting Started” for what’s needed and instruction to setup zigbee2mqtt.

1 Like

These protocols are usually much much more than just the underlying network and frequency. A Zigbee coordinator does a lot of extra stuff and only presents to OH a serial interface with an API. And unlike the Zwave standard, the Zigbee coordinator API is not standardized which is why not all coordinators work with the Zigbee binding.

So if the physical device doesn’t say it supports OpenThread and there is no OpenThread binding, I think the chances are pretty slim that you will be able to interact with both on the same stick.

It depends on how the device that plugs into your computer exposes the API to OpenThread. In all likelihood you will need the Serial binding.

Unlike with Zigbee, any Zwave controller will work with OH because the Zwave serial interface to the controller is standardized. The 5th Gen Aeotec is probably the most popular here on this forum, you wont go wrong with it.

1 Like

Perfect! I’ll try it. :grin:

I understand, so if I buy a device that is compatible with OpenThread but is not expressly compatible with OpenHab bindings, I will definitely have problems, or am I wrong?
I think I will start testing only ZigBee and in the future, if a solution is found, I will also implement OpenThread (probably buying a new USB Stick).
Do the ZigBee USB Stick present in the official documentation have diferences as regards the compatibility with devices present on the market or it is only a matter of software compatibility? I ask this because, thanks to @H102 , I discovered that there are only certain devices supported for the CC2531 stick, so I think every stick has its own compatibility range. Where can I check the compatibility for each stick in the documentation?

You will definitely have a lot of work. You will have to figure out the raw API of the device and write the code that uses that raw API. You might be able to use the Serial binding to interact with this API but in all likelihood you will need to code up a new binding to support it. Alternatively you could code up something outside of OH to interact with it and expose the interface through something that OH can understand like a REST API or MQTT (this is the approach taken by the zigbee2mqtt server H102 pointed to above).

My understanding is it is mainly software. There shouldn’t be anything physically preventing them from working with any standard zigbee device. But be aware, some vendors extend the zigbee standard which makes them not fully functional with a standard zigbee coordinator. For example, Xiaomi is known to do this, requiring their hub for full functionality of their devices.

For Zwave, if it has the Zwave logo it will work guaranteed. It may need to be added to the database but that can be done in a couple days when the need arises.

In both cases, the Zwave controller can talk to all Zwave devices and the Zigbee coordinator can talk to all Zigbee devices. But the software behind the controller (e.g. Zwave/Zigbee binding, zigbee2mqtt server) needs to know what the device is and what the device supports. This is handled via a database that provides that information to the software.

If it is a standard device and the device is in the database it will work. If it is not in the database, to make it work it just needs to be added to the database. But the USB dongles will physically work with any device. So it isn’t that the stick has compatibility ranges, it is the software.

1 Like

You can add support for new devices, I haven’t needed to do this but here’s the doc’s

Two caveats worth mentioning.

First, zigbee2qtt runs on Stretch only, if your OH is on Jessi then then you’ll have to reinstall. Alternatively, you can use a different RPI for the USB stick.

Second, the USB stick has a limit of 35 devices. For the price, around $7, you can buy several and use a second RPI to both add devices and extent your zigbee range.

Here’s a how to tutorial on the forum with a few examples.

1 Like

This is a common misunderstanding. As it was explained to me by @chris (I can’t find the thread), mains powered Zigbee devices act as a router. See https://www.silabs.com/community/wireless/zigbee-and-thread/knowledge-base.entry.html/2012/07/02/what_is_the_differen-IYze for the three types of ZigBee devices.

Routers handle devices above and beyond the set of devices that get routed through the coordinator (the coordinator is a special type of router). In short, each router can only handle only 35 devices, but you can have any number of routers in a single zigbee network. But you can only have on coordinator.

From a practical perspective, I’m not sure how this is actually handled. I would assume that one either needs to manually include a device using a router node as opposed to the coordinator, or when putting the coordinator into inclusion mode the device gets added to the nearest Router, or something else entirely.

1 Like

No - the system takes care of this. When you open the network for inclusion, all routers will report if they have room for new additions, and the joining device will join via a router that has capacity.

1 Like

Thanks, good info to pass along.

Personally, I,ve never been worried much about the limit or range of devices. For me to have more than 15 zigbee devices would mean buying more stuff just to automate it.:grinning:

1 Like

So for a low cost development you can use a CC2531, doing a flash properly.
The other USB sticks in the documentation? Allow a “turnkey” solution at a higher price? Is this the only difference?

As far as I’m aware that is the only difference.

1 Like

I’m sure there are other differences… The software in each stick is different for starters, and the support for each stick is therefore different.

I do most of my work with the Silabs sticks, so new features like ZigBee 3 is only available for that stick at the moment.

1 Like


As for ZigBee:
I will start with an economic solution to perform the first tests, using the CC2531 USB Stick.
Then, when the European version of the Cortet EM358 USB Stick will be released, I will buy that as it is supported by openHAB according to the official doc and above all because it is explicitly compatible with Thread.

As for Z-Wave, I will use Z-Stick Aeotec.

Many thanks to all of you for the support! :pray: