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.

CCS/LAUNCHXL-CC2650: program will not fit into available memory (CC2650)

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

Tool/software: Code Composer Studio

Hello,

For my BLE project, I started with "project_zero_app" and I face this memory error just after adding a new task (which doesn't contain anything so far):

"c:/ti/simplelink/ble_sdk_2_02_01_18/src/common/cc26xx/ccs/cc26xx_app.cmd", line 121: error #10099-D: program will not fit into available memory.  placement with alignment fails for section ".const" size 0x1f4f .  Available memory ranges:
   FLASH        size: 0xf000       unused: 0x39b        max hole: 0x38e     
   FLASH_LAST_PAGE   size: 0x1000       unused: 0xfa8        max hole: 0xfa8     
error #10010: errors encountered during linking; "V2project_zero_app_cc2650launchxl.out" not built

Here is the memory allocation in file cc26xx_app.cmd:

SECTIONS
{
    .intvecs        :   >  FLASH_APP_BASE
    .text           :   >> FLASH | FLASH_LAST_PAGE
    .const          :   >> FLASH | FLASH_LAST_PAGE
    .constdata      :   >> FLASH | FLASH_LAST_PAGE
    .rodata         :   >> FLASH | FLASH_LAST_PAGE
    .cinit          :   >  FLASH | FLASH_LAST_PAGE
    .pinit          :   >> FLASH | FLASH_LAST_PAGE
    .init_array     :   >> FLASH | FLASH_LAST_PAGE
    .emb_text       :   >> FLASH | FLASH_LAST_PAGE
    .ccfg           :   >  FLASH_LAST_PAGE (HIGH)

 

And the Memory Allocation View gives:

How can I deal with this kind of error?  I understand that I should modify the cc26xx_app.cmd file but where to start?

(I've already tried to delete unnecessary variables or constants but without success).

Thanks,

John.

 

  • Hi John,

    Generally, Project Zero is a pretty big project to begin with. If you just want to make a BLE peripheral, I advise you to start with simple_peripheral.

    We have a section on reducing memory usage in the Software Developers Guide, 10.4 Optimizing Bluetooth low energy Stack Memory Usage ( http://www.ti.com/lit/swru393 )

    You can also look into using the cache as RAM or the AUX RAM, see this E2E thread: e2e.ti.com/.../2271525
  • Hi Marie,

    ok so I've tried to find a simple_peripheral for it's only implemented for CC2640.

    I've tried to change the Board to match CC2650 Launchpad (in RightClik Project / Properties / General Products) but impossbile to compile, too many errors.

    Where Can I find the simple_peripheral for CC2650 Launchpad?

    Thanks,

    John.

  • sorry, Don't take into account my message, I've found a place to get the simple_peripheral for cc2650 (apparently)
  • Hi John,

    You can read about CC2650 and CC2640 in the forum FAQ: e2e.ti.com/.../404236

    In the BLE Stack, the examples are organized by board, so any example you find in the CC2650lp folder are ready to use with no alteration.