I've reached a critical point in the firmware development process where I need to start considering integrating a bootloader with the application code.
I have a custom board with an nrf52840 SoC. I have created a new bsp for the board and I'm able to execute code and run debugging on the board using Segger Embedded Studio. At some point, we'll have to integrate a bootloader in order to be able to create a release image.
Based on the requirements at my company, it has been decided to implement the application in two phases:
- Phase 1 will include the application and bootloader
- Phase 2 will include the application, bootloader and softdevice, once the BLE-related requirements have been locked.
I wish to implement phase 1 and as this is critical, I do not wish to get fragmented information.
My questions
- Are there any ready-made bootloaders I can use?
- How do I go about combining the application and bootloader (without softdevice)
- How do I fragment the flash memory so that I can have the application, bootloader, and eventually softdevice?
- Are there any detailed tutorials explaining the integration processes?
- Eventually we'll implement FOTA over Bluetooth. Anything I should be specially aware of here?
Any link to documentation/tutorials will be very much appreciated. I apologize in advance if the questions seem a bit broad. I'm a bit new to this process of integrating application code and bootloaders.
Thanks,
/Tim