Thread and ZigBee are extremely similar.
- They are both mesh local area networks.
- They use the same low-level MAC layer protocol—IEEE 802.15.4. (This means they can sometimes use the same chips.)
- They are both open standards.
- They’ve both targeted similar application types, like smart homes.
- They both run on the global-standard 2.4 GHz ISM frequency band.
- Their power consumption and usage may be very similar.
However, there are some differences and considerations that need to be taken into account when comparing the two networks. We’ve compiled them below.
Thread Vs. ZigBee: Primary Differences & Considerations
Thread was started by Nest (Google), Samsung, and a number of silicon vendors who wanted to address nodes in a more traditional way. It uses 6LoWPAN, which provides each node with an IP address. The address the cloud talks to goes into an edge router and can then be sent straight to a node via its IP address.
ZigBee also tried to do this with ZigBee IP, but it has not gained significant market traction. Another way to address ZigBee nodes is using an edge router that connects to the cloud and the network. When the address comes in, the edge router has to have some kind of intelligence to know what node is connected to it and how to translate a specific message. If you’re designing a cloud application, a non-IP ZigBee network may make it more difficult to handle communication to and from the nodes.
ZigBee has created an application layer that dictates how applications interface to it and operate within it. If you’re creating an application that is going to connect to another ZigBee application—like ZigBee Light Link, which operates lighting—this is an obvious choice. But, this application layer isn’t without its flaws, and it is often viewed as large and cumbersome.
Thread does not define an application layer, and thus it does not define how devices on the network should interact. It offers a generic way to talk to the devices and end nodes—so you can communicate back and forth—but the messages aren’t defined like they are in ZigBee. If you need something generic with the ability to talk to multiple applications, you might want to use Thread.
If you want to certify something as ZigBee compatible, you would go through the ZigBee Alliance—and if you want to certify something as Thread compatible, you’d go through the Thread Group. There are fees associated with both, and we can’t speak to which process is easier or more involved. But you do need to consider the ins and outs of the certification process before you select a network for your application.
Thread has been lauded for their clean and unbloated software stack (as illustrated below):
The software stack for ZigBee is larger and more complex, so it has been known to have latency issues and can potentially draw more power. This also means that it uses more memory, which may require a larger microcontroller (and thus increase the cost).
The network you end up using will likely boil down to what you need to use it for. ZigBee has done very well for smart lighting and energy, but it has struggled in other areas. Thread is a younger network, but having a Google and Samsung backing will likely give it a major push. If you have more questions about Thread or ZigBee, we’re happy to help you answer them. Tweet us @LinkLabsInc or drop us a line.