Skip to main content
Associate
September 21, 2026
Question

Kernel Awareness (RunTime not working)

Hello everyone,

I am experiencing an issue with the FreeRTOS Kernel Awareness view in STM32CubeIDE, specifically regarding the task runtime statistics. The plugin seems to be failing to parse or display the correct runtime percentages, showing almost all tasks permanently stuck at 1% or <1%.

My Setup & Recent Changes:

  • MCU: STM32G474

  • IDE: STM32CubeIDE v2.2.0

  • Previous RTOS: FreeRTOS V10.3.1 (Generated via STM32CubeMX with the CMSIS-RTOS v2 wrapper)

  • Current RTOS: FreeRTOS V11.3.0 (Added manually via the ARM software pack, bypassing CubeMX generation)

The Problem: I recently migrated my project to native FreeRTOS V11.3.0. I removed the old CubeMX-generated middleware and integrated the new version using the ARM pack. I also configured everything required for runtime statistics to function properly (setting configGENERATE_RUN_TIME_STATS, configuring the hardware timer via portCONFIGURE_TIMER_FOR_RUN_TIME_STATS(), and setting up portGET_RUN_TIME_COUNTER_VALUE()).

While the project compiles and runs perfectly, the STM32CubeIDE Kernel Awareness plugin does not display the correct task runtime statistics. In the FreeRTOS Task List view, the runtime column stays stubbornly at 1% or less for almost every task, regardless of the actual CPU load.

Troubleshooting Performed: To verify that my hardware timer and FreeRTOS configurations were actually working, I temporarily added a call to vTaskGetRunTimeStats() and printed the resulting string buffer through the ITM (Instrumentation Trace Macrocell) console.

The data printed via ITM is perfectly correct and reflects the expected CPU load for each task. This confirms that:

  1. The hardware timer is counting correctly.

  2. FreeRTOS is calculating the stats accurately internally.

  3. The issue is strictly isolated to how the IDE's Kernel Awareness plugin interprets the FreeRTOS data structures in memory.

My Questions:

  1. Is there a known incompatibility or bug in the STM32CubeIDE Kernel Awareness plugin when working with FreeRTOS V11.3.0?

  2. Did the underlying FreeRTOS task control block (TCB) or runtime stats data structure change in V11 in a way that breaks the Eclipse/STM32CubeIDE parser?

  3. Are there any specific debug configurations, symbols, or IDE settings I need to manually adjust now that I am no longer using the CubeMX-generated CMSIS v2 wrapper?

Any guidance or workarounds would be greatly appreciated.

Thank you!

 

 

4 replies

ST Technical Moderator
September 24, 2026

Hello ​@giuliano2505 

Thank you for sharing your feedback,

I suggest that you refer to this article How to enable FreeRTOS™ Run Time and Stack Usage view | Community and follow the Required Code Editing in order to display the correct task runtime statistics. In the FreeRTOS Task List view.

BR, Souhaib

To give better visibility on the answered topics, please click on 'Best answer' on the reply which solved your issue or answered your question.
Associate
September 24, 2026

Hello ​@Souhaib MAZHOUD , thanks for you response,
I follow that article the first time I configure FreeRTOS, and was working perfectly with the cubemx middleware.
Actually, the runtime stats is working if I call vTaskGetRunTimeStats() and print the response to ITM. Both pics on first post are from the same firmware at the same moment, so there is an incongruity (at least) on that info.
I don’t think this is a problem on the firmware side, looks like an incompatibility between firmware and proxy.

BR, Giuliano 

ST Technical Moderator
September 25, 2026

Hello ​@giuliano2505 

To help us investigate further, could you provide a sample project that reproduces the issue?

BR, Souhaib

To give better visibility on the answered topics, please click on 'Best answer' on the reply which solved your issue or answered your question.
Associate
September 30, 2026

Hello

Yes, I can prepare a simple project.
I need a couple of days for that.

 

BR, Giuliano