cancel
Showing results for 
Search instead for 
Did you mean: 

Is it possible to flash two user APP in different flash address by BLE_Ota?

Aries
Associate

Hi,

I have followed the AN5247 to implement OTA flow and wondering if it is possible to put different user APP in two flash address and OTA APP could decide to boot from which one. I have tried to flash P2P server_ota in 0x08007000 and HartRate_ota in 0x0802C000(also updated linker info) and update "CFG_APP_START_SECTOR_INDEX" in BLE_Ota as 0x2C to boot from the second APP. Although the HartRate function works, Cube programmer can't even connect to nucleo. It seems something strange. Also because the 2 APPs may be put at one of assigned flash address(07 or 2C), how to handle the linker setting while compile the FW?

1 ACCEPTED SOLUTION

Accepted Solutions
Remi QUINTIN
ST Employee

BLE_OTA only jumps to a unique address after the OTA phase. This address is defined by CFG_APP_START_SECTOR_INDEX.

Loading 2 user applications won’t be of much utility as only one will be addressed by the OTA_BLE application which check the integrity of the one loaded at CFG_APP_START_SECTOR_INDEX.

You may rework the BLE_OTA application to provide a choice regarding the address jump.

Hard to link the issue with CubeProgrammer tool with your configuration.

View solution in original post

1 REPLY 1
Remi QUINTIN
ST Employee

BLE_OTA only jumps to a unique address after the OTA phase. This address is defined by CFG_APP_START_SECTOR_INDEX.

Loading 2 user applications won’t be of much utility as only one will be addressed by the OTA_BLE application which check the integrity of the one loaded at CFG_APP_START_SECTOR_INDEX.

You may rework the BLE_OTA application to provide a choice regarding the address jump.

Hard to link the issue with CubeProgrammer tool with your configuration.