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-CC1310: Reading CC1310 Device Flash Size using "Flash Programmer 2" CLI

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

Hi

We have a mix of 64KB and 128KB CC1310 devices and we need to be able to detect the device type and program the correct firmware in it accordingly. Using "Flash Programmer 2" GUI, there is an option to read device Flash Size by reading the FCFG1 area (FCFG1:FLASH_OTP_DATA3) as shown below:

   

Through CLI, I can read data from any address but when I try to read from this register, I get "Address out of range" error as shown below:

Is there another/better way of reading Flash size from the chip please?

What is the "Flash Programmer 2" GUI doing to get this information?

Thanks

  • Hi Shoaib,

    I tried using UNIFLASH to do the same, but it looks like I have encountered the same issue:

    C:\ti\uniflash_8.5.0> .\dslite.bat --mode memory --config .\CC1310F128.ccxml --range=0x500002b0,4 --output=flashtype
    Executing the following command:
    > "C:\ti\uniflash_8.5.0\deskdb\content\TICloudAgent\win\ccs_base\DebugServer\bin\DSLite" memory --config .\CC1310F128.ccxml --range=0x500002b0,4 --output=flashtype
    
    For more details and examples, please refer to the UniFlash Quick Start guide.
    
    Failed: Memory map prevented reading 0x500002B0
    PS C:\ti\uniflash_8.5.0>

    Let me come back to you with a working solution.

    Regards,

    Arthur

  • Hi Shoaib,

    As per the screenshot you posted, it seems like we have to read it at address 0x500012b0, and not 0x500002b0.

    Can you try again with that address?

    Here are the results I have gotten with the following command:

    PS C:\ti\uniflash_8.5.0> .\dslite.bat --mode memory --config .\CC1310F128.ccxml --range=0x500012b0,1 --output=flashtype.bin
    Executing the following command:
    > "C:\ti\uniflash_8.5.0\deskdb\content\TICloudAgent\win\ccs_base\DebugServer\bin\DSLite" memory --config .\CC1310F128.ccxml --range=0x500012b0,1 --output=flashtype.bin
    
    For more details and examples, please refer to the UniFlash Quick Start guide.
    
    PS C:\ti\uniflash_8.5.0>

    where the flashtype.bin file content looks like this:



    And here is the register in the CCS debug view:


    Regards,

    Arthur

  • Hi Arthur,

    Thanks for looking into this issue. We are using "Flash Programmer 2" utility and the address of 0x500012b0 appears out of range as shown below:

  • Shoaib,

    If it is still not working with Flash Programmer 2, I recommend you to use UNIFLASH instead: www.ti.com/.../UNIFLASH

    with the commands I provided. The ccxml file comes from Code Composer Studio, under a projects targetConfigs directory:



    Regards,

    Arthur

  • Hi Arthur,

    We use Flash Programmer 2 for Production so would be a big change to move to UniFlash for this little reason. Could you please check if it works with Flash Programmer 2 at your end? It surely works when using Flash Programmer 2 GUI.

    Thanks

  • Hi Shoiab,

    It requires a bit more research on my side. Allow me to come back to you later today on that.

    Regards,

    Arthur

  • Hi again,

    After further checking, we actually have no way of reading the FCFG1 info page using the Flash Programmer 2 CLI tool, as it was never implemented.

    Since it works with UNIFLASH, and it is the tool that we support from now on, I recommend you to switch to it.

    You are of course welcome to ask more questions about UNIFLASH later on, should you encounter any issues. Here is a link to the CLI reference: https://software-dl.ti.com/ccs/esd/uniflash/docs/v8_0/uniflash_quick_start_guide.html#command-line-interface

    Regards,

    Arthur