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.

JTAG (TDO) not Working in custom board

Other Parts Discussed in Thread: TM4C1236H6PM

Hello. 

We have an issue with our custom board using a TM4C1236HPM, since we cannot connect to it via JTAG (XDS100v2).

We have followed some design guidelines suggested as:

- The JTAG pins are only used for JTAG

- All the pins TCK, TMS, TDI and TDO include 10k pull-ups resistors

With the scope we see that TCK and TMS are working as expected, but TDI gets no change and TDO pin of the Tiva chip is fixed at 0.9v level (??), even at booting with nothing connected to the port.

We checked with the tester and there are no shortcuts in this pin and it happens on two different boards.

- After not working we connected the JTAG device works perfectly with a Tiva launchpad board (with the debug-in configuration). So that is discarded.

- Then we tried to use a Stellaris/Tiva board as debug out with no luck. So the issue must be with the TM4C ic.

Our connections for JTAG are:

The rest of peripherals are working as expected and we were able to load our programs via UART bootloader with no issues.

Is there any register we need to change to make JTAG work?

Is JTAG disabled as default in production units?

Any hint about how to face this?


Thank you

  • No connection between your JTAG probe and MCU Reset reveals w/in that 14 pin header.

    JTAG should be alive/well upon MCU wake-up - executing code must subsequently cause, "JTAG pin repurpose."

    Should not your JTAG header implementation closely model that used on your vendor supplied boards?  Does it?

    Your report of TDO @ ~0.9V is troubling.  Is that a scope measure?  (not DVM)  Such may indicate an MCU power issue or some unwanted signal path/intrusion upon that pin...

    Update: 10:17 CST - dawns that TDO may not be, "in play" should your probe and IDE be set for SWD mode...  (belief here is that CCS has not yet advanced to that more modern & pin-saving capability - leave for you to judge...)

  • Thank you Cb1.

    Sorry for the delay, a lot of work this week.

    cb1_mobile said:
    Your report of TDO @ ~0.9V is troubling.  Is that a scope measure?  (not DVM)  Such may indicate an MCU power issue or some unwanted signal path/intrusion upon that pin...

    Yes, that is a scope measure. And the TM4C1236H6PM TDO pin is direct to the external pin, there is only the pull up, which is working.



    I have found that using a Stellaris/Tiva Launchpad as a debug out device, I was able to unlock the board using LM Flashprogrammer.

    However, now I can use JTAG via this Stellaris board, but it throws an error when using an Spectrum Digital XDS100v2 JTAG device.

    This XDS100v2 is working fine with other devices, i.e. using a Tiva board in debug in mode!!!

    That is a strange behaviour.

    Any idea??

    Thank you.

  • XDS100vs is working properly now. The issue was the TDIS pin was not connected to ground.

    However, we need to unlock the chips before we can use JTAG. We got them from a US distributor (which is related to Mice). Is this the regular state of the ICs?

  • cb1_mobile said:
    may indicate an MCU power issue...closely model that used on your vendor supplied boards

    PAk SY: " The issue was the TDIS pin was not connected to ground."

    Appears the initial diagnosis (while uncredited) proved correct.

  • cb1_mobile said:

    may indicate an MCU power issue...closely model that used on your vendor supplied boards

    PAk SY: " The issue was the TDIS pin was not connected to ground."

    Appears the initial diagnosis (while uncredited) proved correct.

    [/quote]

    That is Ok, however I still don't understand why I had to unlock the device to make JTAG work...

  • PAk SY said:
    I still don't understand why I had to unlock the device to make JTAG work...

    Nor does our group mon ami...  Strange/troubling that - but such issue is pointedly "outside" your Title/Subject, "TDO Not Working in custom board!"  And - incorrect execution - your early board (as posited here) proved verifiably correct.

    Despite "V hostage holding" - should not contact w/selling disty be your first/forceful action?  As you know - our group uses multiple ARM MCUs (M0, M3, M4, 7) and have never noted such JTAG misfortune.  (includes > 2K devices - this vendor's M3/M4)

    Now - why would a disty, "do anything" to raw parts?  (and, for free) 

    Would not hundreds here "squawk" - when their devices behave as you describe?  Yes there are many reports of "lock out" - but far & away -  these result from improper programming/handling/practice. 

    Might your custom board include some "pin treatment" which forces the MCU into a "special" mode?  (thus "breaking" normal/customary JTAG behavior) (i.e. forced into bootloader - which you do not employ...)

    Worse still - as you have confirmed circuit miscue - might that mistake have forced this plight upon all of the devices you've examined?  (your reports here are unclear as to the continuation of this JTAG-down issue - subsequent to your boards having corrected "this" issue)

  • cb1_mobile said:

    Worse still - as you have confirmed circuit miscue - might that mistake have forced this plight upon all of the devices you've examined?  (your reports here are unclear as to the continuation of this JTAG-down issue - subsequent to your boards having corrected "this" issue)

    You just made Bingo!! A new batch of boards, correct JTAG connection, no issues.

    Thank you again.

  • So do you have a Tiva launchpad programming a target board using JTAG?  I"m trying to get this configuration to work with a custom board and am having no luck getting code composer to recognize the Tiva ARM on my board.  What is the TDIS pin for?  Is it required?  My configuration is only TDI, TDO, TCK, TMS and ground.  My board seems to power up ok and the VCC pins have 3.3V on them as expected.  I have 0.1 decoupling caps for every VCC pin and the VDDC is connected to a 4.7uF cap to ground.  I basically just put a header on the launchpad and tied the JTAG signals into a connector on my custom board and connected their grounds.  Did you do anything more than this?

    Thanks

  • TDIS to ground is required on the JTAG chain to work. 

    Connect everything as the schematic in the first post. 

  • Ok. Well the only problem for me is that I already laid out my boards and built them up (proto-types).  I've got a post about htis @ http://e2e.ti.com/support/microcontrollers/tiva_arm/f/908/t/309726.aspx

    but it isn't really getting much action.  Do you see a problem with doing a 1 to 1 connection from the JTAG pins on the launchpad to my target's JTAG pins?  I don't have that header you mentioned above, but I do have the signals connected and a common ground. 

  • Robbie Valentine said:

    Ok. Well the only problem for me is that I already laid out my boards and built them up (proto-types).  I've got a post about htis @ http://e2e.ti.com/support/microcontrollers/tiva_arm/f/908/t/309726.aspx

    but it isn't really getting much action. 

    Quite common in this forum lastly, many information requested, few guys explaining. I fell your pain.

    Robbie Valentine said:
    Do you see a problem with doing a 1 to 1 connection from the JTAG pins on the launchpad to my target's JTAG pins?  I don't have that header you mentioned above, but I do have the signals connected and a common ground. 

    You may explained yourself better in the future, from your other post, is seems that you are using a Stellaris/Tiva board as JTAG.

    I was using an XDS100v2 to JTAG.

    In your case, TDIS is not present, and you have to make the connections described here as Debug out:

    http://processors.wiki.ti.com/index.php/Stellaris_LM4F120_LaunchPad_Debug_How_To

    Try to unlock your device with LMflash (probably got blocked as it happenend to me).

    Good luck!!

  • Pak,

    The parts should be shipping unlocked from the factory.  If you are receiving parts that are locked, please RMA them to us (before you unlock them) so that we can check them out.

    Regards,

    Sue

  • Sue Cozart said:

    Pak,

    The parts should be shipping unlocked from the factory.  If you are receiving parts that are locked, please RMA them to us (before you unlock them) so that we can check them out.

    Regards,

    Sue

    Thank you Sue, but that was already answered:

    PAk benef said:

    Worse still - as you have confirmed circuit miscue - might that mistake have forced this plight upon all of the devices you've examined?  (your reports here are unclear as to the continuation of this JTAG-down issue - subsequent to your boards having corrected "this" issue)

    You just made Bingo!! A new batch of boards, correct JTAG connection, no issues.

    Thank you again.

    [/quote]

    The suggestion was made to discard similar behaviors (if existed).

  • Hi Pak,

    Discarding the parts does not help us figure out why parts are leaving the factory locked.  They should not be, so if they are arriving in your hands locked, we'd like to get a look at them to figure out why.

    Regards,

    Sue

  • @ Sue,

    This post has taken several turns - no parts were discarded - we've bumped against, "native/non-native English."

    I discovered an implementation issue w/this poster - alerted him - and issue was solved.  Further - our group has run in excess of 15K "LMI/TI M3s & TI M4s" not a one arrived, "locked!"  And - I relayed this finding to poster - who then dug deeper - resolved his issue! 

    Your devices have past arrived - and continue now - "to arrive in proper condition!"

    Trust this clarifies/comforts - always my objective...

  • Hi all,

    I am facing a basic issue of JTAG.I am not able to program my custom made  XM4C1294NCPDT via JTAG.I also have DK-TM4c129X development board and LM3748 usb eveluation board.Is there any means by which I can program my custom made TIVA board via JTAG.

    My custom board has TMS.TC,TDO,TDI connectedd to the controller.

    The above mentioned development boards can be programmed via USB.I am stuck in such subtle problems.Please reply ASAP.

    Regards and Thanks,
    Dhanush

  • Hey Dhanush,

    What capacitance values are tied to your VDDC pins?  They are very specific and must be within range.  I think the range is something like 1-4uF.  I know for the parts I've used you can't go over 4uF.  I've used 4.4uF caps here and have had issues with programming.  I would also try programming it with a launch pad to make sure it isn't your programmer. 


    The cap values you need on the VDDC pins should be in your part specific data sheet.  I would check there.  I would also check and make sure that your VDDC pins are at 1.2V or whatever the data sheet specifies they should be at for your specific part.

    Rob