cancel
Showing results for 
Search instead for 
Did you mean: 

FUS_STATE_ERROR_IMG_NOT_AUTHENTIC isuue

Yeti
Associate II

Hi, i'm trying to update stack via internal firmware. Our device based on STM32WB55:

Device ID  : 0x495

Revision ID : Rev Y

Device name : STM32WB5x

Flash size : 1 MBytes

Device type : MCU

Device CPU : Cortex-M4

BL Version : 0xd5

Stack binary file located in internal flash at address 0x080CB000.

Below is the data from the programmer:

0693W00000WIweSQAT.png 

When I call SHCI_C2_FUS_FwUpgrade, the next call to SHCI_C2_FUS_GetState returns the following result - FUS_STATE_ERROR_IMG_NOT_AUTHENTIC.

How to solve this problem? Thanx.

6 REPLIES 6
Remy ISSALYS
ST Employee

Hello,

You can look the FUS Command Line Interface example, this example shows how to interact with FUS using FUS commands in order to perform some actions:

  • Upgrade the current Wireless Stack or FUS
  • Delete the installed Wireless Stack
  • Switch between FUS and Wireless Stack

The FUS returns the FUS_STATE_ERROR_IMG_NOT_AUTHENTIC error when Firmware or FUS upgrade requested, image found, but its signature is not valid (wrong signature, wrong signature header) see description in AN5185.

Can you describe your scenario? How do you perform the stack update?

Best Regards

Yeti
Associate II

Hello, this project was started a long time ago, as soon as engineering samples could be obtained. At the moment, the stack can be updated only by means of the microcontroller itself. It was assumed that the stack could be located between the last page of the user program and the sector from the sfsa register. For the experiment, I linked the stack to the address from the Release_Notes.html file, and according to the AN5185, but the result is always the same - FUS_STATE_ERROR_IMG_NOT_AUTHENTIC

Remy ISSALYS
ST Employee

Hello,

Which version of the stack are you using?

Best Regards

Yeti
Associate II

Hi, as far as I remember it is a stack from STM32Cube_FW_WB_V1.10.

Additionally, the stack from STM32Cube_FW_WB_V1.14.1 was checked.

Remy ISSALYS
ST Employee

Hello,

Could you check if the flash sectors between the end of your app and SFSA option byte is erased before download the new firmware?

Best Regards

Yeti
Associate II

Hello, thanks for your reply.

Stack was erased via STM32CubeProgrammer, SFSA always contain value 0xF4.

out_code = SHCI_C2_FUS_GetState( &f_state ); 

out_code - 0x10

f_state - FUS_STATE_ERROR_IMG_NOT_AUTHENTIC

Best Regards