cancel
Showing results for 
Search instead for 
Did you mean: 

Cant find any information about how to program bluetooth stack binary to STM32WB35CC controller.

DDuda.1
Associate

I created custom pcbs with STM32WB35CC with 256KB flash. If I understand correctly, controller shipped with no ble stack installed. So, i need to program one, but all information i found is only about wb55 and Nucleo boards. I couldn't find addresses to write FUS and stack files.

I tried to use cubeprogrammer and connect via SWD and USB to my controller. When I connect via SWD, it cannot read the FUS version. Is it pre-installed? I tried to write BLE_stack file to 0x0800b000 (analogy with wb55 manual), but i-m not shure this is correct.

When I connect via USB, cubeprogrammer generates a lot of errors and freezes.

2 REPLIES 2
Remi QUINTIN
ST Employee

We you connect via SWD port, the FUS version is nor accessible. This limitation will disappear in the next version of the CubeProgrammer tool.

But you can read the FUS version via the USB port.

Now whatever the port used; you can get access to all the option bytes.

One hint: If the SFSA option byte is 0xF6, then the FUS version is V0.5.3. If it is 0xF4, it is V1.0.2 or higher.

Anyhow the best is to follow the programming steps described in the Release_Notes under the directory

STM32Cube_FW_WB_V1.10.0\Projects\STM32WB_Copro_Wireless_Binaries\STM32WB5x.

The recommended steps are to first update to FUS V1.0.2 (stm32wb5x_FUS_fw_1_0_2.bin) and the to V1.1.0 (stm32wb5x_FUS_fw.bin).

Then you can update the RF FW.

For the BLE stack (stm32wb5x_BLE_Stack_full_fw.bin), the address should be 0x080CB000.

What kind of errors do you see when connecting via the USB port?

Remi QUINTIN
ST Employee

The load address I gave you was for a WB55 (1M embbeded memory flash)

Here are first estimates load addresses for WB35(256k):

| Wireless Coprocessor Binary | STM32WB3x(512K) | STM32WB3x(256K) | SIZE(4K ALIGNED) |

|----------------------------------------------------------|------------------------------|------------------------------|---------------------------|

| stm32wb3x_BLE_HCILayer_fw.bin | 0x0806C000 | 0x0802C000 | 0x14000 |

| stm32wb3x_BLE_HCI_AdvScan_fw.bin | 0x08076000 | 0x08036000 | 0xA000 |

| stm32wb3x_BLE_LLD_fw.bin | 0x08078000 | 0x08038000 | 0x8000 |

| stm32wb3x_BLE_Mac_802_15_4_fw.bin | 0x08041000 | 0x00 | 0x3F000 |

| stm32wb3x_BLE_Stack_full_fw.bin | 0x08056000 | 0x08016000 | 0x2A000 |

| stm32wb3x_BLE_Stack_light_fw.bin | 0x08062000 | 0x08022000 | 0x1E000 |

| stm32wb3x_FUS_fw.bin | 0x0807A000 | 0x0803A000 | 0x6000 |

| stm32wb3x_FUS_fw_1_0_2.bin | 0x0807A000 | 0x0803A000 | 0x6000 |

| stm32wb3x_Mac_802_15_4_fw.bin | 0x0806F000 | 0x0802F000 | 0x11000 |

| stm32wb3x_Phy_802_15_4_fw.bin | 0x0806A000 | 0x0802A000 | 0x16000 |

| stm32wb3x_Thread_FTD_fw.bin | 0x08024000 | 0x00 | 0x5C000 |

| stm32wb3x_Thread_MTD_fw.bin | 0x08037000 | 0x00 | 0x49000 |

| stm32wb3x_Zigbee_FFD_fw.bin | 0x08033000 | 0x00 | 0x4D000 |

| stm32wb3x_Zigbee_RFD_fw.bin | 0x08041000 | 0x00 | 0x3F000 |

---------------------------------------------------------------------------------------------------------------------------------------------------------