1. Introduction
The STM32CubeWB MCU Package[1] provides software components running on STM32WB MCUs.
For all examples provided with the package, the following integrated development environments are supported:
- STMicroelectronics integrated development environment for STM32 products (STM32CubeIDE)
- IAR Systems® IAR Embedded Workbench® for Arm® (EWARM)
- Keil® microcontroller development kit (MDK-ARM)
The firmware package for the STM32WB series is also available on STM32CubeWB github[2].
2. STM32WB Zigbee software architecture
Due to the fact that STM32WB MCUs are built with two separate cores, namely Arm® Cortex®-M4 and Arm® Cortex®-M0+ cores, the Zigbee layers are divided between them, as depicted in the figure below.
STM32WB Zigbee architecture |
---|
3. STM32WB Zigbee applications
The following Zigbee applications are delivered as source codes. These applications are available on P-NUCLEO-WB55.Nucleo boards. Some of them are also available on P-NUCLEO-WB55.USBDongle and WB5MM discovery kit. The purpose of these applications is mainly to provide simple examples that highlight the use of specific clusters.
Application | Description | |
---|---|---|
Zigbee Clusters | Zigbee_Commissioning_Client_Coord Zigbee_Commissioning_Server_Router |
How to use commissioning cluster on a centralized Zigbee network |
Zigbee_DevTemp_Server_Coord Zigbee_DevTemp_Client_Router |
How to use device temperature cluster on a centralized Zigbee network | |
Zigbee_Diagnostic_Server_Coord Zigbee_Diagnostic_Client_Router |
How to use diagnostic cluster on a centralized Zigbee network | |
Zigbee_DoorLock_Server_Coord Zigbee_DoorLock_Client_Router |
How to use door lock cluster on a centralized Zigbee network | |
Zigbee_IAS_WD_Server_Coord Zigbee_IAS_WD_Client_Router |
How to use IAS WD cluster on a centralized Zigbee network | |
Zigbee_MeterId_Server_Coord Zigbee_MeterId_Client_Router |
How to use meter identification cluster on a centralized Zigbee network | |
Zigbee_OnOff_Server_Coord Zigbee_OnOff_Client_Router |
How to use OnOff cluster on a centralized Zigbee network | |
Zigbee_PollControl_Client_Coord Zigbee_PollControl_Server_SED |
How to use poll control cluster on a centralized Zigbee network | |
Zigbee_PowerProfile_Client_Coord Zigbee_PowerProfile_Server_Router |
How to use power profile cluster on a centralized Zigbee network | |
Zigbee_PressMeas_Server_Coord Zigbee_PressMeas_Client_Router |
How to use pressure measurement cluster on a Centralized Zigbee network | |
Zigbee_SE_Msg_Client_Coord Zigbee_SE_Msg_Server_Router |
How to use SE messaging cluster on a Centralized Zigbee network | |
Zigbee_custom_ls_Client_Coord Zigbee_custom_ls_Client_Router |
How to use custom long string cluster on a centralized Zigbee network | |
Zigbee_OTA_Server_Coord Zigbee_OTA_Client_Router |
How to use the OTA cluster to operate a firmware upgrade | |
Others | Zigbee_OnOff_Client_Distrib Zigbee_OnOff_Server_Distrib |
How to use OnOff cluster on a distributed Zigbee network |
Zigbee_APS_Coord Zigbee_APS_Router |
How to use APSDE interface on a customer application | |
Zigbee_Find_Bind_Coord Zigbee_Find_Bind_OnOff_Router1 Zigbee_Find_Bind_IAS_Router2 |
How Finding and Binding (F&B) feature works on a Zigbee centralized network | |
Zigbee_OnOff_Coord_NVM Zigbee_OnOff_Router_NVM |
How to use the OnOff cluster with persistent data activated |
4. References