The trace recorder library is now easier to configure for streaming over custom interfaces, and includes support for USB streaming on STM32 (easily adapted for other MCUs). USB offers excellent performance for RTOS tracing and over 600 kB/sec has been measured on an STM32 using USB 2, several times more than required. Other stream ports include TCP/IP (example for lwIP) and SEGGER J-Link debug probes. Tracealyzer 3.1 can also receive trace streams via Windows COM ports, e.g. from USB CDC connections, UART connections or any virtual COM port provided by other target interfaces.
Tracealyzer v3.1 has also been extended to identify memory leaks in systems that use dynamic memory allocation. It can record memory allocation events (e.g. malloc, free) from multiple operating systems, and can now display such allocations that have not been released. Since the memory allocation events are linked to the task trace, the user can quickly find the context of the allocation and investigate the problem.
The recorder library has been improved significantly to simplify integration and now provides a common API for both streaming and snapshot recording that makes it easier to get started with snapshot recording and then switch to streaming, or vice versa.
According to Percepio founder and CEO Dr. Johan Kraft, “Tracealyzer v3.1 is the first RTOS trace tool to support RTOS trace using just a standard USB cable, allowing you to use any debug probe in parallel. We are very satisfied with the improved recorder library, a major feature that not only makes it easier to get started, but also lays a solid foundation for vast improvements of the analysis capabilities in Tracealyzer during 2017.”
“Before Percepio, developers were in the dark and could only guess at what their software was actually doing. With Percepio Tracealyzer, the veil has been lifted and now we can see exactly what the software is doing which has resulted in dramatic improvements