cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F0 let IAP jump to APP1 or APP2

Treacy Yao
Associate II
Posted on January 22, 2018 at 04:39

I want to realize a OTA function that IAP jump to APP1 or APP2. But I have a doubt whether need I to generate two APPs for OTA, because the APP1 and APP2's vecotor is different(If my customer has done lots of OTA, diffenrent devices maybe in different APPs )? Is there any intelligent way to solve this problem?

#stm32f0-iap-multi-app
5 REPLIES 5
Posted on January 22, 2018 at 05:30

People have used relocatable object files to solve such issues.

Tips, buy me a coffee, or three.. PayPal Venmo Up vote any posts that you find helpful, it shows what's working..
Posted on January 22, 2018 at 07:31

Can you give me more details? I'm a green hand for it. How to modify the relocatable object files and how to use it?

Posted on January 22, 2018 at 17:19

You'd want to use/create an object file format that provides relocation information that you fixup and commit when you write to a specific FLASH address you are using for APP1 or APP2

https://en.wikipedia.org/wiki/Object_file

 

This would be covered by 'Linkers and Loaders' type texts and course work. Coding a demonstration of this goes beyond the scope of things I'm going to provide on the forum.

Tips, buy me a coffee, or three.. PayPal Venmo Up vote any posts that you find helpful, it shows what's working..
Treacy Yao
Associate II
Posted on January 23, 2018 at 00:40

Is there any related examples or articles?

Posted on January 23, 2018 at 01:55

Perhaps you can take an example firmware and link it at the two possible addresses, and then 'diff' the binary images to see how many things are different between the two to gauge the scope of the differences, and how you might efficiently encode that information. Selection 'position independent' compiler options where available.

https://www.amazon.com/s/ref=nb_sb_noss_2?url=search-alias%3Dstripbooks&field-keywords=Linkers+and+Loaders

 
Tips, buy me a coffee, or three.. PayPal Venmo Up vote any posts that you find helpful, it shows what's working..