This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

How to use XDS100 JTAG emulator to interface to Stellaris devices

Other Parts Discussed in Thread: EK-LM3S811

(post is contained in attachment for printable format)

The XDS100 emulator is a low-cost JTAG emulator hardware interface option for interfacing to Stellaris devices when using the Code Composer Studio IDE.

For additional details specific to the XDS100 emulator, see XDS100 – Texas Instruments Embedded Processors Wiki.  Purchasing details can also be found there. (http://processors.wiki.ti.com/index.php/XDS100)

Stellaris evaluation kits are available with evaluation copies of IDEs from 5 tool vendors, TI’s CCS, Keil’s RealView, IAR’s Embedded Workbench, CodeSourcery’s Sourcery G++, and Code Red’s Technologies tools.  Currently only CCS has support for XDS100 interfacing to Stellaris devices.

Configuring CCS to Use the XDS100

When using an existing code example from StellarisWare, the CCS target configuration defaults to the Stellaris ICDI and must be changed to select the XDS100.  To change the target configuration:

1.)      open target.config.ccxml in Active-Debug project

1.)     In the Connection drop-down box, select Texas Instruments XDS100v2 USB Emulator.  If using a Stellaris EK- or DK- evaluation kit, the Board or Device is automatically selected.  Choose the device if it not already selected.  Click Save under Save Configuration. 

Hardware Connections

The XDS100 emulator has a 14-pin TI JTAG header.   Most Stellaris evaluation kits have a 20-pin ARM JTAG header.  To connect the XDS100 emulator to a Stellaris kit (or a custom board with a Stellaris device) the following connections must be made:

14-pin TI

 

20-pin ARM

Pin

Signal

Connect to

Pin

Signal

1

TMS

7

TMS

2

TRSTn

 

 

3

TDI

5

TDI

4

TDIS

GND

GND*1

5

VTRef

3.3V

*2

6

KEY

 

 

7

TDO

13

TDO

8

GND

 

 

9

RTCK

 

 

10

GND

 

 

11

TCK

9

TCK

12

GND

GND

GND

13

EMU0

 

 

14

EMU1

 

 

*1:  Any ground is acceptable.  Proper ground referencing must be in place between the XDS100 emulator hardware and the Stellaris board.

*2:  3.3V is not present on the Stellaris evaluation kits’ 20-pin ARM headers

Note, all pins that are not highlighted in the 14-pin TI columns or listed in the 20-pin ARM columns should be no connects.

The connections can be wired manually or with a 14-pin TI to 20-Pin ARM adapter.  Note, that Stellaris evaluation kits do not have pin 1 at Vdd on the 20-Pin ARM header.  Therefore, VTRef on the 14-pin TI header must be connected to a 3.3V reference point on the evaluation board. 

Shown in the photo below is the 14-pin header on the XDS100 emulator next to a Stellaris evaluation kit with a 20-pin ARM header.  Pin 1 is circle on each of the headers.  On the XDS100 emulator pin 1 is designated by a 1 on the silk screen.  For most Stellaris evaluation kits with a 20-pin ARM header, pin 1 is designated by a small triangle. 

Stellaris Applications Engineering has tested and verified the correct operation of the XDS100v2 emulator interface with the CCS IDE for all Stellaris LM3S evaluation kits, with the exception of the EK-LM3S811 kit.   When interfacing to the EK-LM4F232, the attached xml file must be placed in the CCS folder:  ccs/common/targetdb/drivers folder.  (Attached xml file: 5340.tixds100v2cortexM.xml)

Common Questions and Answers

Q:  I received the following error message when programming and launching the debugger:  Device ID is not recognized or is not supported by driver

A:  Check that the device in use is not from the LM3SX00 series.  If it is not, then verify that the XDS100 emulator device drivers are properly installed in the Hardware Device manager.    If the divers appear to be installed and configured properly, check the wiring to ensure no wires have been incorrectly connected.

Q:  I received the following error message when programming and launching the debugger:  This utility failed to open the adapter for a custom emulator.

A:  Check to ensure that the XDS100 emulator is selected for connection in the file target.config.ccxml.

Q:  I received the following error message when programming and launching the debugger:  The controller has detected a cable break far-from itself

A:  TDIS on the 14-pin TI header may not be connected to ground correctly.

Q:  I received the following error message when programming and launching the debugger:  The controller has detected a target power loss.

A:  VTRef on the 14-pin TI header may not be connected to a 3.3V voltage reference correctly.  Note:  Stellaris evaluation kits do not have 3.3V at pin 1 on the 20-pin ARM header.

Q:   I received the following error message when programming and launching the debugger: This utility failed to open the adapter for a custom emulator

A:  Check to ensure that the XDS100 is properly powered.   LED DS1 should be green on the XDS100 emulator board. 

Q: I want to connect the XDS100 emulator to a 10pin ARM header on a Stellaris RDK board. What is the best way to make the connection?

A: It can be done, but the 10pin ARM header has smaller gauge pins, making it more difficult to ensure proper manual connections. Some Stellaris kits come with a 10pin ARM to 20pin ARM adapter, MDLADA2 (http://www.ti.com/tool/mdlada2) or you can buy it for only $20.00. If possible, it is preferable to use this connector, as it is much easier to make reliable connections.

If connecting to a 10pin ARM header is required, connect VTRef to a 3.3 V source on the board and connect TDIS and GND to a ground on the board to minimize the number of wires connected to the 10pin header. Pin connections for the 10pin ARM header are:

Pin 2 – TMS

Pin 4 – TCK

Pin 6 – TDO

Pin 8 – TDI

Q: Does the XDS560 emulator support Stellaris devices?

A: No, the XDS560 supports higher performance devices.  Stellaris devices are lower-end stand-alone microcontrollers for deeply embedded applications.

Q:  I want to connect the XDS100 emulator to the LM4F232 evaluation board.  What is the best way to make the connection?

A:  On the LM4F232 evaluation board, there are 4 breakout headers next to the J1:10-pin ARM JTAG header.  Solder 4 header pins to TDI, TDO, TCK, and TMS and connect the signals to 14-pin TI JTAG header.  Connect TDIS to a GND pin and VTRef to a 3.3V pin on the LM4F232 evaluation board.

 

  • you mentioned "with the exception of the EK-LM3S811 kit".  Is this a problem with that evaluation board?  Or is it a problem with that family of devices?

    I am intending to use an LM3S628 in an upcoming project, and we would like to use our existing emulators (XDS100, and a blackhawk LAN560).  Will this be possible for the 628 device we are using?  or will we have to purchase new emulators?

    Also, the evaluation board documentation states that the evaluation board itself can be used as a JTAG emulator.  Is this supported in CCS v5?

  • Shawn,

    The issue with supporting a X00 class device is internal to the Firmware of the XDS100.  It basically searches for the wrong ID, and then does not recognize the X00 devices.  I have pressed the SDO group for a fix.  I will forward your message to see what the plans are for providing a solution.

    Lela

  • Hi Lela,

    Do you know how to connect the 20-pin XDS100v2 to a 20-pin ARM adapter?

    I bought a 20-pin XDS100v2 emulator (Blackhawk USB100v2 JTAG Emulator), I want to connect it to a Stellaris Intelligent Display Module  (IDE-SBC RDK) through a MDL-ADA2 10-pin to 20-pin adapter module.

    Because the 20-pin connector on XDS 100v2 is not the same as connector on MDL-ADA2. It is impossible to connect directly.

    Do you have the pin configuration of the 20-pin XDS100v2?

    Thank you

  • XDS100V2 for ARM is now available.  This version of the 'emulator' (Debug Interface) includes both ARM 10-pin (fine pitch) and ARM 20-pin (0.1" pitch) target cables.  No additional wiring is needed.  XDS100 provides a debug/programming solution for Code Composer Studio.

    Order TMDSEMU100V2U-ARM from the TI eStore.  

  • Hello,

     

    Will the TMDSEMU100V2U-ARM  emulator work for the Stellaris chip that is on the DK-LM4F-DRV8312 eval board. The Stellaris chip is

    a preproduction part LX4F231H5QRFIGA3 for what would be the LM4F211H5QR

     

    Thank you,

     

    Curtis

     

  • Hi Curtis,

    Technically the TMDSEMU100V2U-ARM  will work with the LX4F231H5QRFIGA3 MCU device, but on a practical level, the DK-LM4F-DRV8312 kit has no connector for external JTAG signals.  The DIMM-form-factor ControlCard that has the LX4F231H5QRFIGA3 on it, also contains a built Stellaris ICDI JTAG interface.  Just connect a USB cable and you'll have full debug capabilities.  In fact it's a faster interface than the TMDSEMU100V2U-ARM.

  • Hello Jonathan,

     

    Thank you for your input. I realize that the DIMM card is using the IDCI chip through the USB and it works well for this eval kit, however, in a design application using the Stellaris chip and DRV chip, the ICDI is not available for us to use as a part for debugging purposes, so in a board I designed, we put in a JTAG interface to program and debug the LX4F231H5QRFIGA3 with the hopes of getting the right emulator. I purchased the TMDSEMU100V2U-ARM and got it this week. Just waiting on the Stellaris chip itself and we will be ready to test this out. If you or anyone has any words of wisdom with its use, it would be greatly appreciated. Otherwise, I will post my findings and progress as well.

    Thank you,

     

  • Hi Curtis,

    Can I use TMDSEMU100V2U-ARM JTAG EMULATOR, 20/10PIN, XDS100

    for  RDK-IDM-L35 - Stellaris?

     

    The best regards.

    Andrzej M.

  • Hi Jonathan,

    Can I use TMDSEMU100V2U-ARM JTAG EMULATOR, 20/10PIN, XDS100

    for RDK-IDM-L35 - Stellaris ( LM3S1958 Evaluation Board)?

    Can I use additional board 10/20 pin ( with reset buton send with RDK-IDM-L35 board) or only 10 pin from XDS100 to  RDK-IDM-L35 - Stellaris  board?

    The best regards.

    Andrzej M.

  • Hi Jonathan,

    Can I use TMDSEMU100V2U-ARM JTAG EMULATOR, 20/10PIN, XDS100

    for RDK-IDM-L35 - Stellaris ( LM3S1958 Evaluation Board)?

    Can I use additional board 10/20 pin ( with reset buton send with RDK-IDM-L35 board) or only 10 pin from XDS100 to  RDK-IDM-L35 - Stellaris  board?

    The best regards.

    Andrzej M.

  • Thought I would add the following post to the mix, as it covers of a lot of the points and issues, especially if you want to use an emulator with your launchpad for testing purposes - http://e2e.ti.com/support/microcontrollers/tiva_arm/f/908/t/314189.aspx

    Glenn

  • I use TMDSEMU100V2U-ARM JTAG EMULATOR, 20/10PIN, XDS100

    for RDK-IDM-L35 - Stellaris without the additional board 10/20 pin ( with reset buton

    send with RDK-IDM-L35 board).

    It works good with CCS v5, but it do not want works with Keil uVision4 program.

    where there is only ICDI Interface.

    The best regards.

    Andrzej M.

  • Just out of curiosity.....

    XDS100V3 costs over $120 (http://www.spectrumdigital.com/product_info.php?products_id=251), but a cheap launchpad is only $20, why not just get the JTAG signals from the launchpad (you may need to sacrifice the target micro on the launchpad), and make a poor-guy's alternative and save over $100?

    :)

  • The XDS100v2 is available for only $79 from the TI eStore - https://estore.ti.com/TMDSEMU100v2U-ARM-XDS100v2-JTAG-Emulator-20pin-10pin-ARM-connectors-P2960.aspx

    And your suggestion for using the LaunchPad is explained here (Debug Out) - http://processors.wiki.ti.com/index.php/Stellaris_LM4F120_LaunchPad_Debug_How_To

    Glenn

  • Since the suggestion for using the LaunchPad was via LM4F120, I am adding some info regarding TiVa1294 launchpad


    To use TiVa1294 LaunchPad as JTAG device, refer to the app note listed above, with the following modification.


    Instead of "Remove the power jumper located just below the green power present indicator LED." (under DEBUG OUT section), remove the jumper on JP2

    The jumper just below the green power present indicator LED turns off ALL 3.3V power for the launchpad so it would not work.

  • Readers should note the "incorrect usage" of the term "Emulator" which titles this thread.

    NO Emulation is being performed - real (not emulated) JTAG signals are being developed & transmitted/received by the described device.

    A proper description of vendor's device would be JTAG Pod or JTAG Probe.

    Words - just as semicolons - have meaning!   Such incorrect word usage should NOT be encouraged and/or promoted!