Showing results for 
Search instead for 
Did you mean: 

STM32WB5MMG Ble connection problem

Associate II


I have an STM32WB5MMG with a breakout board (more specifically Sparkfun ATP breakout
SparkFun MicroMod ATP Carrier Board - DEV-16885 - SparkFun Electronics

with the STM32WB5MMG module 

SparkFun MicroMod STM32WB5MMG Processor - DEV-21438 - SparkFun Electronics


So, it is not in a nucleo version. I am trying to see if I can just see the BLE device on my phone with the 

"ST BLE Sensor" app (or "ST BLE Toolbox") app.

I downloaded the STM32WB packages on github

STMicroelectronics/STM32CubeWB: Full Firmware Package for the STM32WB series: HAL+LL drivers, CMSIS, BSP, MW, plus a set of Projects (examples and demos) running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits). (

The STM32WB5MM-DK is basically what I have but just in a different format, so I try and follow the examples for that board.

In the github download, I opened this example project:

And then started to follow the readme.txt file.


As stated, I do not have a nucleo which means that the BLE stack is not already flashed.

And when I went to CubeProgrammer and did "Read Fus infos", this is what I saw:


As you can see, the STACK version is v0.0.0.0, so I have to get the stack bin onto the chip.

In the first image, on row 76 I am referred to a page, I go there and go to the "How to flash the Wireless Coprocessor Binary via SWD/JTAG ny ST-LINK (STM32CubeProgrammerGUI)"- section.


I went to 


and chose the stm32wb5x_BLE_Stack_full_fw.bin as said in the readme.txt in the project CubeIDE.

According to the guide, I need to check what Start address I should have, scrolling down I see thi s table:


I have an STM32WB5MMG and with the said .bin file, the start address I assume is


What I do next is in the "Firmware Upgrade Services" part of CubeProgrammer (that was shown in the second image), I choose the correct .bin file and put the 0x080CE000 address as start, then pressed "Firmware Upgrade", it was successful and when I then again press "Read FUS infos", this is the result:


 As you can see, the STACK version is now v1.17.2.1, so I think I did it successfully.

 If I then continue to read the readme file:


I see that I should now just be able to compile everything, upload and run. And from what I understand I should now see the device.

I compile and upload:


Now I check the apps (both BLE Sensor and BLE Toolbox), but I cannot see the device come up.

There must be some thing/things that I have missed, can anyone spot the error?




Lead II

Hello @DLid.1 

I think this wiki may help you.

Best regards.


Associate II

Just to add to the overall information, when I look at the serial output, this is what I see:


So from the terminal output, it looks like the EnableCPU2 function does never happen, I.e. this is not true:

if (p_sys_ready_event->sysevt_ready_rsp == WIRELESS_FW_RUNNING)

Instead the code goes into this:

else if (p_sys_ready_event->sysevt_ready_rsp == FUS_FW_RUNNING)

I am not sure if this is the behavior I am expecting. I just want to add as much information as possible so that someone maybe can spot something wrong. 



Hi Issamos!

Thanks for your answer!

I looked through the guide and notice in this part:


They say to use the FUS_fw bin file. But from the readme.txt I was pointed to Stack_full_fw.

Which file should I have in the "Firmware Upgrade" file path, and at which start address.


 Or maybe I am mixing up things here and I should flash the STACK somewhere, and the FUS at another place.

Could you clarify what I am supposed to do? 

Thanks in advance

Hello again

Maybe the videos in the wiki ressources can help you in this.

Best regards.


Associate II

i have same issue that this below condition not true

 if (p_sys_ready_event->sysevt_ready_rsp == WIRELESS_FW_RUNNING)

i already follow this instructions

But still i am not able to see the ble device on app.

if you find solution then please suggest me.

NOTE: i am using STM32WB5MMGH6TR custom board.

Can u send me this function 

void PeriphCommonClock_Config(void)
or pic of your clock configuration in cubemx or cubeide.

below is my clock configuration so try this because in my case now ble working and i can see in app.