2024-08-16 11:33 AM
I have made the STM32 BootLoader OTA on a STM32WB35CE several months ago and now I'm facing with a problem to expand it. The initial OTA bootloader and an user App work well for me, but I want to merge the OTA bootloader with some more stuff and changing size of it to bigger than before. So it growed and the start addr of user App now is 0x800D000 (instead of 0x8007000), but it doesnt work. I have new constant address for magic number on 0x800D140 (instead of 0x8007140) on the user App ld file. On the OTA bootloader I modified the start vector:
#define CFG_APP_START_SECTOR_INDEX (13) on the app_config.h file, and even I defined it on general preprocessor macros in the properties of project. I'm searching a lot to fix my problem, the problem is after connecting to OTA bootloader and after sending the user App, the user app dosn't start and it will return to Bootloader OTA and again advertises there. Could you please give me some tips about what I'm missing for this changing start Addr of user App? So in a brief, I just want to change the start Addr of user App from 0x8007000 to a new Addr like 0x800D000. On the hex file of user App which is made by STMCUBE-IDE I can see the magic number Addr and its value are on supposed sections, and everything seems prepared, but doesn't work.
I don't know that I need to fix the OTA BootLoader or the user App to fix the issue, because both have been changed.
I found the user App seems is still writen on previous Addr (from 0x8007000) which is wrong and should be write at Addr 0x800D000. But what should I do to fix it properly.
Thank you in advance