Reveal the runtime world with Tracealyzer and boost your software development.

Tracealyzer the premier trace visualization tool for developers of RTOS- or Linux-based embedded software systems. Get amazing insight into the real-time behavior of your software during development, debugging, validation, optimization, documentation and training. Boost your development and deliver robust, responsive software, on time and within budget.

Tracealyzer

Supported operating systems

Select your preferred operating system to learn more.

FreeRTOS Tracealyzer for FreeRTOS
Keil RTX5 Tracealyzer for ARM Keil RTX5
Linux
SafeRTOS Tracealyzer for SafeRTOS (SafeRTOS+Trace)
ThreadX Tracealyzer for ThreadX
µC/OS-III Tracealyzer for Micrium µC/OS-III
VxWorks Tracealyzer for VxWorks
  • See the runtime world of your embedded software with 25+ graphical views.

  • Analyze execution and timing of RTOS tasks and interrupts.

  • See RTOS API calls and application logging.

  • Simplifies debugging, validation, optimization and training.

FreeRTOS

“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.

ARM Keil MDK RTX

“Percepio Tracealyzer enables unparalleled insight into the execution, timing and interactions of the RTX5 real-time operating system, the MDK middleware components and the user application. Percepio is the first ARM partner to utilize our new Event Recorder technology, which provides time deterministic high-speed access to a running target system.”Reinhard Keil, Director of MCU Tools at ARM.

ThreadX

“We are extremely excited and pleased about the Tracealyzer port to our Industrial Grade ThreadX RTOS. The combined best-in-class visualization assets of Percepio’s Tracealyzer and our industry leading ThreadX RTOS will greatly help embedded developers confidently get their IoT products to market quicker.” – William E. Lamie, President and CEO at Express Logic Inc.

Micrium µC/OS

“What Percepio has achieved with Tracealyzer is to remove the guesswork of designing an RTOS-based system. It’s ability to record and then analyze what’s happening gives developers a view into their system that would be impossible to have otherwise.” – Jean Labrosse, president and CEO at Micrium Inc.

Perhaps you have used some tracing tool before, but this is more than a just another trace viewer. This is state-of-the-art visualization developed since 2004, designed to make traces much easier to understand. The visualization actually understands the meaning of the most RTOS events and performs advanced analyses to improve the visualization by connecting related events and views. This makes it much easier to draw conclusions from the data, understand the problem and verify the solution.

Example views

You get more than 25 interconnected views of the run-time behavior, including task scheduling and timing, interrupts, CPU load, memory usage, and interactions between tasks via message queue, semaphores, mutexes and other RTOS services. You can also do custom logging of user events from your application code to see states and variables over time, in parallel with the other views. If using dynamic memory allocation (malloc/free), the memory usage views allows you to find memory leaks.

This can be used side-by-side with a traditional debugger and complements the detailed debugger view with system-level views, ideal for understanding real-time issues where a classic debugger is not sufficient. For instance, in real-time systems such as motor control, it is often not possible to stop the system for debugging. By using software tracing, you can record your embedded software and any variables of interest in real time as the system executes.

The tracing relies on efficient software instrumentation, provided as a trace recorder module for supported operating systems. This way, no special tracing hardware is required and that it works on essentially any processor, assuming you have a few kilobytes available for the trace recorder module. It is designed for 32-bit target processors and upwards, including microcontrollers (MCUs) with limited amount of memory such as ARM Cortex-M0 devices. The performance overhead is only a few microseconds per event on a 32-bit MCU.

You can even use it in deployed systems, to get traces from sporadic errors which otherwise are hard to reproduce. The trace can be streamed in real-time for several operating systems, either using a supported debug probe or by using a custom target-host interface, such as a USB or TCP/IP.

Several leading IDEs are explicitly supported, such as IAR, Keil, MPLAB X IDE, Atmel Studio 7, Wind River Workbench, and most Eclipse-based IDEs. However, Tracealyzer can often be used with any IDE, as long as you can save RAM contents to a file (.bin or .hex) or have a target-host interface available for streaming the trace data to host. The Keil RTX5 version however requires using Keil µVision.

Sounds good? Download now and try the included demo trace to explore the broad range of visualizations.

To learn more about practical use of software tracing, check out the Getting Started page with videos and example cases.

Read our white paper to learn more about embedded software tracing in general.