Loading...
 

System Workbench for STM32


FreeRTOS multi-threaded debug

After reading through some older posts and OpenOCD documentation, I found the easiest way to enable multi-threaded debugging when using FreeRTOS in a STM32Cube project, is to:

  1. In your Debug Configuration: In the Debugger tab, in the OpenOCD Options field, add the following line (including quotes)
    -c “$_TARGETNAME configure -rtos auto”

  1. Unfortunately this resulted in an error about missing symbols, and had to be corrected by adding the following to FreeRTOSConfig.h file
    //define missing uxTopReadyPriority symbol required by OpenOCD to a constant in tasks.c
    #define uxTopReadyPriority uxTopUsedPriority


After this, I can see information about threads in my System Workbench Debug window:
ScreenShot

Notes to System Workbench producers:
- Firstly, thank you for an awesome IDE. Words cannot express my gratitude!
- Any chance you can add a checkbox to enable #1 above?
- How about avoiding the need for #2? Or is the latter a request for STM32CubeMX producers?