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: Bootloader RESET question

Part Number: CC2640
Other Parts Discussed in Thread: CC2538

When I send a reset command to the CC2640 bootloader (0x25)  I just end up back in the bootloader....

Does that mean that you must disable the bootloader from the bootloader to get to the app?  

The Tech ref is confusing:

The COMMAND_RESET command tells the bootloader to perform a system reset. Use this command
after downloading a new flash image to the CC26x0 and CC13x0 devices to cause the new application to
start from a reset. The normal boot sequence occurs and the flash image runs as if from a hardware reset.

But then it says:  "Also, use this command to reset the bootloader"

So what is the deal here?   It seems like a poor idea to force disabling of the bootloader via programming to get to the app since that would require the app to be programmed with the bootloader disabled and you would have to rely on the the app reenabling it.  If it failed you could get stuck.

  • Hello Mark,
    Have you read the app note "CC2538/CC26xx Bootloader Interface (Rev. A)" section "2 ROM Bootloader". The bootloader only jump to the application if the image valid field is set in CCFG and if an backdoor pin is inactive. The ROM serial bootloader is mainly designed for production programming and not for field upgrades. Since the CC2538 and CC26xx ROM bootloaders support commands that can read the flash, it is possible to disable the bootloader entirely for security reasons, but it is up to you.

    For field upgrades please refer to the OAD documentation.

    You can find all part related app notes in resource explorer (http://dev.ti.com/tirex).
  •  

    "The ROM serial bootloader is mainly designed for production programming and not for field upgrades"

    SWCU117H  pg 563:

    "The ROM is preprogrammed with a serial bootloader (SPI or UART). For applications that require in-field
    programmability, the royalty-free bootloader acts as an application loader and supports in-field firmware
    updates. The bootloader either executes automatically if no valid image has been written to the flash, or
    the bootloader may be started through a configurable GPIO backdoor. The bootloader may not be called
    from application code."

  • Hello Mark,
    I apologize for my to quick assumption. For a wired connection the ROM BL is a viable option, but the correct settings must be set in CCFG to enable access (refer to CCFG Registers in the TRM and/or the CC2640 ccfg.c project file). To be able to enter the application the CCFG_IMAGE_VALID field must be cleared to 0x00000000.

    For some more details please review this thread as well:
    e2e.ti.com/.../1623557