CMP EMBEDDED.COM

Login | Register     Welcome Guest  
HOME DESIGN PRODUCTS COLUMNS E-LEARNING CONFERENCES CODE FORUMS/BLOGS NEWSLETTERS CONTACT FEATURES RSS RSS

Eeny, Meeny, Miney Moe: choosing the right low power wireless sensor network protocol: Part 3
Comparing Zigbee to TI's proprietary SimpliciTI wireless network



Embedded.com

The three most notable additions to the 802.15.4 protocol are the mesh routing algorithms, a strong security implementation, and application-level abstractions enabling powerful associations of devices and interoperable "application profiles" within the target market sectors.

The mesh routing algorithm for a ZigBee network makes it an extremely reliable method of delivering data from one End Device on the network to another. Aside from optional end-to-end acknowledgements, which ensure the delivery of a packet within the network, ZigBee defines algorithms for route discovery that enable the ability to communicate around a failed node, known as ZigBee's self-healing feature for communications.

A route discovery is a shortest-path algorithm that can be initiated by any router device and is always performed in regard to a particular destination. This can be calculated due to the fact that each node constantly keeps track of "link costs" to all of its neighboring devices where a link cost is a measure of signal strength of a received signal. Adding up the link costs for all the links along a route results in a "route cost" and can be derived for every route in the network.

A node will request a route discovery by broadcasting a Route Request (RREQ) packet to its neighbors for a certain destination. Every time a node receives a RREQ, it adds its link cost to the route cost and in turn re-broadcasts the RREQ. This repeats until all the RREQs reach the destination device.

The destination device then selects the RREQ packet with the lowest route cost and broadcasts a Route Reply. As the RREP packets travels back to the source, all intermediate nodes update their routing tables to indicate the route to the destination.

In this manner, a node can lose connectivity to its next hop and send a Route Error (RERR) packet to the network so that the next time someone attempts to send it a message, a new route discovery can be initiated.

ZigBee implements extensive security measures. There are three security keys, a master key for long-term security, a network key to join the network, and an encryption key for peer to peer communication. Encryption is executed using the AES-128 bit encryption standard.

As a check for message integrity, ZigBee uses a MIC-128, or Message Integrity Code. Using the coordinator as a trust center to manage all security from a single node, the network can also choose to update the symmetric encryption keys periodically, maintaining secure communication indefinitely.

The application-level abstraction, however, may be ZigBee's most competitive feature. Each node can be abstracted to maintain up to 270 "endpoints," or applications. Each one of these endpoints could represent, for example, a light switch, or a light bulb (light bulb 01, light bulb 02, etc...). Each endpoint can accept any type of data in or send any type of data out.

A single descriptor of that data, being output by one endpoint and input to another, is referred to as a Cluster. To remain consistent with the light bulb example, assume the state of a light switch, which will be named "light_status_on_off", is one of these data descriptors called a Cluster. Each endpoint can then be described by its endpoint ID (1 " 270) and its list of Clusters (data types that it will receive or transmit).

A logical binding (Figure 11 below) can then be made from one to one or one to many endpoints whose Clusters match. In this example, one light switch can be logically bound to any and all light bulbs that are described as supporting the light_status_on_off Cluster. This application level binding allowing a one-to-one or one-to-many is a powerful feature of the ZigBee protocol.

Figure 11--The binding table in ZigBee can be used to change controls on the fly

If the ZigBee Alliance were then to define a list of Clusters, as well as define the method of interpretation of the Clusters flowing between endpoints, then it could specify the standard for specific applications (like light switch / light bulb), regardless of the hardware used to implement the application.

The ZigBee Alliance has done just that, calling these standards application profiles, making applications from different vendors completely interoperable, and allowing the market to compete as a whole within the target market sectors of ZigBee low-power wireless networks.

If interoperability is not the intent of the designer, the ZigBee Alliance also offers the opportunity to define company-specific application profiles that are not shared with the general public.

Zigbee PRO
For the sake of brevity, while there are other features that a ZigBee implementation, they will not be discussed here in detail, including group addressing, frequency agility, automatic re-joins on session failure, and the series of additional features offered by the latest incarnation of the protocol, ZigBee 2007 (also referred to as ZigBee PRO).

ZigBee PRO is essentially the ZigBee standard, but edited with additional features to optimize support for very large network integration. More information can be found on the ZigBee Alliance's website at www.zigbee.org.

Drawbacks of the Zigbee protocol
The drawbacks to designing a product using the ZigBee protocol include the cost associated with developing a ZigBee product, incurred through a yearly membership fee paid to the ZigBee alliance and the cost to certify the product as ZigBee compliant, as well as for the memory footprint of the protocol itself.

The ZigBee protocol is loaded with features that are difficult to leverage in full in every application, requiring additional memory resources that would have been designed out given a customized solution. In some cases, the memory and resource requirements can even be restrictive to the end-application.

For this reason, some companies have released radios with integrated MCUs that come pre-loaded with the ZigBee software stack, and whose operation is controlled by a small set of API calls on another, application-centric MCU.

Using SPI communication to update the ZigBee chip's configuration, the application MCU is free from the protocol's memory and resource requirements and can efficiently address other application responsibilities.

1 | 2 | 3 | 4

Rate this article: Low High
Current rating
  • .
Embedded.com Career Center
Looking for a new job?
SEARCH JOBS

Browse all jobs

SPONSOR
RECENT JOB POSTINGS





 :