2024-01-02 12:01 AM
Hello ST Support Team,
I am currently facing an issue with the BLE functionality on my custom board utilizing the STM32WB55CE MCU. While the code works flawlessly on the STM32WB Nucleo EVK, the BLE feature doesn't seem to function as expected on my custom board.
Upon further investigation, I observed a disparity in the wireless firmware version and build values between the two boards. When running the code on the EVK, I received wireless firmware version 1.13.2 with a build value of 2. However, on my custom board, both values indicate 0. Meanwhile, both boards display the same FUS version value, which is 1.2.0.
I have also tried to re-flashing of BLE firmware but receive the error in flashing.
I used following link for reference and follow all steps. Also used "stm32wb5x_BLE_Stack_full_extended_fw.bin" file and address "0x08051000".
https://wiki.st.com/stm32mcu/wiki/Connectivity:STM32WB_BLE_Hardware_Setup
I tried to flash the BLE stack firmware multiple times but not worked in my case. It every time throw error message of erase/write operation failed.
It would be really helpful to me if any guidance or assistance you can provide to help me troubleshoot and rectify this issue with the BLE functionality on my custom board. Could you please advise on the necessary steps to verify and potentially resolve this discrepancy
I look forward to your valuable guidance to address this concern.
Thanks,
Sjain
Solved! Go to Solution.
2024-01-04 01:44 AM
Hello,
Can you try with the latest version of STM32CubeProgrammer tool (v2.15.0) and follow these steps?
- Connect
- Start FUS
- Read FUS to check the version
- If a stack version is displayed, perform the firmware upgrade without first install option checked
Best Regards
2024-01-03 08:41 AM
Hello,
According to your second screenshot, you tried to flash the wireless stack at 0x0805A000 instead of 0x08051000 as mentioned in the release note. Can you retry with the right address?
Best Regards
2024-01-03 09:50 AM
Hi @Remy ISSALYS ,
I tried to flash the wireless stack at 0x08051000 as mentioned in the release note. Still receive the same error in flashing. Please suggest the steps to make BLE working on my board.
Thanks,
SJain
2024-01-04 01:44 AM
Hello,
Can you try with the latest version of STM32CubeProgrammer tool (v2.15.0) and follow these steps?
- Connect
- Start FUS
- Read FUS to check the version
- If a stack version is displayed, perform the firmware upgrade without first install option checked
Best Regards
2024-01-04 10:53 AM
@Remy ISSALYS Thank you for the steps.
Now BLE working on my custom board after flashing the firmware.
Now only one issue I face that sometimes BLE advertisement not started.
when I debug the issue at that time I found that sometimes instead of WIRELESS_FW_RUNNING event I received FUS_FW_RUNNING event.
Can you please suggest method to receive the WIRELESS_FW_RUNNING state every time ?
Can we configured this states from application?
Regards,
SJain
2024-05-20 11:32 AM
Hi @Remy ISSALYS
Any update on previously asked questions.
Can you please suggest method to receive the WIRELESS_FW_RUNNING state every time ?
Can we verify or configured this states from application?
Thanks,
SJain
2024-05-21 01:02 AM
You can configure the states from you main Firmware by using SHCI commands. SHCI_C2_FUS_StartWs restarts to the wireless firmware. Polling SHCI_C2_FUS_GetState two times restarts into FUS(!)
When the wireless firmware receives that command, it responds SHCI_FUS_CMD_NOT_SUPPORTED the first time.
When the wireless firmware receives that command a second time, it reboots the full device with the FUS running on CPU2
2024-05-21 01:12 AM
Hello,
If you perform some action with STM32CubeProgrammer to run the FUS on CPU2 like "Start FUS", "Read FUS version", "Delete wireless stack", the FUS will run on CPU2, that's why you see FUS_FW_RUNNING in the ready event. For example, after an upgrade of the wireless stack, if you click on "Read FUS version", you should then click on "Start Wireless stack" to run on Wireless stack on CPU2.
Best Regards