6 years, 9 months ago.

Application hangs when added bootloader

Hi, I am using STM32f091RC micro controller for my application. I am using mbed online compiler and also using mbed cli using offline GCC compiler. I have written small bootloader script for jumping application from bootloader to application. Bootloader simply copies the interrupt vector tables from bootloader application to SRAM as suggested in forum. Bootloader program starts at address 0x8000000. Application program starts at 0x8004000.

My bootloader and main application runs fine and bootloader correctly jumps to application where my application runs. Same application runs fine when run without bootloader(linker script address changed to 0x8000000) but when bootloader is flashed(at address 0x8000000) and application(at address 0x8004000),my application hangs. I am using ticker and pin detect functionalities in my application and find different behavior with and without bootloader application. Problem mostly comes when ticker is used. In stead of using pin detect library i have also tried to poll the pin every 100ms to detect pin change. when used without bootloader it runs fine but hangs when bootloader added

Regards

Narendra Singh

1 Answer

6 years, 9 months ago.

Hey!

Have you had a look at our bootloader docs- https://docs.mbed.com/docs/mbed-os-handbook/en/latest/advanced/bootloader/? It doesn't look like that target has bootloader support yet, but you could port it using this guide- https://docs.mbed.com/docs/mbed-os-handbook/en/latest/advanced/flash/.