cancel
Showing results for 
Search instead for 
Did you mean: 

Restore STM32WB55 FUS firmware

janis_sk
Associate II

I've deleted entire FLASH memory of STM32WB55 during testing. Is there a way to restore FUS and with that the wireless binaries?

As I understand they are encrypted so just writing them isn't working. Is there some tool to do that?

26 REPLIES 26
h.h.p
Associate II

@J�?nis Skujenieks​ 

I'm having the same issue here.

My device returns 0x20030030 = 00000000, because i've deleted the memory.

Did you find any solution for the problem?

janis_sk
Associate II

The only solution would be to get FUS in plaintext and flash it yourself, but I don't think this will ever happen. At least officially from ST side.

h.h.p
Associate II

@J�?nis Skujenieks​ 

So, does that mean I lost my development board? I can't get it back.

janis_sk
Associate II

If you truly erased whole flash (cleared ESE bit), then as far as I know there is no way to restore FUS and wireless binaries.

h.h.p
Associate II

@J�?nis Skujenieks​ Ok! Thanks for the help!

Michael Bauer
Associate II

For us we followed the user guide or readme that explained how to load the M0 software using the STM32_Programmer_CLI.exe utility. The guide outlined numerous steps and for us this worked (I think steps 1-2 were like setting up the input conditions to go into this loading mode):

cd "C:\Program Files (x86)\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin"

### Step 3

STM32_Programmer_CLI.exe -c port=usb1 -fwdelete

### Step 4

STM32_Programmer_CLI.exe -c port=usb1 -r32 0x20030030 1

### Step 5

STM32_Programmer_CLI.exe -c port=usb1 -fwupgrade "<YOUR_PATH>\STM32Cube_FW_WB_V1.2.0\Projects\STM32WB_Copro_Wireless_Binaries\stm32wb5x_FUS_fw.bin" 0x080EC000 firstinstall=0

### Step 6

STM32_Programmer_CLI.exe -c port=usb1 -fwupgrade "<YOUR_PATH>\STM32Cube_FW_WB_V1.2.0\Projects\STM32WB_Copro_Wireless_Binaries\stm32wb5x_BLE_Stack_fw.bin" 0x080CC000 firstinstall=1

Note that you may prefer a newer firmware version than what I had here. Also, I dont know if this solves things if you managed to completely erase the flash. I think I tried it once but was unsuccessful and then this procedure worked for us.

h.h.p
Associate II

@ [Michael Bauer]@Michael Bauer​ 

When I execute the commands I received these responses:

For STEP 3:

Error: FUS_STATE_ERR_UNKNOWN

Firmware delete n░1 failed after retrying!

Error: fwdelete Operation Failure! Please, try again

For STEP 4:

Reading 32-bit memory content

Size     : 4 Bytes

Address:   : 0x20030030

0x20030030 : 00000000

Indicates that the FUS has been deleted.

How to program FUS if the returns of STEP 4 is 00000000?