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.

CC2640: Production Programmer - Launchpad XDS110? Control with custom programs?

Part Number: CC2640

Hello,

Are there any issues using XDS110 (i.e. Launchpad with debug out) to program production devices using Flash Programmer 2?  Can we write our own software to program using the XDS110 (i.e. is this supported / are there libraries or open source tools)?

We have started out this way for low volume production but I would like programmatic control, in particular the ability to log output from the programming process and include some diagnostics / troubleshooting etc.

Thanks,

--Allen

  • Hi Allen,

    Flash Programmer 2 includes a command line interface version. I guess this should work for your purposes.

    Cheers,
    Fredrik
  • Thanks Fredrik, that does help. I will plan to use this method.
  • Frederik,

    I thought I could probably get past this issue using the command line options, but it appears I cannot. The issue is that after I program my boards, and they are reset by Flash Programmer 2, they run fine BUT cannot perform self-resets. If you execute a software reset or even trigger a watchdog reset, the device is rendered inoperable until you perform a pin reset (or re-program). This makes me think that it is still configured for debug access even though the programmer presumably executed a pin reset. Possibly this is because even though FP2 does a pin reset, it still has the cjtag pins pulled high or low (I don't know which) and so the CC2640 starts in debug mode?

    I am using the latest version of Flash Programmer 2.

    Is this a known issue? Is there any way around it? For instance a programmatic method to ONLY execute a reset on the NRESET pin via the XDS110 without using any of the jtag pins?
  • Also note I have tried all of the reset options with the CLI and none allow the unit to boot into normal mode (per my observations of inability to self-reset).
  • This could be the Halt-In-Boot (HIB) issue which can be addressed with an updated XDS Emulation Pack.

    Please see the "Device Does not restart after successful OAD" section of the OAD Errata wiki page: processors.wiki.ti.com/.../CC2640_OAD_User's_Guide for patching instructions.

    Best wishes
  • Thanks JXS, that does help.

    Using the xds110reset utility, I'm able to perform a pin reset into normal operating mode. When using Flash Programmer 2, I checked the TCK / TMS lines and they were dropping for the reset toggle as in the left image on that page, which is where the problem lies. I should note I was using the latest emulation package, so I am not sure I agree with the statement "There is a bug with the emulation tools packages that predate the 7.0.48.0 release." It seems like there is a bug in Flash Programmer 2 - it should use the same reset that the xds110reset utility does. Also, if possible I recommend duplicating that information in a page that is not about OAD, since the issue is not actually an OAD issue fundamentally. But please take these comments in the spirit of continuous improvement. I'm happy to have a solution to this issue now.

    Best,
    --Allen
  • Perhaps this issue is solved with the emulation package. I have only ever installed package 7.0.100.1 on the computer I was testing with so I assumed FP2 would be "using" it; however I did not copy anything into the FP2 directory. The wiki page you gave says "Copy the contents of the emupack installer to <fp2_install_dir>/config/xds/*" -- However I am unclear what the contents of the emupack installer are, since it installs quite a number of files and directories. Could you help clarify?