nRF5 SDK for Thread and Zigbee v4.0.0
Zigbee platform designs

Table of Contents

This page describes the platform designs that are possible with the Zigbee stack on Nordic Semiconductor devices.

The designs are described from the least to the most complex, that is from simple applications that consist of a single chip running single or multiple protocols to scenarios in which the nRF SoC acts as a network co-processor when the application is running on a much more powerful host processor.

The Zigbee stack supports:


System-on-Chip designs

This single-chip solution has the combined RFIC (the IEEE 802.15.4 in case of Zigbee) and processor. The ZIgbee stack and the application layer run on the local processor.

Single-chip, single protocol (SoC)

In this design, the application layer and the stack run on the same processor. The application uses the ZBOSS APIs directly.

This is the SoC design most commonly used for end devices and routers.

This design has the following advantages:

It also has the following disadvantages:

zigbee_platform_design_soc.svg
Figure 1. Zigbee-only architecture.

For more information, see Zigbee and Zigbee+BLE examples.

Single-chip, multiprotocol (SoC)

With the nRF52 devices supporting multiple wireless technologies, including IEEE 802.15.4 and Bluetooth Low Energy (BLE), the application layer and the Zigbee and BLE stack run on the same processor.

This design has the following advantages:

It also has the following disadvantages:

zigbee_platform_design_multi.svg
Figure 2. Multiprotocol Zigbee and BLE architecture.

For more information, see Multiprotocol support with BLE/Bluetooth and Zigbee multiprotocol examples.


Co-processor designs

The co-processor designs can be used when a more powerful processor (host) that does not have a suitable radio interface. In these designs, the host interacts with the Zigbee network through Network Co-Processor (NCP).

In the split-stack co-processor design, the stack operates both on host and NCP. In the CLI design, the stack operates on the NCP.

Split-stack co-processor design

In this design, the host procesor runs the Zigbee application layer (ZCL) and the Zigbee Pro network layer. The NCP runs the Zigbee MAC layer. The host processor communicates with the NCP through a serial interface (typically UART).

zigbee_platform_design_split.svg
Figure 3. Split Zigbee architecture.

This design has the following advantages:

It also has the following disadvantages:

Note
The split-stack co-processor design is not part of the nRF5 SDK for Thread and Zigbee, but can be provided by a Nordic partner.

CLI co-processor design

In this design, the NCP runs the whole Zigbee stack. The host processor can interact with the Zigbee network using a text-based command line interface (CLI). The CLI is exposed to the host procesor over a serial interface (typically UART or USB).

This is the official Nordic design intended for gateway solutions.

zigbee_platform_design_cli_design.svg
Figure 4. CLI Zigbee architecture.

This design has the following advantages:

It also has the following disadvantages:

See the Zigbee CLI Agent example and Zigbee CLI Reference for the CLI example and the list of supported commands, respectively.

The Zigbee CLI wrapper library provides a convenient Python interface to the CLI. It also includes an example of how this design can be used for the implementation of a Zigbee-MQTT gateway.


Documentation feedback | Developer Zone | Subscribe | Updated