This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Creating Bootloader with FreeRTOS

Hi,

We have 2 projects in pre-production stage that use nRF52840. We are also using FreeRTOS for both projects.

Now we need to create an OTA bootloader for both. There is a standard bootloader from Nordic that uses the power management module from SDK, and there is a standard demo for FreeRTOS, but without a bootloader. We also found that FreeRTOS uses its own power management functions, so there is a collision here.

Could you please advise what is the best way of merging those 2 demos?

Parents
  • Hi Andrew,

    David requested me to respond to you about this usecase.

     

    We also found that FreeRTOS uses its own power management functions, so there is a collision here.

    Which standard example are you referring to here? Why do you think there will be a collision? 

    • The bootloader has control during the DFU process and does not give control to the application before the bootloader has done what it is supposed to do.  In that sense, i do not see a problem that bootloader has a different power management system than the application. In this scenario, i think
      1. You can use the same mechanism of power management as the standard bootloader from the SDK have and let it have control over power management until it jumps to the application. After that, the application will have different (FreeRTOS) based power management, but that should be OK as the bootloader relinquished the control.
      2. disable the power management in bootloader
      3. port the power management function in the bootloader to use FreeRTOS API
Reply
  • Hi Andrew,

    David requested me to respond to you about this usecase.

     

    We also found that FreeRTOS uses its own power management functions, so there is a collision here.

    Which standard example are you referring to here? Why do you think there will be a collision? 

    • The bootloader has control during the DFU process and does not give control to the application before the bootloader has done what it is supposed to do.  In that sense, i do not see a problem that bootloader has a different power management system than the application. In this scenario, i think
      1. You can use the same mechanism of power management as the standard bootloader from the SDK have and let it have control over power management until it jumps to the application. After that, the application will have different (FreeRTOS) based power management, but that should be OK as the bootloader relinquished the control.
      2. disable the power management in bootloader
      3. port the power management function in the bootloader to use FreeRTOS API
Children
Related