2021-08-19 02:10 AM
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:
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.
2021-08-19 02:53 AM
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?
2021-08-19 02:55 AM
SWD (ST-Link) port.
2021-08-19 02:57 AM
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.
2021-08-19 02:57 AM
Unfortunately it is not working:
11:55:49 : Error: FUS_STATE_ERR_UNKNOWN
11:55:49 : Start FUS failed !
11:55:49 : Error: Start FUS Operation Failure! Please, try again.
Looks like there is no fw (or broken) on the device, therefore I can't start it or even upgrade it.
2021-08-19 03:00 AM
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
2021-08-19 03:02 AM
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?
2021-08-19 03:07 AM
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
2021-08-19 03:11 AM
Even more info:
C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin>STM32_Programmer_CLI.exe -c port=swd mode=UR --optionbytes displ
-------------------------------------------------------------------
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
UPLOADING OPTION BYTES DATA ...
Bank : 0x00
Address : 0x58004020
Size : 96 Bytes
██████████████████████████████████████████████████ 100%
Bank : 0x01
Address : 0x58004080
Size : 8 Bytes
██████████████████████████████████████████████████ 100%
OPTION BYTES BANK: 0
Read Out Protection:
RDP : 0xAA (Level 0, no protection)
BOR Level:
BOR_LEV : 0x0 (BOR Level 0 reset level threshold is around 1.7 V)
User Configuration:
nBOOT0 : 0x1 (nBOOT0=1 Boot from main Flash)
nBOOT1 : 0x1 (Boot from code area if BOOT0=0 otherwise system Flash)
nSWBOOT0 : 0x0 (BOOT0 taken from the option bit nBOOT0)
SRAM2RST : 0x0 (SRAM2 erased when a system reset occurs)
SRAM2PE : 0x1 (SRAM2 parity check disable)
nRST_STOP : 0x1 (No reset generated when entering the Stop mode)
nRST_STDBY : 0x1 (No reset generated when entering the Standby mode)
nRSTSHDW : 0x1 (No reset generated when entering the Shutdown mode)
WWDGSW : 0x1 (Software window watchdog)
IWGDSTDBY : 0x1 (Independent watchdog counter running in Standby mode)
IWDGSTOP : 0x1 (Independent watchdog counter running in Stop mode)
IWDGSW : 0x1 (Software independent watchdog)
IPCCDBA : 0x3 (0x3)
Security Configuration Option bytes - 1:
ESE : 0x1 (Security enabled)
PCROP Protection:
PCROP1A_STRT : 0x1FF (0x80FF800)
PCROP1A_END : 0x0 (0x8000800)
PCROP_RDP : 0x1 (PCROP zone is erased when RDP is decreased)
PCROP1B_STRT : 0x1FF (0x80FF800)
PCROP1B_END : 0x0 (0x8000800)
Write Protection:
WRP1A_STRT : 0xFF (0x80FF000)
WRP1A_END : 0x0 (0x8000000)
WRP1B_STRT : 0xFF (0x80FF000)
WRP1B_END : 0x0 (0x8000000)
OPTION BYTES BANK: 1
Security Configuration Option bytes - 2:
SFSA : 0xD0 (0x80D0000)
FSD : 0x0 (System and Flash secure)
DDS : 0x1 (CPU2 debug access disabled)
C2OPT : 0x1 (SBRV will address Flash)
NBRSD : 0x1 (SRAM2b is non-secure)
SNBRSA : 0x14 (0x2003D000)
BRSD : 0x1 (SRAM2a is non-secure)
SBRSA : 0xA (0x20032800)
SBRV : 0x34000 (0x20000000)
2021-08-19 04:26 AM
Hi Remi,
When I turn the Nucleo board to USB mode, computer can't discover it (actually no sign that any USB device is attached).
USB1 is the dongle when I attach it. But as far as I understand, I shall upgrade directly the Nucleo board, not?
So I need it to be discovered by the computer. Does the dongle play any role in this upgrade process? As I wrote earlier the dongle was successfully upgraded to V1.1.2.0 (not like the Nucleo board).
BR,
David