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.

CC2510 Load program problem

Other Parts Discussed in Thread: CC2510

Hi,

 

 

We have designed an application circuit that uses CC2510 MCU. When we tried to download a program using IAR software and SmartRF04EB board into the MCU, we have an error:

 

This device has been locked for debugging. To enable debugging and continue with download, the device need to be erased.When we tried to erase the flash using IAR, it fails to erase flash.

 

Thank you for your help.

  • I don't have a solution, but this is what i did when I encountered that problem.

    1) Make sure that I have no other devices, including any ground connections (from Scope probes etc) connected to the the SmartRF04EB or to your target board.

    2) Iconize all other programs other than the IAR tool, and don't move the mouse while programming is in progress. Having a large amount of memory on your system may also help.

    By taking these precautions, I went from a couple of CPUs a week to less than one per month.

    Once a CPU gets into the locked state, you may a well say bye bye to it.

  •  

    What verison of IAR EW8051 are you using, Kickstart, Evalution or full version (7.51A)?

    What is your connection? Are you using your target board connect via SmartRF04EB, P14?

    What are your settings in [Projects] ->[Options] -> [Debugger] ->[Texas Instrument]?

    LPRF Rocks the World

  • IAR EW8051 7.30B, USB Dongle license + SmartRF04EB + SoC Debug plugin 1.0 + 15cm Ribbon Cable to Target.

    Settings are as follows:

    If you have any settings suggestions I would be happy to hear from you. (I must keep the Last page of flash (..F32 device) intact as it holds ID settings etc)

    If there is a way to resurrect a "dead" locked chip, please tell me. 

    Thanks. Karel.

  •  Since you are using the SOC Debug (P14)  you can not have a pull up resistor on your board  due to an issue with the ST237 bi-directional level translator on the SmartRF04. A pull up will prevent /reset from going low thus you will not see proper signals on DD or DC. Also toggling /reset is key to getting the flash into a write mode. Remove the pull up resistor and cap from your board and it should work provided IAR is set up correctly

    Ti has two alternatives to removing the pull-up and cap now. First is  a debug header that plugs into the P1/P2 connector on the SmartRF04 circumventing the ST237 that they supply to SmartRF04 owners. I have not tried this. The second one is a recent release. It is a small debug module that can be seen at: http://focus.ti.com/docs/toolsw/folders/print/cc-debugger.html I have several and think  it is great.

     With the right interface unlocking the device will not be a problem.

     Here is the screen that I believe LPRF was looking for:

     

  • Mr Stewart. Thank you for your input, which would be useful to those who are currently connecting directly to P14 of the SmartRF04EB.

    As I stated, although briefly, I am using the "SoC Debug Plugin 1.0" on the P1/P2 connector, and have done so since day 1. The issues are

    a) once you get the "Locked for Debugging", sometimes you can escape by toggling the target power only, but usually this does not work.

    b) When you have a target device which has gotten into the "Locked for Debugging" mode(a "locked board"), connect it to the SmartRF04EB, power the target device then go to power the SmartRF04EB, the SmartRF04EB will fail to detect the target.

    In the event that you do have a "locked board", you can program a good target board, power it down and disconnect it from the SmartRF04EB which you leave powered up. If you then connect the "locked board" and power it up, you can sometimes program it; This is basically the same as a) above.

    The fact that I have programmed various boards over the periods longer than a year, and then have them become a "locked board" never to be programmable again, is indicative of a locked state inside the chip, rather than a component value slowly changing over time to the point where the debugger interface can no longer function.

    Regardless of how the chip gets into this state ( static discharge, "ground loop" from an oscilloscope probe, buggy driver interface code, ... ) what really is needed is a method to get it out of this state.

    I am hoping that maybe an upgrade to 7.51A will do wonders.

    Karel

  • Have you tried using the Ti Flash Programmer software ?  I actually write a xxx.hex to a file in IAR and then use Flash Programmer to write the file to the CC2510 and other CCxxxx SOC devices. This seems to free locked devices better than IAR

    Flash memory has a finite number of writes that range from 1000 or so for the Chipcon parts to 20,000+ for some memory sticks.  If you have used the same devices for a couple of years they may be at end of life in which case there is no recovery.

  • Karel:

    Here are three suggestions:

    Suggestion #1:
    Looking at your settings you should selected [Verify download] -> [CRC-16]. Except from that things are looking ok. However IAR EW8051 7.51A does not have the Cache program code option. Turn this off.

    Suggestion #2:
    In addition you might check the firmware revision of your SmartRF04EB board. This can be done using our SmartRF Flash programmer.Connect your SmartRF Studio board to the PC and start programmer, and look for the EB Firmware rev in the dialog window. I believe the latest firmware revision is 008.

    Suggestion #3:
    Another thing would be to download our CC2510 IAR Sample code and verify your project settings with the CC2510 per test project:

    CC1110/CC2510 Example Software Supported on IAR Embedded Workbench (Rev. B) :
    http://www.ti.com/litv/zip/swrc085b

    LPRF Rocks the World

     

  • Hello Everyone,

    I am having the same problem with my custom board. I am using CC2510. I also have the CC2510 Mini DK. The Debugger recognizes the Mini DK without any problem and I can download to it with ease too. But when I connected it to my custom board I got error (that is when it did recognize it, it usually doesnt) saying:

    This device has been locked for debugging. To enable debugging and continue with download, the device need to be erased.

    When I tried to erase the flash using IAR, it fails to erase flash.

    But now the probelm is changed and I get this error:

    IarIdePm: A fatal error has occured. The debugger will terminate.

    I am using: IAR Assembler for 8051 7.60.1 (7.60.1.40026) and have checked the settings to be as described above.

    I have checked all the connections of my custom board, they match as it is on the Mini DK.

    Please help!

    Fahad