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.

LAUNCHXL-CC2650: Code Composer Studio forum

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

Tool/software:

IcePick_C: Error connecting to the target: (Error -241 @ 0x0) A router subpath could not be accessed. A security error has probably occurred. Make sure your device is unlocked. (Emulation package 20.0.0.3178) 

when i am trying to flash the program i am getting this error can u help me how to solve this.

  • Hi Ippili,

    Try to Mass Erase the device using Uniflash or Flash Programmer 2, then ensure that you JTAG connections are short, firm, and correct.  Are you using a default TI LaunchPad and have any modifications been made to the hardware or example software before programming?  Have you been able to program this specific unit in the past?

    Regards,
    Ryan

  • Hi Ryan,

    i have done mass erase using uniflash but still device is in lock state. 

    I am using cc2650 TI launch pad

    I was able to program before what happen i wanted to store my 128kb bin at 0x00003000 address but when i did by uniflash from then my device got locked can you have any solution for these.

    I tried with different TI CC2650 Launch pad same bin(128kb) at address 0x00000000 address even the next device got locked 

    When i am trying to flash from ccs its throwing an error and i am unable to flash the code.

    Can you help me to unlock the device.

    Thanks in advance,

    Navya

  • Hi Navya,

    Have you used this same binary image before without any issues?  128 kB is the entire flash area of the CC2650 so if you start at address 0x3000 then the tail end of your image is going past the end of flash and the CCFG, which is located in the last flash page, is likely being unintentionally written with incorrect values.  This includes the CCFG_TAP_DAP_* registers allowing JTAG access and ERASE_CONF to disable flash erase.  Disabling these features is beneficial when products are being configured for final production, but in your instance this will lock the device from being further accessible (i.e. bricked).

    I recommend that you review your project and CCFG settings so that the next binary image produced contains a valid CCFG and does not lock the device.  It is concerning that loading the binary at address 0x00 caused the same issue, thus something is incorrect at the tail end of the binary image to cause this behavior.

    Regards,
    Ryan

  • #include "board.h"

    #ifndef SET_CCFG_BL_CONFIG_BOOTLOADER_ENABLE
    //#define SET_CCFG_BL_CONFIG_BOOTLOADER_ENABLE 0x00 // Disable ROM boot loader
    #define SET_CCFG_BL_CONFIG_BOOTLOADER_ENABLE 0xC5 // Enable ROM boot loader
    #endif

    #ifndef SET_CCFG_BL_CONFIG_BL_LEVEL
    #define SET_CCFG_BL_CONFIG_BL_LEVEL 0x0 // Active low to open boot loader backdoor
    //#define SET_CCFG_BL_CONFIG_BL_LEVEL 0x1 // Active high to open boot loader backdoor
    #endif

    #ifndef SET_CCFG_BL_CONFIG_BL_PIN_NUMBER
    #define SET_CCFG_BL_CONFIG_BL_PIN_NUMBER 0x0D // DIO number for boot loader backdoor
    #endif i just changed this in ccfg.c file i have used simple_np_cc2650bp.app project in this main i just included IOCPortConfigureSet(IOID_6, IOC_PORT_GPIO,IOC_IOMODE_NORMAL);

    IOCPinTypeGpioOutput(IOID_6);
     while(1){
     GPIO_toggleDio(IOID_6);
    delay();

    }

  • You can try to access the device through the backdoor bootloader as a last effort, if you think it is enabled, but if this also fails then it further edifies that the CCFG is flawed.

    Regards,
    Ryan