Modifying and debugging BLE_Ota in Cube IDE
I have been using the BLE_Ota released binary in an unmodified form in my products for years. Now I want to modify it for use on a product that doesn't have an LSE crystal. I have successfully updated my own application to run on HSE only, but now I need to modify the BLE_Ota to do the same.
I would like to step through the BLE_Ota code with the debugger, but I am running into the error "Break at address "0x800fd70" with no debug information available, or outside of program code."
That address is past the locations of BLE_Ota, and into my own application code.
I have tried a few things to get debugging to work, and I've run out of ideas.
Things I have tried:
- Made a new workspace in the BLE_Ota area so that the relative include references will work. The code now compiles.
- Made a new debug build configuration, with Optimize for debug (my usual optimize-none makes the code too big), and debugging set to maximum (-g3) in the GCC assembler and GCC compiler setting areas.
- In app_conf.h, set CFG_LPM_SUPPORTED to 0
- In app_conf.h, set CFG_DEBUGGER_SUPPORTED to 1
- Put a breakpoint at HAL_Init() the start of main.c
When I try to debug this debug configuration, it always blows past my breakpoint and moves on to run my application at 0x8007000.
Is it possible to debug this STM_OTA application? Searching on the forums, it appears to have been possible with previous versions of the repository.
My search also brought up when I had tried and failed to do this a couple of years ago.
https://community.st.com/t5/stm32-mcus-wireless/stm32wb-debug-ota-application/td-p/283771/page/2
