FreeRTOS is a popular real-time operating system (RTOS) for embedded software. An RTOS provides multitasking, which allows for more modular and efficient code. However, multitasking makes testing and debugging more challenging. This requires good insight into the runtime world.

Tracealyzer provides a visual timeline of FreeRTOS applications. See how tasks execute and interact via queues, semaphores and mutexes. Verify the task priorities and stack sizes. Profile the CPU load, execution times, response times and heap memory usage. Get custom data plots and state diagrams.

The 30+ views are interconnected – spot issues in high-level overviews and drill down into the details. Want to see it in action? Check out the Demo video!

tracealyzer for freertos
FreeRTOS Logo

“Tracealyzer has always offered exceptional value to our global community of users by giving engineers direct insight into how their applications are executing.  This information is invaluable when both optimizing and debugging FreeRTOS applications.” – Richard Barry, FreeRTOS founder.

Tracealyzer is the leading solution for visual trace diagnostics. It provides a new level of runtime insight for embedded software developers, enabling amazing products while also reducing development time, costs and risks. See the Benefits and Examples video to learn more. Also make sure to check out the RTOS Debug Portal with many tutorials and articles about visual trace diagnostics using Tracealyzer.

You don’t need any particular hardware to use Tracealyzer. The tracing can be done entirely in software, to a small RAM buffer of a few KB. Tracealyzer also allows for streaming the trace data continuously to host, either using a supported debug probe like STLINK or Segger J-Link, or over functional I/O interfaces like Ethernet or Wifi. This way, you can monitor your system over long periods of time and capture any issues.

Tracealyzer for FreeRTOS relies on a trace recorder library, provided with full source code. This can be integrated in an existing application within a few minutes, by following the Quick Start guide. FreeRTOS kernel and API events are traced automatically and the tracing is easy to set up. You may also log additional events in your application code, just like a printf call but with minimal overhead, and see the result in Tracealyzer.

Arm Cortex-M devices are supported out of the box (e.g. STM32), as well as Espressif ESP32, PIC32, and many other embedded processors. Other processors can easily be supported with minor configuration changes. It works with essentially any C/C++ compiler and can be configured for minimal RAM and ROM usage. We provide plugins and integrations for common development tools, including Eclipse/GDB, STM32CubeIDE, Keil MDK, IAR, ESP-IDF and Lauterbach.

For ESP32 developers, Tracealyzer v4.5 and later also supports the ESP-IDF version of FreeRTOS, including SMP multicore tracing. Trace streaming on ESP32 is supported via OpenOCD.

Percepio has supported FreeRTOS since 2011 and is an Advanced Technology Partner in the Amazon Partner Network.

Or sign up for our newsletter to get a reminder.

Tracealyzer also supports several other leading RTOS platforms, as well as Linux tracing. Learn more on the general Tracealyzer page. For information on how to purchase a license, see the Licensing page. And don’t hesitate to contact support@percepio.com if you have any technical questions.