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