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.

CCS/LAUNCHXL2-RM57L: Attempts to use Spectrum Digital XDS560v2 Traveler with Hercules

Part Number: LAUNCHXL2-RM57L

Tool/software: Code Composer Studio

We are trying to verify operation of a Spectrum Digital XDS560v2 Traveler with the Hercules processor using the Launchpad board.

No matter what we try, we always see errors like this:

CortexR5: GEL Output:     Memory Map Setup for Flash @ Address 0x0CortexR5: Error initializing flash programming: Reset Emulator error. The requested reset was aborted.
CortexR5: Loader: One or more sections of your program falls into a memory region that is not writable.  These regions will not actually be written to the target.  Check your linker configuration and/or memory map.
CortexR5: File Loader: Verification failed: Values at address 0x000047C1 do not match Please verify target memory and memory map.
CortexR5: GEL: File: Firmware.out: a data verification error occurred, file load failed.

The on board XDS110 works fine.
The XDS560v2 works fine with other boards/CPUs (eg TM4C129, OMAPL137).

The XDS560v2 is apparently good at the Target Configuration generation stage - "Test connection" works as expected.

The "Reset the target on a connect" option makes no difference. 

Suggestions / advice greatly appreciated

  • Hello Ian,

    I am checking with our CCS team to see what might cause this behavior given you are able to run the test connection without issue but then see the associated errors mentioned. The errors are essentially from the GEL file not loading so CCS has a wrong memory map, but the question is why the GEL file is not loading. I'll get back with you on this tomorrow.
  • No matter what we try, we always see errors like this:

    CortexR5: GEL Output:     Memory Map Setup for Flash @ Address 0x0CortexR5: Error initializing flash programming: Reset Emulator error. The requested reset was aborted.Under the debug Project Properties what are the Erase Options set to?

    The reason for asking is that on a different device, CCS 7.1 is reporting a "The requested reset was aborted" error when the Erase Options were set to "Necessary Sectors Only" - see CCS/CCSTUDIO: CCS v7 program load fails if selecting erase necessary pages only

    Also, what is the full version number of CCS which shows the problem?

  • Thank you for the response, Chester.

    We're using CCS 6.2 and we did have "Entire flash" selected.    No issues with these settings with the built-in XDS110, only the XDS560 has an issue

    I've now got hold of an external XDS100 that I'll try and use next week to see if it's a general issue with the external debug connector.  I've also got a second RM57L board to check that it's not a fault on our specific board.

    But it's still confusing why the JTAG check thinks everything is ok -- the hardware must be ok, right?

  • Ian Jeffray41416 said:
    But it's still confusing why the JTAG check thinks everything is ok -- the hardware must be ok, right?

    The JTAG Test Connection checks that the JTAG interface on the device can circulate bits around the scan chain, which shows that the lowest level hardware is working.

    The errors you are seeing occur when CCS tries to program the flash.

    Ian Jeffray41416 said:
    No issues with these settings with the built-in XDS110, only the XDS560 has an issue

    The XDS560 and XDS110 use different drivers in the CCS debug stack, so you might be encountering a CCS bug which shows up with the combination of using a  Spectrum Digital XDS560v2 Traveler with a Hercules device.

    If you could enable Debug Server Logging and post the log for a failure, that may help to identify the cause of the problem.

  • Hi Chester,

    I'm tying myself in knots here I think.

    First up, I tried an old (but known-working) XDS100v2 with the Hercules board and I'm getting exactly the same issues as with the XDS560v2.

    I tried to enable debug logging, but I see this:

    js:> eval("DEBUG_LogRedirect(\"c:/ti/ds.log\")")
    Unable to perform operation, no active debug session.
     (C:\TI\ccsv6\eclipse\configuration\org.eclipse.osgi\358\0\.cp\resources\debugserver\assert.js#7)
    

    However, If I then restart the (failed) debug session, I do get 15000+ lines of debug log... none of which mean very much to me.  I searched for "failed" in here and found these lines several times, which may or may not be relevant:

    0x000013D8 166523 3  XPCOM C: ( (dsIConnectDisconnectEvents*)5456C86C )->onConnectFailed( 4A75F3EC )
    0x000013D8 166523 3  XPCOM R: ( (dsIConnectDisconnectEvents*)5456C86C )->onConnectFailed( *4A75F3EC = 547266D8 ) = 0x00000000

    I fear I must be doing something wrong in the generation of the target configuration or debug settings, but I've never had this amount of hassle with other TI parts.

    Further input would be very gratefully received.

  • I'm not 100% clear what I originally did wrong to set up the debug session, but going back to the XDS560v2 after trying to get the XDS100v2 to work, I noticed that the debug session was set to ICEPICK rather than CortexR5 as the "Device" in the Debug configuration Target. Changing this to the Cortex (as per your screenshot above) and setting up "Connect to the target on debugger startup" and everything now works perfectly fine for XDS560 and XDS100.

    Thanks for your help, apologies for my finger trouble, but perhaps this thread may help anyone else hitting the same issue.