cancel
Showing results for 
Search instead for 
Did you mean: 

STM32WB55 FUS Corrupted After Register Modifications – Unable to Upgrade

SohrobM
Associate

Hello ST Community,

I was successfully working with my STM32WB55RG Nucleo-64 and had FUS (Firmware Upgrade Service) and the BLE stack properly uploaded and running initially. However, after attempting to modify some register values in the Option Bytes, I encountered a serious issue where FUS and the wireless stack appear to be corrupted.

Now, when I try to upgrade or reinstall the BLE stack, I am facing errors, and FUS is no longer functioning properlyFUS Version is now corrupted and shows invalid values (attached screenshot).

FUS upgrade is failing – attempting to reflash FUS results in errors.

BLE stack cannot be reinstalled due to the corrupted FUS state.

Attempts to start FUS fail with FUS_STATE_ERR_UNKNOWN.

Steps Tried to Fix the Issue:

1. Attempted to Reinstall the BLE Stack (stm32wb5x_BLE_Stack_full_fw.bin) → Failed due to FUS corruption.

2. Tried Deleting the Wireless Stack in STM32CubeProgrammer →  Did not resolve the issue.

3. Performed a Full Chip EraseFUS corruption remained after erasing.

4.Attempted to Manually Reflash FUS (stm32wb5x_FUS_fw.bin) →  Flashing failed.

How can I fully reset the FUS and restore it to a working state? Is this an indication that the STM32WB55 is permanently locked due to security fuses? Does ST provide a low-level recovery tool for fixing corrupted FUS?

Any guidance would be greatly appreciated! Thanks in advance.

2 REPLIES 2
STTwo-32
ST Employee

Hello @SohrobM @and welcome to the ST Community. 
Could you please state what are the option byte you modified and share the current values of each option byte.Also, could you try to state what are the STM32CubeWB and STM32CubeProgrammer versions that you are using. Finally please try to update FUS and STACK using the last version of both STM32CubeWB (V1.21.0) and STM32Cube Programmer (V2.19.0) and if everything works fine, please click on the button ‘Start Wireless Stack’. If this didn’t work, please share the errors you are receiving on CubeProgrammer.

Best Regards.

STTwo-32

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Dear STTwo-32,

Thank you for your response.

I attempted to manually change ESE and SFSA to enable the M0 processor for Bluetooth applications. However, it somehow failed and messed with everything else. I have attached the current option byte values. Also other registers all show 0xFFFFFFFF, indicating faulty settings.

Here are the details you requested:

I have also tried updating FUS and BLE Stack using the latest versions as you suggested. However, the issue persists. Additionally, you can see in the previous post that the values of the stacks are not read correctly by the programmer software. Each time I try to change or update the stacks, the error shown in the attached screenshots is presented 

Please let me know if you need further details or if there are additional troubleshooting steps I should try.