ULINKpro Debug and Trace Unit

ULINKpro Debug and Trace Unit Image (View Larger ULINKpro Debug and Trace Unit Image)
The Keil ULINKpro Debug and Trace Unit connects your PC's USB port to your target system (via a JTAG, Cortex Debug, or Cortex Debug+ETM connector). It allows you to program, debug, and analyze your applications using its unique streaming trace technology.

ULINKpro, together with MDK-ARM, provides extended on-the-fly debug capabilities for Cortex-M devices. You are able to control the processor, set breakpoints, and read/write memory contents, all while the processor is running at full speed. High-Speed data and instruction trace are streamed directly to your PC enabling you to analyze detailed program behaviour.

Introduction Video

Watch a short video introducing the capabilities of ULINKpro and the sophisticated debug and trace analysis it can deliver.

See a comparison of all ULINK adapters.

explore device database
Supported Devices for
ULINKpro Debug and Trace Unit



  • Supports ARM7, ARM9, Cortex-M0, Cortex-M1, Cortex-M3, and Cortex-M4 devices
  • JTAG support for ARM7, ARM9, and Cortex-M
  • Serial Wire Debug (SWD) support for Cortex-M
  • Serial Wire Viewer (SWV) Data and Event Trace for Cortex-M up to 100Mbit/s (Manchester mode)
  • Instruction Trace (ETM) for Cortex-M3 and Cortex-M4 up to 800Mbit/s
  • Unique Streaming Trace direct to your PC, provides unlimited trace buffer
  • JTAG Clock Speed up to 50MHz
  • Supports Cortex-M devices running at up to 200MHz
  • High-Speed Memory Read/Write up to 1MBytes/sec
  • Seamless integration with the Keil µVision IDE & Debugger
  • Wide target voltage range: 1.2V - 3.3V, 5V tolerant
  • Support for 5V only devices using optional 5V Adapter
  • Optional Isolation Adapter provides electrical isolation from the target system
  • USB 2.0 High-Speed connection
  • USB powered (no power supply required)
  • Target Connectors
    • 10-pin (0.05") - Cortex Debug Connector
    • 20-pin (0.10") - ARM Standard JTAG Connector
    • 20-pin (0.05") - Cortex Debug+ETM Connector

Other Features

The unique streaming trace capabilities of ULINKpro delivers sophisticated analysis features such as:

  • Complete Code Coverage information about your program's execution ensures thorough application testing and verification
  • Performance Analysis using the Execution Profiler and Performance Analyzer enable you to identify program bottlenecks, optimize your application, and to isolate problems


  • ULINKpro support is available in MDK 4.02 or higher.
  • Streaming instruction trace requires the target device to have ETM (Embedded Trace Macrocell)

ULINKpro Specifications

Feature ULINKpro
Debugging Features
RAM Breakpoints Unlimited
ROM Breakpoints (ARM7/9) 2 max
ROM Breakpoints (Cortex-M3) 8 max
ROM Breakpoints (µPSD)
(Cannot Set While Executing)
ROM Breakpoints (XC800)
(Cannot Set While Executing)
ROM Breakpoints (XC166) n/a
Execution Breakpoints
(Set While Executing)
Access Breakpoints (ARM7/9) 2 max
(R/W Only, With Value)
Access Breakpoints (Cortex-M3) 4 max
(With value)
Access Breakpoints (µPSD) n/a
Access Breakpoints (XC800) n/a
Access Breakpoints (XC166) n/a
Debugging Support
Real-Time Agent (ARM7/9) no
Serial Wire Debug (Cortex-M) yes
Data Trace (Cortex-M3)
(Serial Wire Viewer)
Instruction Trace (Cortex-M3)
(Embedded Trace Macrocell - ETM)
JTAG Clock ≤ 50MHz
Memory R/W ≈ 1MB/s
Flash R/W 32KB/s
Data Trace Streaming 800Mb/s
10-pin (0.05")
(Cortex Debug Connector)
20-pin (0.1")
(ARM Standard JTAG Connector)
20-pin (0.05")
(Cortex Debug+ETM Connector)
16-pin (0.1")
(Infineon OCDS Connector)
14-pin (0.1")
(ST µPSD Connector)
I/O Voltage Range 1.2V - 3.3V
Supported Device Families
XC800 (8051) no
µPSD (8051) no
XC166/XE166/XC2000 no
LPC950 (8051) no
ARM7 yes
ARM9 yes
Cortex-M0 yes
Cortex-M1 yes
Cortex-M3 yes
Cortex-M4 yes



We use cookies to give you the best experience on our website. By continuing to use our site you consent to our cookies.

Change Settings

Find out more about the cookies we set