Stm32 freertos start different address

Hello!
I have a bootloader based on openblt on STM32F0
In this series (M0) there is no way to transfer the vector table, so the solution is to copy the vector table to RAM.

When I use the program without FreeRTOS everything works fine, as soon as I turn on RTOS the program stops working…

Do you have interrupts executing in the case without FreeRTOS that works? If so, that would at least show moving of the vector table to RAM, and presumably updating the vector table base register, have worked.

Of course, I had a ready-made working project that fully worked and the interrupts worked, now I decided to transfer the project to an RTOS, but something went wrong…
I created a new project, which, using a timer and it just, blinked the LED (for demonstration) as soon as I launch the RTOS, nothing works…

Hey @peit, are you able to run the code in a debugger? Do you have any idea where your code gets stuck when it stops working?

I think I found the problem
In my bootloader, before copying the vector table and making another configuration, I turned off interrupts, and before jumping to another ap, I turned on interrupts, without RTOS it worked, with RTOS it dоn’t work, but if i don’t turning on interrupts on side of bootloader, it everything worked…
I haven’t figured out why this is yet…

So you relocated the vector table matching the application with its ISRs you’re going to start/jump to but you enabled interrupt before the application is initialized (the C-runtime init before main) and running ? This can’t work properly.