STM32CubeWB Zigbee MCU Package


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
Connectivity Zigbee MCU STM32WB.png

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