Programming and Running BLE stack in CPU2
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2025-05-02 7:14 AM
When I run my software, I sometimes encounter the line " else if (p_sys_ready_event->sysevt_ready_rsp == FUS_FW_RUNNING)".
I have read the other posts which say that after upgrading the stack you need to click "Start Wireless Stack" and everything will work, (I do this every time) but unfortunately there's more to this...
Yesterday, I was running my code and every time, it hit WIRELESS_FW_RUNNING and the program worked. Today I ran the same code and it hit FUS_FW_RUNNING. I hadn't changed the stack, the board was just powered off overnight.
Obviously if this happens in the field it will be catstrophic, so is there a way to tell the FUS to run the stack in my program if it hits FUS_FW_RUNNING?
I am using the latest STM software, CubeMx 1.18 and latest stack, v1.21.0.3. Are there any known issues with this?
Today I have reprogrammed the stack again, clicked "Start Wireless Stack" and everything works at the moment. But I know it will go wrong again and need a better solution than reprogramming the stack as this can't be done in the field.
Thanks
Rich
- Labels:
-
STM32WB series
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2025-05-05 12:25 AM
Hello,
can you please share more details? What MCU do you use? Do you use a devkit or is it a custom board?
Which address do you install the stack at? Thank you.
Best regards,
ST support
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2025-05-07 1:15 AM
I'm currently running this on a nucleo dev board with STM32WB55RGVx. The BLE stack is stm32wb5x_BLE_Stack_full_fw.bin, version v1.21.0.3 and programmed at 0x080D0000 (which is automatically selected by the STM32CubeProgrammer.
The FUS Version is v1.2.0.0 and FUS Operator (not sure what that is?) is v3.1.0.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2025-05-07 1:27 AM
Another related question: Posts by ST employees seem to say that selecting "Start Wireless Stack after programming the stack tells the FUS to automatically start the BLE stack when CPU2 starts running. However looking through the startup code in STM examples, there is a call to a function StartStackOnCPU2, which calls SHCI_C2_BLE_Init. Does this tell the FUS to start the BLE stack on CPU2 or is this a command to the BLE stack on CPU2? The comment in the code is "Starts the BLE Stack on CPU2".
Thanks, Rich
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2025-05-07 5:00 AM
Hello,
would it be possible to share the project?
I have the same FUS and stack version, however I didn't encounter the described behavior.
Regarding SHCI_C2_BLE_Init, you can find more information here.
How to build wireless applications with STM32WB MCUs - Application note
Best regards,
ST support
