2019-09-25 12:49 PM
I am trying to update the FUS firmware to the latest version on a STM32WB55CG, following the guide in the release notes I get Error: Firmware not authentic!. at step 5 (RSS_IMAGE_NOT_AUTHENTIC).
I have the latest CubeProg version and my actual FUS is 0.5.3
Am I doing something wrong?
Thanks!
Solved! Go to Solution.
2019-09-27 04:54 AM
Everything looks OK.
I dont know what to propose now.
Unfortunately I have no clue about your PB.
2019-09-27 05:41 AM
Sorry to hear that, here the list of option bytes taken from CLI:
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)
nBOOT1 : 0x1 (Boot from code area if BOOT0=0 otherwise embedded SRAM)
nSWBOOT0 : 0x1 (BOOT0 taken from PH3/BOOT0 pin)
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 : 0x0 (0x0)
Security Configuration Option bytes:
ESE : 0x1 (Security enabled)
SFSA : 0xF6 (0xF6)
FSD : 0x0 (System and Flash secure)
DDS : 0x1 (CPU2 debug access disabled)
C2OPT : 0x1 (SBRV will address Flash)
NBRSD : 0x0 (SRAM2b is secure)
SNBRSA : 0x10 (0x10)
BRSD : 0x1 (SRAM2a is non-secure)
SBRSA : 0x0 (0x0)
SBRV : 0x3D800 (0x3D800)
PCROP Protection:
PCROP1A_STRT : 0x1FF (0x8000FF8)
PCROP1A_END : 0x0 (0x8000008)
PCROP_RDP : 0x0 (PCROP zone is kept when RDP is decreased)
PCROP1B_STRT : 0x1FF (0x8000FF8)
PCROP1B_END : 0x0 (0x8000008)
Write Protection:
WRP1A_STRT : 0xFF (0x807F800)
WRP1A_END : 0x0 (0x8000000)
WRP1B_STRT : 0xFF (0x807F800)
WRP1B_END : 0x0 (0x8000000)
What is curious is that I am able to flash ble stack from version 1.0.0, which event generates the "firmware not authentic" error?
2019-09-27 05:49 AM
@Remi QUINTIN SOLVED: as found in another post in this forum https://community.st.com/s/question/0D50X0000Ap44FlSQI/restore-stm32wb55-fus-firmware), I set the read protection byte to 0xBB and then back to 0xAA. After that I was able to upgrade to FUS 1.0.1, you may want to investigate this behavior or wrtite it on some documentation.
Thanks again for your help!
2019-09-27 06:03 AM
Great!!!!
Indeed I will have a look at this strange influence of the RDP option byte on the ability to upgrade the FUS.
The fact that this action is erasing all data from the start of the flash up to the SFSA pointer may lead to the possibility of an incomplete erasure done by the CLI command "STM32_Programmer_CLI.exe -c port=usb1 -fwdelete".
I will check this.
thanks
2020-03-07 02:38 AM
Everything;s the same with us as well, and yet, we are getting the same response as you!
It would be really great if some ST tech guys could intervene and guide us on how to get this resolved.
2020-03-07 02:45 AM
:sad_but_relieved_face:
2020-03-09 03:32 AM
So let's resume this topic
Be sure to use the latest CuveWB FW package v1.5.0.
Then could you tell me which port you are using?
2020-03-13 04:17 AM
Thank you, @Andrea Nisticò, for suggesting that solution.
Tried that, and my controller is now permanently read-protected! I am unable to revert it to its normal functionality.
Please find attached screenshots of the current status of the option bytes.
It would be really appreciable if anyone could guide me to the current state of my device, and whether it is recoverable.
2020-03-13 05:55 AM
What is the CubeWB FW package version you are using?
What is the FUS version?
2020-03-13 07:55 AM
CubeWB FW package version: 1.5
FUS version: The original (0.5.3)
All update attempts are unsuccessful.