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.