1. STM32WB - Bluetooth® LE Coprocessor Binaries
This is a description about the Bluetooth® LE Wireless stack available for the secure CM0+ coprocessor of the STM32WB.
Most of the information can be found within the Release Note for STM32WBxx Copro Wireless Binaries.
For more information on how to bring up the hardware to run simple Bluetooth® LE application check the Bluetooth® LE hardware setup page.
1.1. Link between wireless coprocessor binaries and Bluetooth® LE stack variant
STM32WB_BLE_Wireless_Interface.html [1] file and AN5270 [2] show which Application Commands Interface (ACI) and Host Commands Interface (HCI) are supported according to Bluetooth® LE stack variant. The following table shows the correspondence between the wireless coprocessor binaries and Bluetooth® LE stack variant:
Link between wireless coprocessor binaries and Bluetooth® LE stack variant | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
The following wireless coprocessor binaries for concurrent mode are based on Bluetooth® LE Full Stack:
- stm32wb5x_BLE_Mac_802_15_4_fw.bin
- stm32wb5x_BLE_Thread_dynamic_fw.bin
- stm32wb5x_BLE_Thread_static_fw.bin
- stm32wb5x_BLE_Zigbee_FFD_dynamic_fw.bin
- stm32wb5x_BLE_Zigbee_FFD_static_fw.bin
- stm32wb5x_BLE_Zigbee_RFD_dynamic_fw.bin
- stm32wb5x_BLE_Zigbee_RFD_static_fw.bin
DAVID : maybe a reference to README for the loading address ?
1.2. CubeWB v1.14.0 - Bluetooth® LE Wireless stack Summary
For Bluetooth® LE applications, 6 binaries are available and certified BLE 5.3. According to the type of application, the size of the flash, it is up to the developer to load the right binary:
BLE Stack 5.3 Certified | GAP Peripheral | GAP Central | GATT Server | GATT Client | PHY 2M | Data Length Extension | Legacy Pairing, LE secure connection | Privacy | Filter Accept List | HCI Interface | Direct Test Mode | L2CAP Connection Oriented channels support | Channel Selection #2 | Extended Advertising Scanning | BT SIG Declaration ID |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Full Extended | ● | ● | ● | ● | ● | ● | ● | ● | ● | ● | ● | ● | ● | ● | id?? |
Full | ● | ● | ● | ● | ● | ● | ● | ● | ● | Reduced | ● | 120676 | |||
Light | ● | ● | ● | ● | ● | ● | Reduced | ● | 120676 | ||||||
HCI Extended | ● | ● | ● | ● | ● | id123456 | |||||||||
HCI | ● | ● | ● | ● | id123456 | ||||||||||
AdvScan | Reduced | id123456 |
- stm32wbxx_BLE_Stack_full_extended_fw.bin - Link Layer, HCI, L2CAP, ATT, SM, GAP and GATT database
- To be used for Adverting/Scanning Extension - Full HCI/ACI/DTM commands/Event support
- To be used for GAP Central/Peripheral & GATT Server/Client applications
- support up to 8 connections with maximum 2 links as Slave
- stm32wbxx_BLE_Stack_full_fw.bin - Link Layer, HCI reduced, L2CAP, ATT, SM, GAP and GATT database
- To be used for GAP Central/Peripheral & GATT Server/Client applications
- support up to 8 connections with maximum 2 links as Slave
- stm32wbxx_BLE_Stack_light_fw.bin - Link Layer, HCI reduced, L2CAP, ATT, SM, GAP(limited) and GATT(limited) database
- To be used for GAP Peripheral & GATT Server applications
- support up to 2 links as Slave
- stm32wbxx_BLE_HCILayer_fw.bin - Link Layer, HCI, DTM
- To be used for BLE Host Stack running on CM4 application processor (Arduino, Zephyr,..)
- stm32wbxx_BLE_HCILayer_extended_fw.bin - Link Layer, HCI, DTM, Extended Advertising/Scanning
- To be used for BLE Host Stack running on CM4 application processor (Arduino, Zephyr,..)
- stm32wbxx_BLE_HCI_AdvScan_fw.bin - Link Layer, HCI reduced
- To be used for advertising and scanning through HCI interface
1.3. Stack Extended Information
To use extended binaries, it is necessary to adapt the scatter file in the BLE applications DAVID : for me it's not clear, maybe a reference to scatter name file and a description of a the text to replace can help
1.3.1. STM32WB5x/STM32WB3x
For IAR Embedded Workbench IDE, do the following modification in stm32wb55xx_flash_cm4.icf file:
- The RAM_A shared range shall be reduced to memory range [0x20030000:0x200307FF]:
- - Replace these symbols:
define symbol __ICFEDIT_region_RAM_SHARED_start__ = 0x20030000;
define symbol __ICFEDIT_region_RAM_SHARED_end__ = 0x200327FF;
- - By:
define symbol __ICFEDIT_region_RAM_SHARED_start__ = 0x20030000;
define symbol __ICFEDIT_region_RAM_SHARED_end__ = 0x200307FF;
- Create RAM_B shared region in memory range [0x20038000:0x2003A7FF]:
- - Add the RAM_B shared region:
define symbol __ICFEDIT_region_RAM_B_SHARED_start__ = 0x20038000;
define symbol __ICFEDIT_region_RAM_B_SHARED_end__ = 0x2003A7FF;
define region RAM_B_SHARED_region = mem:[from __ICFEDIT_region_RAM_B_SHARED_start__ to __ICFEDIT_region_RAM_B_SHARED_end__];
- The RAM_B shared shall be added to Total_RAM_region:
- - Replace this line:
define region Total_RAM_region = RAM_region | RAM_SHARED_region;
- - By:
define region Total_RAM_region = RAM_region | RAM_SHARED_region | RAM_B_SHARED_region;
- The Mail-box buffers(MB_MEM1, MB_MEM2) shall be located in RAM_B shared:
- - Replace these lines:
place in RAM_SHARED_region { section MB_MEM1};
place in RAM_SHARED_region { section MB_MEM2};
- - By:
place in RAM_B_SHARED_region { section MB_MEM1};
place in RAM_B_SHARED_region { section MB_MEM2};
1.3.2. STM32WB1x
- The RAM_A shared range shall be reduced to memory range [0x20030000:0x20030FFF]
define symbol __ICFEDIT_region_RAM_SHARED_start__ = 0x20030000;
define symbol __ICFEDIT_region_RAM_SHARED_end__ = 0x20030FFF;
1.4. CubeWB Application & Bluetooth® LE Stacks association
The following table shows the Bluetooth® LE stack to be used for the different applications available within the CubeWB package TO BE UPDATED
Bluetooth® LE stack and Application compatibility | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|