cancel
Showing results for 
Search instead for 
Did you mean: 

Is it possible to save the initial firmware that came along with the STM32 P-NUCLEO-WB55 board?

KWah.1
Associate II

I am intending to flash MicroPython into this board, where I understand there is extensive support for this. I would like to investigate the possibility of using ST-Link Utility to save the initial firmware that came along with the board, so that I will be able to rollback in the event I realize that MicroPython will not be good for my use-case.

10 REPLIES 10
Uwe Bonnes
Principal III

Use any debugger ot stm32cubeprogrammer.

I know that, but the thing is I'm not sure if it's possible to save the initial firmware using STM32CubeProgrammer (the option does not seem to be available and I am unsure about the size of the firmware inside the board), so...

But I do know that if I wish to flash a new firmware, I believe you'd be right...

Uwe Bonnes
Principal III

Attach with STM32CubeProgrammer to the WL and read out flash and save it. To my knowledge, the Nucleo-WL has proprietary custom firmware in the upper half of the flash, probably read protected. If you want to overwrite that, more concerns apply.

In other words, is it correct to say that I will never be able to flash the original firmware unless I try to overwrite this read-protection?

KWah.1
Associate II

Also, I would like to check if flashing MicroPython would eliminate the ability of the Nucleo-WB55 to be accessed with the STM32 CubeProgrammer? I do not think this should be the case...?

Remi QUINTIN
ST Employee

You don’t need to save it. It is available under the STM32Cube_FW_WB_V1.10.0\Projects\P-NUCLEO-WB55.Nucleo\Applications\BLE\BLE_p2pServer\Binary directory.

To restore it, you just have to program the BLE_p2pServer_reference.hex file at the start of the main flash.

Remi QUINTIN
ST Employee

I see some statements regarding WL device. I assume it is a typo.​

KWah.1
Associate II

Oh, I figured that out after some trial and error! Thank you for your help! Now I am trying to restore the DFU mode for the Nucleo-WB55 (because mostly I accidentally went to upgrade the firmware using ST-LINK and I believe I forgot to set something inside, but setting nSWboot0=1 just returned me a: Error: The FUS version you're trying to install is older/equal to the FUS version already installed !). I am still looking on how to restore the capability to set the WB55 into bootloader mode.

Remi QUINTIN
ST Employee

​If you still have access to the option bytes, you can set the BOOT0 pin HIGH with a jumper put on CN7-5 to CN7-7 and set the nSWboot0 to 1.  You will be in the DFU mode using the USB user connector. After reset, the BL2_p2pserveur application starts advertising for a minute. This is the initial configuration for a WB55 nucleo board.

In the USB DFU mode, you can check the FUS version at address 0x20030030. If it is older than v1.1.0, you should upgrade the FUS.

You can of course use the Cubeprogrammer tool to perform all these steps.