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.

XDS100v3 and CC2538

Other Parts Discussed in Thread: CC2538, SEGGER

Hello,

I could not find a right forum to post this. This forum is the closest one. If you know a better forum to post it, please let me know.

I’m trying to download the code to TI CC2538 on our prototype board using IAR but was not able to make the emulator work.

Figure 1 in the attached file shows my setup. I’m trying to use the 2-pin JTAG mode of CC2538 which is only supported by XDS100v3. Only TMS, TCK, TVD, and GND are connected between CC2538 and XDS100v3.

Figure 2 shows that the driver for XDS100v3 is correctly installed.

Figure 3 shows my emulator selection in IAR is XDS100v3.

Figure 4 shows the error message when I tried to download the code.

Figure 5 shows the response of xds100serial utility, it sees the emulator. For some reason, IAR does not see the XDS100v3 emulator.

Figure 6 shows the version of my emulation package. If you know a newer version, please let me know. I could not find it on TI website.

Figure 7 shows my IAR version.

Do you see any problem with the setup? What are the other things I can try to identify the problem? Thanks for your help.

Chun

5078.XDS100V3_CC2538.pdf

 

 

  • Hi Chun,

    The CC2538, and the information (datsheet, user's guide, etc..) are not publicly available yet

    on TI's website therefore I think that only TI guys can help you with these issues, though I

    i'm curious about the answer to these question myself. :)

  • I don't know if it helps but I managed to get the CC2538 on our boards working with the SmartRF06 ( http://www.ti.com/lit/ug/swru321/swru321.pdf ) which includes an XDS100v3 emulator.

    However I connected all 10pins of the miniture ARM Cortex header. I have not managed to use a standard JTAG header though as the TDO line is always pulled high at reset as it is muxed with PB7 even though the datasheet says it starts as a full JTAG port. What the datasheet doesn't say is what to do to make it TDO rather than PB7.

    I can't be fussed with trying to reverse engineer what the XDS100v3 does differently than the standard ARM Cortex-M3 JTAG probe I have does. Another case of TI keeping their secrets to themselves. Come on TI, I know the CC2538 is prelim but at least get the datasheets sorted with all the info required! It's released next month I believe.

  • Hi Andy,

    Which standard JTAG probe are you using? CC2538 starts up by default in 2 pin cJTAG mode where only TCK and TMS is used. Not all JTAG probes support 2 pin cJTAG by default, but some probes have a script extension (e.g. Segger) which can be used to do a sequence on TMS that switches the device over to 4 pin Standard JTAG.

    The XDS100v3 emulator supports 2 pin cJTAG.

    Regards,

    Bjørn

  • Hi Bjørn

    Thanks for the fast reply. It is indeed a Segger JLink probe. You wouldn't happen to know what the sequence is please? Or a JLink script even?

    tia,

    --Andy

  • Hi Andy,

    Segger J-Link has support for CC2538. The sequence that switches CC2538 over to standard 4 pin JTAG is integrated into their latest driver versions. So no script is even necessary when using J-Link.

    Can you please explain the HW setup that you have? Are you connecting the J-Link to the SmartRF06EB, or to your own HW?

    Thanks,

    Bjørn

  • Hi Bjørn

    Thanks for that.

    I am using the SmartRF06 and isoloating the XDS100v3 by removing the links on P408. The SmartRF06 manual shows this arrangement on page 27. The JLink is then connected to P409.

    The JLink version I have is JLinkARM_V458a

    I just tried updating to JLinkARM_V466 from the Segger website but the Segger I am using is the OEM version on an Energy Micro DVK board and the newer V466 doesn't like this version so I guess I will have to wait until I get home this evening to try it on the genuine JLink modules I have there.

    Oddly enough, if you use the ExpDevList command to get a list of supported devices the CC2538 does appear in the list however the flash and ram sizes are all zero.

    regards,

    --Andy

  • HI Andy,

    This is correct. You need to remove all jumpers on the XDS bypass header (P408), and connect the J-link on the ARM J-TAG header. The EM VDD1 jumper must be mounted.

    Version 4.58A of the Segger drivers include this support so there should not be necessary to upgrade.

    What software are you using for the JTAG access and what kind of errors do you see? I tested the same HW setup now with IAR and Segger J-link and it is working.

    Regards,

    Bjørn

  • Hi Bjørn

    That's pretty much what I am doing. So I guess I have some questions. I am just trying to use the JLink.exe command line commander.

    The "EM VDD1" jumper you refer to. Is this P5 that selects between VDD_EB and DVVD_USB?

    I have tried two configurations. I have powered the SmartRF06 board via the USB cable and put the EM P5 link in so the power comes from the SmartRF06 board. I have also attempted to power the EM via the USB connector on the EM itself and switched the P5 to use USB power. It powered the board via it's regulator at 3.3v.

    It's not really clear to me exactly what should be powering the EM, the SmartRF06 board via the RF connectors or the USB+regulator on the EM itself.

    Below is what I get when I start JLnk.exe

    regards,

    --Andy


    SEGGER J-Link Commander V4.58a ('?' for help)
    Compiled Dec 5 2012 18:38:27
    DLL version V4.58a, compiled Dec 5 2012 18:38:08
    Hardware: V7.00
    S/N: xxxxxxxxxxxx
    Feature(s): GDB
    VTarget = 3.312V
    No devices found on JTAG chain. Trying to find device on SWD.
    No device found on SWD.
    Did not find any core.
    Failed to identify target. Trying again with slow (4 kHz) speed.
    No devices found on JTAG chain. Trying to find device on SWD.
    No device found on SWD.
    Did not find any core.
    J-Link>


  • btw, my problem maybe the JLink OEM I am using doesn't work with non-EFM micros which I can understand.

    When I tried this last night on a real Segger JLink probe (not an OEM one I am using at the moment) the error was different. The error was TDO line always high and reading 0xF regardless. That's why I wondered why it maybe the mux issue as the TDO line is muxed with GPIO PB6 (or is that PB7, cannot remember which it is now).

  • Hi Bjørn

    As you can see below a genuine Segger Jlink still has problems. As you can see, TDO is stuck high which is what lead me to conclude it's stuck in two wire mode and the TDO is still in fact PB7 as a pulled-up input. 

    So on the face of it the JLink doesn't appear to doing anything special which brings me back to the start up script that flips the two wire interface into a full legacy JTag interface.

    Any further ideas?

    regards,

    --Andy

    SEGGER J-Link Commander V4.66 ('?' for help)
    Compiled Mar 11 2013 11:01:06
    DLL version V4.66, compiled Mar 11 2013 11:00:46
    Firmware: J-Link ARM V8 compiled Nov 14 2012 22:34:52
    Hardware: V8.00
    S/N: 268003258
    OEM: SEGGER-EDU
    Feature(s): FlashBP, GDB
    VTarget = 3.313V
    Info: Could not measure total IR len. TDO is constant high.
    Info: Could not measure total IR len. TDO is constant high.
    No devices found on JTAG chain. Trying to find device on SWD.
    No device found on SWD.
    Did not find any core.
    Failed to identify target. Trying again with slow (4 kHz) speed.
    Info: Could not measure total IR len. TDO is constant high.
    Info: Could not measure total IR len. TDO is constant high.
    No devices found on JTAG chain. Trying to find device on SWD.
    No device found on SWD.
    Did not find any core.
    J-Link>

  • Hi Andy,

    Regarding the 'EM VDD1' jumper I referrering to.  Seems I have an older version of the board. On the new version this is 'VDD to EM'. This jumper must be mounted. You can power the EM via the USB on SmartRF06EB (not the USB on the EM itself).  Make sure the power switch is on, and the source switch is in position 'USB'. The XDS bypass jumpers should all be removed.

    Regarding Jlink.exe I do not know this software too well, but I think the problem might be that you have to specify device type because the initialization sequence is specific for CC2538. Please try the ExpDevList command in jlink.exe with a file name as argument. This prints to a file all supported devices and check that CC2538 is one of them. The you can try the command 'Device CC2538'. This will do the CC2538 specific connection sequence.

    I hope this helps.

    Bjørn

     

     

  • Hi Bjørn

    Thanks for your help so far. I did an ExpDevList and found all the CC2538 types supported and used it as the device command. And great, it worked :)

    However, the JLink DLL seems to think all the CC2538 type parts have zero flash (it gets the RAM correct). So I can't actually load the bin file. But I guess this is an issue for SEGGER to fix as the CC2538 is a new part not yet officially released.

    So I wil head over to Segger and see if anyone there knows anymore about the CC2538. It may well be that I have to wait for the official launch of the device by TI before Segger will get involved. Can't say I blame them for not fully supporting the part yet, I'll just have to wait.

    regards,

    --Andy

    J-Link>device CM2538SF53
    Info: Device "CM2538SF53" selected (0 KB flash, 32 KB RAM).
    Reconnecting to target...
    Info: TotalIRLen = 10, IRPrint = 0x0011
    Info: Found Cortex-M3 r2p0, Little endian.
    Info: TPIU fitted.
    Info: FPUnit: 6 code (BP) slots and 2 literal slots
    J-Link>

  • Hi Andy,

    direct flash programming via J-Link Commander / the J-Link DLL is not yet supported for the CC2538
    but planned for later this year.
    In order to be kept up-to-date about new features in the J-Link software (which also includes flash programming support for new devices),
    we recommend to subscribe to the J-Link software update notification list:
    http://www.segger.com/jlink-software.html

    Best regards
    Alex

  • Hi Alex

    Thanks for the info. I'll do just that :)

    regards,

    --Andy

  • Hi,

    For your info:

    Flash programming support has been added in V4.71b of the J-Link software
    which can be downloaded from our (SEGGER's) website:
    http://www.segger.com/jlink-software-beta-version.html


    Best regards
    Alex