From hardware to software trace — how we are bringing tracing full circle.
June 23, 2025
For years, we’ve been the trusted name behind hardware trace support in embedded development. If you’ve worked with automotive microcontrollers, chances are you’ve benefited from our tracing solutions integrated into winIDEA.
What is a Trace?
A trace is a list of events ordered by timestamps.
Anything related to the runtime behaviour of an embedded application can be considered an event.
The beauty of trace is that—unlike traditional debugging—you don’t need to interrupt application execution to record it.
Understanding Hardware Trace
Hardware trace works by using dedicated on-chip trace logic. Trace messages are then sent off-chip through dedicated debug or trace interfaces.

Hardware trace concept
You can dive deeper with our webinar Introduction to Tracing or check out tutorials Getting started with Trace.
Challenge: When Hardware Trace isn’t an Option
Not all microcontrollers come equipped with hardware trace capabilities. Additionally, design constraints sometimes prevent using trace pins or dedicated hardware. This gap limits trace access for many embedded projects.
Current solutions:
Emulation Adapters from TASKING
Some SoCs do not expose full trace capabilities on production devices. Instead, vendors offer emulation devices with additional pins to access these interfaces.
TASKING provides Emulation Adapters based on emulation devices to allow tracing on board where production devices are normally soldered.


Downsides:
- Usage of Emulation Adapters is not always possible due to their size and the need for additional board space. Many production boards are too compact to accommodate them.
- The usage of Emulation Adapters requires hardware modification of the board and introduces additional complexity to the setup.
3rd party Software Trace
Software trace bridges that gap by using existing debug interfaces to provide runtime profiling and trace data without additional hardware.
Software trace means you generate trace messages in software. You add instrumentation to the code, you buffer the events that you create in memory, and then you send them off-chip via an application interface.
This approach broadens the reach of tracing to platforms previously out of reach.
What’s Coming: Software Tracing with TASKING
The idea to bring software tracing into our ecosystem took shape during one of our internal hackathon events—a space where exploration often turns into real development.
Since then, we’ve been working on integrating this capability into our tools, making software tracing more accessible and aligned with everyday embedded development needs. It’s efficient, easy to use, and designed to fit directly into your existing workflow.
We’re getting close to release, and we’re excited to show you what’s coming. Stay tuned for a closer look at our new Software Trace Tool — SWAT!