I flashed a CC2640 on my custom board using UART and COMMAND_BANK_ERASE and multiple COMMAND_DOWNLOAD, COMMAND_SEND_DATA, COMMAND_GET_STATUS functions.
The application runs as designed. I am able to either run the flashed application or enter bootloader mode using a bootloader back door pin.
I am using SPI to read memory. When in bootloader mode, the CC2640 responds appropriately to COMMAND_PING, COMMAND_GET_CHIP_ID, COMMAND_GET_STATUS, COMMAND_RESET functions.
The CC2640 does *not* respond to a valid COMMAND_READ_MEMORY COMMAND_MEMORY_READ. If I force an error, such as set the packet size byte to something other than 0x09, the CC2640 responds to COMMAND_GET_STATUS with 0x42 "Status for invalid command (incorrect packet size)". If I send it a valid command, there is no response.
I have inserted delays ranging from 100ms to 1000ms after sending the COMMAND_READ_MEMORY COMMAND_MEMORY_READ packet and before receiving acknowledgement.
I flashed the same program on a BOOSTXL-CC2650 board, and I have no trouble reading memory.
I am trying to read CCFG memory locations at offset 0xFA8 through 0xFFF.
What could be wrong? Is there a configuration bit that can prevent reading memory?
Edit: correct spelling of COMMAND_MEMORY_READ