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.

CC2650: SBL fail

Part Number: CC2650

Hi,

A customer found a little portion of CC2650 chips had a error when updating firmware via UART.

uart write flash script:cc26xx-bsl.py

cmd:cc26xx-bsl.py -p COMX -e -w -v FW.bin

FW:<OTA>bootloader + FW

1.He has total 1100 chips, and 26 of them got this error,the error message was: fail msg:ERROR: Timeout waiting for ACK/NACK after 'Get ChipID (0x28)'

2.Read out the fail pcs via flash programmer II, and some bytes was C5, C7, while the values of normal pcs flash data are all C5.

3.Mass erasing or writing with flash programmer II will solve this problem, but this is not convenient for production line. 

Question:

1.Why would this error happen?

2.Is there another way to solve it?

BR,

Viki Shi

  • Hi Viki,

    Are they using the ROM bootloader?

    When you say "some bytes was C5, C7, while the values of normal pcs flash data are all C5.", are they wrong bytes programmed by the bootloader?

    Could you make a logic trace of this happening using a logic analyzer?

  • Hi Marie,

    Sorry for the delay. The procedure is as follows:

    New CC2650 chip--> uart write FW (cc26xx-bsl.py + cmd:cc26xx-bsl.py -p COMX -e -w -v FW.bin) --> fail --> flash programmer II dump

    Then he found some bytes were different (0x0001ffd0 - 0x0001ffe0), but  he could not sure this was caused by UART or produced to be so.

    Please check the figure below:

    The left one is the data from a normal CC2650, and the right one is from a uart write fail chip.

    BR,

    Viki