Overview#

Zigbee refers both to:

  • An open standard for reliable, cost-effective, low power, wireless device-to-device communication.

  • An alliance of over 400 companies who together are defining and using the standard to communicate in a variety of applications such as smart energy and commercial building automation.

The Connectivity Standards Alliance (formerly the Zigbee Alliance) is led by a set of promoter member companies that make up the board of directors. Silicon Labs is one of the companies on the board of directors.The Alliance also has a large number of participant and adopter members that work within the technical and marketing workgroups to create and maintain the standards. The Alliance activities are accomplished through workgroups dedicated to specific areas of the technology. These include a network group, a security group, an application profile group, and several others. All Zigbee documents are available through the Alliance website https://csa-iot.org. Alliance membership is required to access current specification documents. To use the Zigbee technology within a product, companies are required to become members of the Alliance.

Silicon Labs is active in a variety of areas within the Alliance and with helping customers adopt Zigbee technology through its Ember® Zigbee solutions. The Silicon Labs (originally Ember) Zigbee platform has been a Golden Unit for testing and certification for all new revisions of the standard to date. Ember Corporation, which was acquired by Silicon Labs in July 2012, was a founding member of the Connectivity Standards Alliance.

The Connectivity Standards Alliance specifies three major items of interest.

  1. Zigbee networking: The basic levels of network interaction, including acceptable RF behavior, methods of creating and joining the network, discovering routes, and using routes to transmit traffic over the network. The Zigbee Alliance offers other networking specifications such GreenPower, but the focus of this document is Zigbee PRO. See Silicon Labs Green Power Fundamentals for more information about the Silicon Labs implementation of Green Power.

  2. Zigbee application layer: Describes a set of messages and network settings for a Zigbee application. All devices adhering to these settings may interoperate. Before Zigbee 3.0, individual application profiles, either public or private, had their own certification program. With Zigbee 3.0, one common application layer certification program applies to every Zigbee product. The following figure displays some of the original separate Zigbee application profiles.

    Zigbee Application ProfilesZigbee Application Profiles

  3. Certification: Zigbee applications are certified by the Alliance to indicate to end users that the device(s) are compliant. Applications using private profiles receive certification that they are using a properly operating Zigbee stack and will not adversely affect other Zigbee networks during operation. For more information, see Zigbee Compliance.

Because the Alliance is committed to open and interoperable devices, standards have been either adopted where they existed, or developed, from the physical layer through the application layer, as shown in the following figure. At the physical and MAC (medium access control) layer, the Alliance adopted the IEEE 802.15.4 standard. The networking, security and application layers have all been developed by the Alliance. An ecosystem of supporting systems such as gateways and commissioning tools has also been developed to simplify the development and deployment of Zigbee networks. Extensions and additions to the standards continue to be developed, and Silicon Labs is committed to supporting these as they are available.

Zigbee ArchitectureZigbee Architecture

The following three sections describe the general characteristics of a Zigbee network, discuss the use of IEEE 802.15.4 standard, and summarize the hardware and software elements of a Zigbee network.

General Characteristics#

Zigbee is intended as a cost-effective and low power solution. It is targeted to several markets including home automation, building automation, sensor networks, smart energy, and personal health care monitoring. The general characteristics for a Zigbee network are as follows:

  • Low power: Devices can typically operate for several years on AA type batteries using suitable duty cycles. With extremely careful design and special battery technologies, some Zigbee devices such as gas meters can achieve 20 years of battery life.

  • Low data rate: The 2.4 GHz band supports a radio data rate of 250 kbps. Actual sustainable traffic through the network is lower than this theoretical radio capacity. As such, Zigbee is better used for sampling and monitoring applications or basic control applications. See Zigbee Mesh Network Performance and Mesh Network Performance Comparison.

  • Small and large networks: Zigbee networks vary from several devices to thousands of devices communicating seamlessly. The networking layer is designed with several different data transfer mechanisms (types of routing) to optimize the network operation based on the expected use.

  • Range: Typical devices provide sufficient range to cover a normal home. Readily available designs with power amplifiers extend the range substantially. A distributed spread spectrum is used at the physical layer to be more immune to interference.

  • Simple network installation, start up, and operation: The Zigbee standard supports several network topologies. The simple protocols for forming and joining networks allow systems to self-configure and fix routing problems as they occur.

IEEE 802.15.4#

Zigbee networks are based on the IEEE 802.15.4 MAC and physical layer. The 802.15.4 standard operates at 250 kbps in the 2.4 GHz band and 40 kbps/20 kbps in the 900/868 MHz bands. A number of chip companies provide solutions in the 2.4 GHz band with a smaller number supporting the 900/868 MHz band. Zigbee PRO uses 802.15.4-2003.

The 802.15.4 MAC layer is used for basic message handling and congestion control. This MAC layer includes mechanisms for forming and joining a network, a CSMA mechanism for devices to listen for a clear channel, as well as a link layer to handle retries and acknowledgment of messages for reliable communications between adjacent devices. The Zigbee network layer builds on these underlying mechanisms to provide reliable end-to-end communications in the network. The 802.15.4 standard is available from www.ieee.org.

The 802.15.4 standard provides some options within the MAC layer that are not used by Zigbee in any current stack profiles. An example of such an unused feature is guaranteed time slots (GTS), which would be employed by a network to synchronize radio activity across devices. As such, these items are not normally included in the Zigbee software stack to save code space. Zigbee also has made specific changes to the 802.15.4 MAC that are documented in Annex D of the Zigbee specification.

Hardware and Software Elements#

A Zigbee solution requires implementation of a Zigbee radio and associated microprocessor (together in a single chip or separately), and implementation of an application on top of a Zigbee stack. EmberZNet PRO is the Silicon Labs implementation of the Zigbee PRO stack.

Typically a developer can purchase a Zigbee radio and software as a bundled package, although some third party software stacks have been developed. In general, the hardware and software provider includes reference designs for the hardware and sample applications for the software. Based on these, hardware developers can customize the hardware to their specific needs. Alternatively, a number of module providers can deliver compact and low cost custom modules.

Because of the embedded nature of typical Zigbee applications, software application development is typically interrelated with the hardware design to provide an optimal solution. Silicon Labs provides both a standard networking API based on the Zigbee specification and an application framework, which gives customers a way to rapidly develop their applications based on Zigbee application profiles and the Zigbee cluster library (ZCL), as described below. Alternatively, a number of third party software development firms specialize in developing Zigbee applications and can assist in new product development.

About Application Frameworks#

Any application may be built from scratch, but this is a slow and sometimes tedious process. The alternative is to take working code and modify it to meet the requirements of your application. Adapting a working design is an easier and more efficient approach to building an application, especially your first application using a new technology. To assist with this, Silicon Labs supplies not only example application code but also several application frameworks as part of their development platforms. Application frameworks contain a body of Silicon Labs-supplied code stored in libraries and plugins. Silicon Labs also provides Simplicity Studio, which includes an Integrated Development Environment (IDE) based on Application Builder (AppBuilder). AppBuilder is an interactive GUI tool that allows you to configure the libraries and plugins contained in the application framework to implement devices, such as a Zigbee Smart Energy meter, defined by the Zigbee application layer,such as Zigbee 3.0.

The main Zigbee Application Framework is based around the ZCL (Zigbee Cluster Library) for use when developing Zigbee PRO applications. It provides a set of embedded code to implement ZCL-based cluster handling, required network tasks, and typical Zigbee application-state machines and includes support for the Zigbee 3.0 application layer, as well as a number of legacy Zigbee profiles (such as Home Automation (HA), Smart Energy (SE), and Zigbee Light Link (ZLL)). This code, developed according to best practices recommended by Silicon Labs and by the specifications for different Zigbee application profiles, acts as a sort of "software reference design" that can be run on either a System-On-Chip (such as the EFR32) or on a host processor connected to a Network Control Processor based on the EZSP (EmberZNet Serial Protocol). See UG391: Zigbee Application Framework Developer's Guide for SDK 6.x and Lower or Zigbee Application Framework Developer's Guide for SDK 7.x for details. Other Zigbee application frameworks provided in the Zigbee EmberZNet SDK include Green Power and Customizable Network Coprocessor (NCP).

Application frameworks provide common basic services and, when combined with device-specific code, provide you with most of the over-the-air behavior for your device. Your task then becomes developing hardware-specific functionality and interfacing it to the Silicon Labs software. Some common usage case examples based on the relevant application framework are provided with each Silicon Labs stack release.

Using an application framework has the following benefits:

  • Helps maintain a common approach, and adherence to the protocol standard and Silicon Labs best practices.

  • Helps ensure protocol compliance, since Silicon Labs runs the application framework through pre-compliance testing.

  • Allows easy merge of updates, because Silicon Labs maintains the core components.

  • Offers the ability to include complex tasks in your application, without the need to manage those tasks at the code level.

  • Provides configurability while maintaining protocol compliance and the ability to easily upgrade to future stack releases.

  • Provides a callback/command interface and set of configuration points that are farther removed from the stack than usual, and there- fore are more in tune with application-layer behaviors than stack-level behaviors.

  • Provides a set of plugins to illustrate "best practice" implementations of higher-level application logic, such as debug functionality and CLI functionality, ZCL cluster implementations, application state machines, or complex functionality.

All of the above help to achieve faster time to market and more robust solutions.

Other Tools and Utilities#

As well as Simplicity Studio and AppBuilder, Silicon Labs also offers a number of utilities and tools that are available to developers during the application process including:

  • Over-the-air (OTA) bootloaders to allow upgrades to system software after deployment

  • Gateway interfaces to interface the Zigbee network to other systems

  • Programming tools for the microprocessor