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-CC2640R2: Running out of flash space

Part Number: LAUNCHXL-CC2640R2
Other Parts Discussed in Thread: CC2640R2F, CC2650, CC2640

Running the stock Simple peripheral OAD on-chip example with SDK 1.50. The remaining flash space is only 3K in the example - what can I do to increase the available flash for my application?

  • Are there any optimizations that I can turn on?
  • GreenAndGrey,

    Unfortunately, there is not much you can do. You can get rid of various parts of simple_peripheral that you don't need and add your application as needed, but generally we suggest that you either use OAD off-chip with external flash on the CC2640R2F or us the CC2642 which provides a lot more flash availability for you if you wish to do on-chip OAD.
  • Our board was initially based on the CC2650 Sensortag. We started looking at upgrading the chip due to space constraints there and the CC2640R2F was recommended over the CC2640, with the main perk being increased flash size. Unfortunately we won't be able to spin our board yet again.
  • GreenAndGrey,

    Sorry for the inconvenience. As a note, I would make sure that you set your optimizations in your project settings to "whole product optimzations (4)". You can do this by right clicking and going to properties and finding the optimizations tab.

    As far as CC2640R2F. Yes it does have more space than CC2650, because we have moved the RTOS kernel and the BLE Stack into ROM. How much space is your application taking?

    I would also make sure that your stack build configurations are set appropriately to your desired application use-case. For instance in your stack project, you can go to tools/build_config.opt and make sure you're building to the appropriate configuration for your app.
  • Thank you for your response.

    The optimizations already seem to be in place with the SDK examples.

    I see forum suggestions to set OSAL_SNV=0 and to disable GAP_BOND_MGR in the Stack to save some space. Would this affect the overall BLE/OAD functionality?

    I did try it but get this error message:  "Incompatible NV settings detected. OAD supports 1 NV page" so that leads me to think I need to leave it on?

  • I used this guide to disable and it works - software-dl.ti.com/.../memory_management.html

    I have some unused space in my Stack now so I will try to reclaim it.
  • Thanks for updating! I'm going to close this post due to inactivity. To reopen this thread, just post a follow up question. Otherwise, after 30-days of inactivity from this post, this thread will lock.