OpenOCD Transport Selection

Most ARM devices are debugged using either SWD or JTAG protocol. OpenOCD supports both protocols and allows selecting one explicitly:

OpenOCD distinguishes between high-level debugging adapters (HLAs, e.g. ST-Link) and low-level debugging adapters (e.g. J-Link) and requires selecting the HLA versions of the protocols if you are using the high-level debug adapters.

For most setups we recommend leaving the “debug protocol” field empty or selecting “Default” to use the default protocol for the current adapter/device combination. If you want to choose between JTAG or SWD explicitly, use the table below to find the correct setting:

Setting Meaning Can be used with
SWD Use SWD protocol Low-level adapters like J-Link or Olimex FT2232-based adapters
JTAG Use JTAG protocol
SWD (HLA) Use SWD protocol High-level adapters like ST-Link
JTAG (HLA) Use JTAG protocol

If you are not sure about the protocol/adapter to use, simply try several options and use the “Test” button to quickly validate them.