ZigBee Solution Introduction
ZigBee Solution Overview
The ZigBee solution mainly targets the connection and communication between various network interfaces in IoT application scenarios, such as SPI, SDIO, USB, Wi-Fi, Ethernet, and other network interfaces.
Features of the solution:
Compatible with standard ZigBee nodes
Fast network formation, low latency, self-recovery
Supports low-power devices
The ESP chips that support the ZigBee solution are as follows:
ESP32H2
ESP32C6
Common ZigBee Application Scenarios
ZigBee GateWay:
NCP Solution:
esp-zigbee-sdk/examples/esp_zigbee_ncp : Demonstrates how to configure a ZigBee network co-processor device, accessed via UART to the MCU. The MCU device connects to the router via Wi-Fi or wired Ethernet, and smart devices achieve network control by connecting to the device coordinator.
RCP Solution:
esp-idf/examples/openthread/ot_rcp : Demonstrates how to configure an 802.15.4 radio, accessed via UART to the Espressif SoC. The MCU device connects to the router via Wi-Fi or wired Ethernet, and smart devices achieve network control by connecting to the device coordinator.
ZigBee Standard Node:
Coordinator Solution:
esp-zigbee-sdk/examples/esp_zigbee_HA_sample/HA_on_off_switch: Demonstrates how to configure a ZigBee coordinator and use it as an HA On Off switch device.
End Device Solution:
esp-zigbee-sdk/examples/esp_zigbee_HA_sample/HA_on_off_light: Demonstrates how to configure a ZigBee end node and use it as an HA light device.
How to Enable esp_zigbee_sdk
esp_zigbee_sdk has a simple and clear enablement process. Refer to the esp_zigbee_sdk esp_zigbee_HA_sample example to understand the enablement process of esp_zigbee_sdk:
Call the nvs_flash_init() function to initialize the storage system of esp_zigbee_sdk.
Call the esp_zb_platform_config() function to initialize the device communication method.
Call the esp_zb_init() function to initialize the ZigBee node role.
Call the esp_zb_on_off_switch_ep_create() function to create the Cluster and Attribute required by the application layer.
Call the esp_zb_device_register() function to register the Cluster and Attribute processed by the application layer.
Call the esp_zb_start() function to start the ZigBee protocol stack.
Call the esp_zb_main_loop_iteration() function to handle the events reported by the ZigBee protocol stack.
ZigBee Reference Materials
In addition, we currently have some public ZigBee solution software development materials and hardware materials, as follows:
ZigBee Software Reference
Development Board Purchase
Module/Development Board Materials and Selection Reference