STM32WB FOTA Practical Questions
Hi all,
Looking to implement FOTA on a custom board which uses the STM32WB55M module. I understand the principles of the FOTA solution and the services/characteristics and have looked over the relevant app note, but I have a couple of questions about how precisely to actually implement the solution.
1. Would installing both the OTA application and the user application be a matter of compiling each (OTA app with a linker script specifying a start address of 0x08000000 and the user app at (IIRC) 0x08007000) separately and then loading each binary separately at the respective addresses?
2. For custom boards, is it typical to just use the OTA application given in the STM32CubeWB software package (with some slight modifications to, for example, the BSP functions which control Nucleo LEDs)?
In other words, what I *think* is the procedure, given that I currently have a custom board with a user application:
- Modify user app linker script to start at an address beyond where the OTA app will end
- Take the OTA app from STM32CubeWB and modify the HW-specific functions (i.e. LED controls) to match up with my hardware.
- Ensure VTOR is moved correctly for user application (at 0x08007000 instead of 0x08000000?)
- Add reboot request char to one of the services in my user application
- Compile both programs
- Load OTA app binary at 0x08000000 using CubeProg
- Load user app binary at 0x08007000 using CubeProg (or OTA)
Is that right or am I misunderstanding?
Thanks.
