Search by Tags



Compare with Revision

Subscribe for this article updates


JTAG is a dedicated debug port which allows hardware assisted software debugging or to recovering flash content. Colibri and all Apalis modules provide the JTAG signals through pads on the bottom of the PCB. The Colibri Evaluation Board v3.1 and later as well as the Apalis Evaluation Board come with pogo pins connecting to the JTAG pads of the module PCB. JTAG is then provided by a standard 20-pin connector (ARM JTAG 20) on the evaluation board.

On PXA based modules JTAG is the only recovery mechanism (supported by the Toradex utility Colibri Loader).

Modules powered by NVIDIA Tegra, NXP/Freescale i.MX6/7 or Vybrid SoC provide an internal boot ROM with various recovery capabilities. We recommend to make use of the SoC's boot ROM for recovery instead of using JTAG.

i.MX 7 based Modules

Toradex tested some debug adapters for the secondary Cortex-M4 core. The ARM KEIL ULINKpro D debug adapter in combination with ARM DS-5 and ARM MDK development environment has proven to be working. Also Segger J-Link has been successfully used to debug the Cortex-M4 core. See also the following resources:

To use JTAG to debug the primary A7 cores running Linux some additional kernel parameters are necessary:

setenv defargs ${defargs} clk_ignore_unused nohz=off nohlt

Tegra K1 based Modules

Toradex tested Lauterbach jtag solution with TK1. By default TK1's JTAG will be in boundary scan mode, to enter JTAG mode SoC needs to be restarted with TRST_N pulled low. It can be accomplished with this trace32 commands and a board reset:

DIAG 0x3404 1

more information on debugging TK1 can be found here (external blog site)

Vybrid based Modules

Toradex tested some debug adapters for the secondary Cortex-M4 core (Colibri VF61). The ARM KEIL ULINKpro D debug adapter in combination with ARM DS-5 development environment has proven to be working.

Our partner AntMicro documented how to use OpenOCD on Linux. OpenOCD supports various JTAG debug adapter such as the Amontec JTAGkey-tiny, Olimex ARM-USB-OCD or Olimex ARM-USB-TINY-H.

Note: On Colibri VF61 the JTAG pin JTMS is also used by the on module audio codec. When the operating system (WinCE or Linux) is started, this pin is muxed for audio codec communication use, hence the JTAG connection will break! On Linux, the pin muxing can be avoided by compiling the kernel without the audio SoC machine driver (CONFIG_SND_SOC_FSL_SAI_WM9712).

Colibri PXA Modules

Supported JTAG adapters:

  • Olimex ARM-USB-OCD (not the ARM-USB-OCD-H !)
  • Amontec JTAGkey-Tiny (currently not available for purchase anymore)

Colibri Evaluation Board V3.1

Connect your JTAG adapter to X13 of the Colibri Evaluation Board V3.1. Make sure that pin 1 of the connector connects to pin 1 of your JTAG adapter.

Colibri Evaluation Board V2.1

On the Colibri Colibri Evaluation Board V2.1 provides a JTAG interface on connector X13. The Amontec JTAGkey-Tiny pin 1 matches to the Evalboard V2.1 X13 pin 1.
For more information about the JTAG pin out see also the Evaluation Board Schematic.
Please note that Amontec JTAGkey-Tiny may not available for purchase anymore. Another option is the Olimex ARM-USB-OCD (not the ARM-USB-OCD-H !)

How to Connect the JTAG FFC Cable

The two pictures below explain how to connect the cable to the Colibri Evaluation Board V2.1

Purchase Replacement FFC Cables

The JTAG FFC cable is a standard part available at all major electronics distributors. The main parameters are:

  • FFC
  • 0.5mm pitch
  • contacts on the same side (Type A)

For example the MOLEX 98266-0083

Here are some example sources (we apologize if the links happen to be outdated):

Driver Installation

Windows 10: General Note

Windows 10 does not allow to install the drivers for Amontec and Olimex JTAG adapters, because the drivers are not properly signed. To overcome this issue you need to restart Windows 10 following the procedure described below:

  1. Press the Windows [START] button
  2. Type "startup". Select [Change advanced startup settings].
  3. Select [Restart now] under the Advanced startup area.
  4. Select [Troubleshoot].
  5. Select [Advanced Options].
  6. Select [Startup Options].
  7. Select [Restart]. Your system will restart and present a text-based menu.
  8. Select option 7 on your keyboard to choose "Disable driver signing enforcement".

Drivers for Amontec JTAG Key Tiny

We found problems when installing the originally linked drivers from the Amontec page under Windows 7.

Here is a link to a set of drivers which worked fine (July 13, 2011):

Drivers for Olimex ARM-USB-OCD

Drivers for the Olimex-ARM-USB-OCD can be downloaded from the ColibriLoader download folder.

On some systems, there seem to be wrong drivers installed automatically. ColibriLoader will throw an error message, that no supported JTAG adapter was found. Please follow the steps below to recover from this issue:

  1. Go to the Windows device manager
  2. Right-click the libusb/Olimex device, select Update Driver Software...
  3. select Browse my Computer for Driver Software
  4. select Let me Pick from a List
  5. click on [Have Disk], navigate to the folder CDM 2.08.24 Driver for Olimex
  6. Select USB Serial Converter A or USB Serial Converter B
  7. Repeat Steps 2 to 6 for the 2nd libusb/Olimex device