As a firmware developer do you want to:

  • Greatly reduce debugging time ?
  • Watch your source code executing in real-time ?
  • Reveal unexpected code behaviour at-a-glance ?
  • See which interrupts are occurring & how often ?
  • Identify functions that need to be optimized ?
  • Quickly pinpoint why your program crashed ?
  • Visualize application data in real-time ?

Thinker

QTrace will do this for you and much more...

QTrace Overview

QTrace provides unobtrusive real-time trace for ARM Cortex-M3/M4/M7/M33 processors at a fraction of the cost of similar tools.

The hardware probe continually streams ETM trace data from your ARM processor to a Windows application for live analysis.

QTrace runs silently alongside your IDE/debugger to provide continuous real-time code views.

Why QTrace? Why QTrace?

In short, QTrace saves time & money and takes debugging to another level.

Live views give exceptional insight into code execution, helping pin-point many bugs much faster than conventional methods.

See more reasons to use the most affordable ETM trace tool available.

Trace Preconceptions Not just for tricky bugs

QTrace helps solve tough problems but it also super-charges everyday debugging. After experiencing the power of live code coverage and an entire execution history at your finger tips, you won’t want to debug without it.

Find Bugs Quicker Debug Faster

Read this trace primer to see how real-time trace speeds up debugging. Also, find out how you can be tracing in minutes.

System Connection

QTrace System Connection

QTrace Key Features

  • Lowest cost ETM trace tool available
  • Unlimited real-time tracing via USB 3.0
  • Trace Cortex M3/M4/M7/M33 targets to 550MHz
  • Live code coverage ≅1000’s of breakpoints
  • Capture a call stack while CPU is running
  • Reveal bottlenecks with function profiling
  • Pin-point the cause of hard faults
  • Effortless interrupt and loop timing
  • Automated code coverage reporting
  • ITM based waveform viewer & debug window
  • Perfect for applications which are difficult to debug with breakpoints e.g. IoT communication stacks, motion control, high speed data acquisition, PID controllers, etc.

See above menus for links to manual, datasheet, app. notes & FAQs

Typical set-up

QTrace Typical Set-up

QTrace Analyser

QTrace Analyser is a 64 bit application running on Windows 7 / 8.1 / 10 / 11 and is supplied free-of-charge with the QTrace probe. It decodes and presents trace data streamed from the probe and runs side-by-side with your existing IDE, ideally on a 2nd screen.

Real-time execution is shown in 3 different views:

QTrace Code Coverage Features Live Coverage

Shows live execution coverage as C/C++ and disassembly views as well as an execution heatmap. Enables loop timing, function navigation, conditional searches & more…

QTrace Analyser View
Enlarge

QTrace Capture Features Code Capture

Takes a snap-shot of program execution using several trigger options while tracing continues in the background. Displays a call stack as a function timeline.

QTrace Analyser View
Enlarge

QTrace Profiling Features Function Profiling

Displays sorted function statistics in real-time including number of calls, timing, interrupt frequencies. Highlights which functions are taking most of the CPU time.

QTrace Analyser View
Enlarge

Real-time concurrent data views are also available:

QTrace FreeRTOS Viewer RTOS Event Viewer

The RTOS event viewer targets the popular FreeRTOS kernel to give detailed insight into CPU loading and thread timing. Event data is sent via the ITM* using a lightweight library provided.

QTrace ITM Graphing ITM Graphing

ITM graphing is a very easy way to visualise dynamic application data. Raw samples sent by the target via the ITM* are scaled and plotted in real-time. Data can be exported for further analysis.

* ITM data is embedded in the high-speed ETM trace stream.

🎥 Click on the video below to see QTrace Analyser in action (click or move away to pause):

More Information

See Sections 2-7 of the QTrace User Manual.

QTrace Evaluation

Evaluating QTrace is easy with a ST Microelectronics Nucleo-144 demo board.

These very low cost prototyping boards are available with different CPUs, ranging from a 72MHz, STM32F2 part to a STM32H7 running at 550MHz.

Our STM32-Nucleo Trace Board adds a trace header to the Nucleo-144 and, together with demo projects supplied with QTrace Analyser, gives a versatile platform to explore the power of real-time trace.

Start tracing in minutes using a Nucleo demo board and our quick-start guide.

Tracing with a Nucleo-144 Demo Board

Evaluating QTrace with Nucleo-144

QTrace Comparison

There are several ETM trace probes from other manufacturers which QTrace can be compared with.
The table below gives a top-level comparison and shows that by far the biggest difference is price.

ProbeTrace Clock (MHz max)Includes JTAG/SWDIDE required (additional cost)Probe PriceIDE PriceTotal Cost
IAR I-Jet-Trace-CM-L150YesIAR Embedded Workbench for ARM£2093*£1000++£3000++
Keil uLinkPro100YesKeil MDK Cortex-M£986*£1000+£2000+
Segger J-Trace Pro Cortex-M150YesSegger Ozone (free)£1400*£0£1400
QTrace120NoNone, use a free IDE! e.g. STM32CubeIDE£379£0£388†

* Digikey price as of 22/12/23
† Includes an example JTAG adapter (STLINK-V3MINI) purchased separately

Testimonials

Supported Devices

Currently QTrace Analyser supports the following devices:

ManufacturerDevice/Family Core
Cypress CY8C6347M4/M0+
MicrochipSAM-E54M4
Nordic SemiconductornRF52840*M4
NXPMK66M4
LPC407xM4
Silicon LaboratoriesEFM32GG11M4
EFM32PG12M4
STMicroelectronicsSTM32F1xxM3
STM32F2xxM3
STM32F3xxM4
STM32F4xxM4
STM32F7xxM7
STM32G4xxM4
STM32H7xxM7
STM32L47xM4
STM32L5x2M33
STM32U5x5M33

* Enquire about SoftDevice support
† Support for STM32H7xx (single core, up to 550MHz) with STM32CubeIDE, see App. Note.
❖ Currently non-secure mode only

Note:

1. In most cases, unlisted variants of the above devices will work with little or no modification to the supplied scripts. Contact us about support for variants or for devices from other manufacturers.

2. The QTrace Probe will work with any ARM Cortex M3/M4/M7/M33 device that complies with the ARM ETM timing specification and a trace clock (not CPU clock) ≤ 120MHz.

Supported IDEs

QTrace Analyser has scripts for the following IDEs:

IDEVersion Tested
Atmel StudioV7.0
Atollic TrueSTUDIOV9.3
Cypress ModusToolboxV1.1
IAR Embedded WorkbenchV8.20
Keil uVisionV5.27
Rowley CrossStudioV4.4
Segger Embedded StudioV4.16
ST System WorkbenchV2.4
STM32CubeIDEV1.13
VisualGDBV5.4

Note:

Any IDE can be used if target start-up code configures trace.

System Requirements

Below is a summary of the system requirements for successful tracing.

  • A PC running 64-bit Windows 7, 8.1, 10 or 11 with the preferred hardware specification:
    • Intel i5/i7 dual or quad core CPU running at 2GHz min.
    • 8GB RAM
    • A spare USB 3.0 port
    • Screen resolution of 1366 x 768 or better (preferably a 2nd screen)
  • A user supplied IDE and JTAG adapter
  • Target hardware with an ARM Cortex M3/M4/M7/M33 based processor and a 1.27mm pitch,
    20 way ETM trace connector (see pin-out) with 1.8V – 3.3V signal levels
20 way ETM Trace Header

Note:

This is different to a 0.1″ pitch
JTAG-only connector

Products

QTrace Probe

Low cost USB 3.0 powered trace probe enabling real-time instruction tracing for ARM Cortex M3/M4/M7/M33 processors running up to 550MHz.

QTrace ETM Trace Probe for ARM Cortex-M3/M4 CPUs

Features

  • USB 3.0 micro B connector
  • 10 way, 1.27mm pitch trace connector
  • Signal voltage levels: 1.8V – 3.3V
  • Max. trace clock frequency: 120MHz
  • Current consumption: 300mA @ 5V
  • Bicolour front panel status LED
  • Dimensions: 66 x 70 x 23mm
  • QTrace Analyser & cables also included
Price: £379.00
Details

Note

1. The QTrace probe does not have integrated JTAG/SWD
2. Consider a STM32-Nucleo Trace Board to evaluate QTrace

STM32-Nucleo Trace Board

Converter PCB to enable ETM trace on low-cost STM32 Nucleo-144 boards

STM32 Nucleo-144 Trace Converter PCB

Features

  • Provides ETM trace header for Nucleo-144 boards
  • Avoids expensive trace-enabled Eval. boards
  • Compatible with multiple STM32 variants
  • Plugs into 30-way socket (CN9) on a Nucleo-144
  • Tested on 550MHz CPU (trace clock 108MHz max)
Price: £25.00
Details

Trace Cable

Spare ETM trace / JTAG ribbon cable with converter PCB

ETM Trace Cable

Features

  • Rev.2 cable + adapter for QTrace Probe
  • Uses 14 pin socket for JTAG connection
  • Cable fits ST-Link/V3 adapter directly
Price: £40.00
Details

Want to know more?

Check out this FAQ, download the user manual or browse the 'Downloads' & 'Links' menus above for lots more information on QTrace.