Skip to main content
DImre.1
Associate III
August 19, 2021
Question

How to fix "Old firmware delete failed" error while trying to firmware update?

  • August 19, 2021
  • 21 replies
  • 12609 views

I tried to update the firmware on P-NUCLEO-WB55 devboard, but it fails with the following error:

"Error: FUS_STATE_ERR_UNKNOWN

Error:

Old Firmware delete failed"

I check in STM32CubeProgrammer, and I have V.0.0.0 version:

0693W00000Dpml4QAB.png 

I do not know why it happened, maybe a previous incorrect way of upgrade process.

Any idea how can I resolve it?

Additional info:

The dongle is ok, I could update it via USB, it has fw V1.1.2.0 version.

This topic has been closed for replies.

21 replies

Remi QUINTIN
ST Technical Moderator
August 19, 2021

This means the FUS is not activated.

Using cube programmer v2.8, you can start the FUS using the "Start FUS" button.

What is the port used to connect to your board?: USB or SWD (ST-LINK) port?

DImre.1
DImre.1Author
Associate III
August 19, 2021

SWD (ST-Link) port.

Remi QUINTIN
ST Technical Moderator
August 19, 2021

OK.

So be sure to activate the FUS and then read the FUS again.

please provide a log of the FW installation if it fails again.

DImre.1
DImre.1Author
Associate III
August 19, 2021

I attached the log from STM32CubeProgrammer.

from command window:

C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin>STM32_Programmer_CLI.exe -c port=swd mode=UR -startfus

   -------------------------------------------------------------------

            STM32CubeProgrammer v2.7.0

   -------------------------------------------------------------------

ST-LINK SN : 066AFF555550727867084743

ST-LINK FW : V2J37M27

Board    : P-NUCLEO-WB55

Voltage   : 3.28V

SWD freq  : 4000 KHz

Connect mode: Under Reset

Reset mode : Hardware reset

Device ID  : 0x495

Revision ID : Rev B

Device name : STM32WB5x

Flash size : 1 MBytes

Device type : MCU

Device CPU : Cortex-M4

Warning: Option Byte: nSWboot0, value: 0x0, was not modified.

Warning: Option Byte: nboot0, value: 0x1, was not modified.

Warning: Option Byte: nboot1, value: 0x1, was not modified.

Warning: Option Bytes are unchanged, Data won't be downloaded

Succeeded to set nSWboot0=0 nboot1=1 nboot0=1

Memory Programming ...

Opening and parsing file: 0x495_FUS_Operator.bin

 File     : 0x495_FUS_Operator.bin

 Size     : 8 KBytes

 Address    : 0x08000000

Erasing memory corresponding to segment 0:

Erasing internal memory sectors [0 1]

Download in Progress:

██████████████████████████████████████████████████ 100%

File download complete

Time elapsed during download operation: 00:00:00.352

Application is running, Please Hold on...

Reconnecting...

Reconnected !

Reconnecting...

Reconnected !

Error: FUS_STATE_ERR_UNKNOWN

Error: Fus is not yet running, try again

Remi QUINTIN
ST Technical Moderator
August 19, 2021

Could you try in USB DFU mode?

How old is your Nucleo board?

Is it the first time you tried to upgradde the FUS?

Could you give me the value of the SFSA and SBRV option bytes?

DImre.1
DImre.1Author
Associate III
August 19, 2021

Could you try in USB DFU mode?

--> I do it now, and will give you feedback.

How old is your Nucleo board?

-->first time it is used, unpacked yesterday. No idea when it was manufactured, but on the sheet in the package I see July 2019.

Is it the first time you tried to upgradde the FUS?

--> yes.

Could you give me the value of the SFSA and SBRV option bytes?

-> value of SFSA: val0xd0, addr: 0x080d0000, SBRV: 0x34000

Remi QUINTIN
ST Technical Moderator
August 19, 2021

Nothing strange regarding the option bytes.

Can you launch a FW delete command?

DImre.1
DImre.1Author
Associate III
August 19, 2021

No, because as I wrote earlier, the error message is:

"Error: FUS_STATE_ERR_UNKNOWN

Error:

Old Firmware delete failed"

via ST-LINK. Via USB only the dongle I can see, and the command is working. At that point I'm little bit uncertain because I did not see any info regarding the need for dongle upgrade.

DImre.1
DImre.1Author
Associate III
August 19, 2021

It looks like the old firmware is damaged and cannot be recognized. One solution would be to directly flash the memory with the fw file. Ignoring the old firmware error issue.

Remi QUINTIN
ST Technical Moderator
August 19, 2021

But The SFSA = 0xD0 which means there is a FW already and still installed on the board!!!

It is not deleted.

I assume that your board configured in USB DFU mode (with a jumper set on CN7 position (67 + the USB USER connector) is not discovered by CubeProgrammer because nSWBOOT0 = 0 while it should be set to 1 for the USB DFU mode.

DImre.1
DImre.1Author
Associate III
August 19, 2021

But The SFSA = 0xD0 which means there is a FW already and still installed on the board!!!

It is not deleted.

--> I assumed it, because I never could delete it. Looks like it is damaged.

I assume that your board configured in USB DFU mode (with a jumper set on CN7 position (67 + the USB USER connector) is not discovered by CubeProgrammer because nSWBOOT0 = 0 while it should be set to 1 for the USB DFU mode.

--> I tried it now, but the error is after trying to connect:

0693W00000DpoIEQAZ.png

Remi QUINTIN
ST Technical Moderator
August 19, 2021

I am afraid you won’t be able to flash a recent version of the FW with an old version of FUS.

I am quite puzzled by your issue.

Could you try with CubeProgrammer version 2.8?

DImre.1
DImre.1Author
Associate III
August 19, 2021

I'll do and will give you feedback.

Remi QUINTIN
ST Technical Moderator
August 19, 2021

I want to correct my statement regarding the USB configuration : the jumper must be set on position 5-7 on CN7.

Have a look at the attached document.

DImre.1
DImre.1Author
Associate III
August 19, 2021

Don't worry, I did the same from the beginnging. :)

Remi QUINTIN
ST Technical Moderator
August 19, 2021

I am out of idea. Your board is a weird state with a FUS potentially impacted.

The only lame recommendation I can give you is to try with another Nucleo board.

DImre.1
DImre.1Author
Associate III
August 19, 2021

Remi, thank you for your help! :)