NodeLoop
Debug header pinout explorer

Interactive JTAG & SWD Wiring Guide

Compare common target headers and probes, highlight matching pins, and generate a wiring table before you plug anything in.

Tool Published Jun 30, 2025 Header reference and bring-up aid

Quick start examples

These presets set the connector, probe, filter, and reset preference in one click.

What this solves

It removes the annoying part of debug bring-up: matching the target header to the probe connector without swapping SWDIO, SWCLK, VTref, or reset.

Safe default

For Cortex-M boards, start with SWD plus nRESET. Keep VTref as a sensed voltage reference, not as a power rail.

When JTAG matters

Use the JTAG filter for older ARM systems, FPGAs, boundary-scan tasks, or any target that genuinely needs TDI, TDO, and nTRST.

Connector matcher

Pick a target header and probe, then narrow the view to SWD or JTAG if needed.

Important: always connect ground and VTref before assuming the probe can talk to the target.
Tip: most useful with SWD

Common connectors at a glance

Quick static reference for the headers that show up most often in practice.

HeaderTypical useCore pinsNotes
ARM 10-pin / CortexModern Cortex-M SWD or compact JTAGVTref, SWDIO/TMS, SWCLK/TCK, GND, nRESETSmall, common, and usually the best default.
ARM 20-pinLegacy ARM, full JTAG, some FPGA workflowsVTref, TMS, TCK, TDI, TDO, nTRST, nRESETBulky but explicit. Watch optional +5 V on pin 19.
STDC14ST-Link V3 and STM32 ecosystemsARM10 core plus optional VCP pinsPins 13 and 14 often carry probe UART.
Tag-Connect TC2050Compact production or dense bring-up fixturesCortex-10 style signal setNo populated header on the PCB.
SWD 6-pinMinimal SWD-only boardsVTref, SWDIO, SWCLK, GND, nRESETSimple, but less flexible than Cortex-10.

Target Device

Fast workflows

STM32 board with ST-Link

Select ARM 10-pin Cortex Debug as the target and ST-Link/V2 as the probe. Use the Minimal SWD filter to keep the essentials on screen: SWDIO, SWCLK, GND, VTref, with nRESET recommended.

Full JTAG on a legacy ARM header

Choose ARM 20-pin Standard JTAG as the target and Segger J-Link (20-pin) as the debugger. The table will expose TMS, TCK, TDI, TDO, nTRST, nRESET, and the rest of the connector.

Using a Raspberry Pi Pico as a debugger

Pick a Cortex-style target connector such as MIPI-10 or TC2050 and choose Raspberry Pi Pico (Picoprobe). Common defaults are GP2=SWCLK and GP3=SWDIO, with GP4/GP5 often used for UART.

Note on MIPI-10: in many documents this effectively refers to the same practical wiring family as the Cortex Debug 10-pin header. This tool treats them as equivalent.

Signal descriptions

JTAG vs. SWD

JTAG usually needs 4 to 5 active signals: TMS, TCK, TDI, TDO, and sometimes nTRST. SWD reduces that to SWDIO and SWCLK, which is why it is the common Cortex-M default.

Voltage Reference (VTref)

VTref is a probe input: it tells the probe the target I/O level. Do not power the target through VTref. On ARM-20, pin 19 can expose a separate +5 V output on some probes, so treat that pin carefully.

FAQ

Is VTref supposed to power the target board?

No. VTref is usually a probe input used to sense the target I/O voltage. It should normally not be used to power the target.

Should I start with SWD or JTAG on a Cortex-M board?

Start with SWD unless the target specifically requires JTAG features. It uses fewer pins and is the common default for Cortex-M bring-up.

Is nRESET mandatory for SWD?

Not always, but it is strongly recommended. The core set is usually SWDIO, SWCLK, GND, and VTref, while nRESET improves recovery when firmware or low-power states block debug attach.

Are MIPI-10 and Cortex 10-pin the same thing?

In practice they usually refer to the same 10-pin Cortex Debug connector family. This tool treats them as equivalent for wiring purposes.

Related resources