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/LAUNCHXL-CC2640R2: CCS can't load program after changing XDS110 serial number and then restoring original serial number

Part Number: LAUNCHXL-CC2640R2
Other Parts Discussed in Thread: UNIFLASH, LAUNCHXL-CC26X2R1

Tool/software: Code Composer Studio

CCS 9.1.0 can't load program after resetting serial number using xdsdfu and then restoring serial number

I reset the entire 8 character serial number on a LAUNCHXL-CC2640R2 using xdsdfu distributed with CCS 9.1.0.

This caused program loading to fail in CCS.

I then reset the serial number back to the original number.

This did not resolve the problem

I then reloaded the firmware and boot loader using xdsdfu.

This did not resolve the problem.

I can load the program with UniFlash version 5.0.0.2289.

Using CCS version 9.1.0.00010 I can debug the program loaded with UniFlash, by selecting Load symbols only in the debug configuration but if I try to load the program with CCS it fails with the following message.

Cortex_M3_0: GEL Output: Memory Map Initialization Complete.
Cortex_M3_0: GEL Output: Board Reset Complete.
Cortex_M3_0: Command=20 -- addr=0x00001000 -- length=0x00001000
Cortex_M3_0: File Loader: Memory write failed: Timed out waiting for target flashloader to execute command.
Cortex_M3_0: GEL: File: C:\Users\Robert\TiFisheye\ccs8\Test\simple_peripheral_cc2640r2lp_app\FlashROM_StackLibrary\simple_peripheral_cc2640r2lp_app.out: Load failed.


If I erase the entire flash with UniFlash I can load the program with CCS once. If I try to load the program again in CCS it fails with the same message as above.

This is annoying since UniFlash 5.0.0.2289 and CCS 5.0.0.2289 use different emulation packages for the debug probe and have to be updated each program load cycle.

-Steve

  • Steve,

    That is quite an unusual behaviour; I couldn't yet reproduce this here but I will work on additional details tomorrow. I will report back my findings. 

    Regards,

    Rafael

  • Thanks Rafael.

    This has also happened to me with the LAUNCHXL-CC26X2R1, in fact that is how I discovered it. I took the  LAUNCHXL-CC26X2R1 out of the box, and thought it would be nice to give it a memorable serial number. I used xdsdfu -s  to change the serial number. I programmed the LAUNCHXL-CC26X2R1 once in CCS 9.1.0 and then started having problems. Only after doing this did I read XDS110SupportReadMe.pdf, which warns when setting the entire serial number  "But note that certain tools require a board prefix to properly identify the target board. If you overwrite the board prefix, these tools will fail to operate correctly." So, I restore the serial number to the orignal one, but that didn't resolve the problem. So, I've been able to reproduce the problem once. I don't want to try to reproduce the problem again with another board, since it leaves the LAUNCHXL in a bad state.

    Regards,

    Steve

  • Rafael,

    I have found that I can consistently  program the LAUNCHXL  using CCS 7.4.0.00015 which uses  Emulation package 7.0.100.1 

    When I use CCS 9.1 I can sometimes ( it seems random) load if I change the JTAG TCLK frequency, but not necessarily to a lower frequency. 

    Best regards,

    Steve

  • Hi Rafael,

    I did a little more experimentation and found that I could program the boards using  CCS 9.0.1.00004  and setting the JTAG TCLK frequency to 5.5MHz.  Setting the JTAG TCLK frequency in CCS 9.1.0.00010 doesn't work. Maybe CCS 9.1.0 doesn't  always use the frequency specified in the Target configuration?  And maybe the issue with the serial number was a red herring, since this did happen with the LAUNCHXL right out of the box which is like the problem reported in another thread.

    Best regards,

    Steve

  • Steve,

    Thanks for reporting back the additional findings. I did some testing here and have some comments:

    - The warning mentioned by you regarding the serial number only affects the auto-detection mechanism of the Launchpads released in the past two years. This mechanism is described in this video. There is no other functional impairment when setting a different serial number. 

    - Both versions of CCS use different versions of the TI Emulators component, but it seems that you updated your copy of CCSv9.0.1 to the latest. This is described in this sticky e2e post and the workaround there may help you: simply reduce the speed to the previous default of 2.5MHz.  

    - When this increased default TCLK speed was released to the general public with the advent of CCSv9.1.0, it seems to have affected the LAUNCHXL-CC2640R2 more critically, despite the test team did not find any issues in the internal tests prior to the release. I filed a bug report to propose a new default of 5.5MHz or less.  

    - I found out that the firmware dance between Uniflash and CCSv9.1.0 can be solved by installing Uniflash 5.1.0 (released in July 29th). This is one less thing to worry. 

    Hope this helps,

    Rafael