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.

CC2640R2F: program will not fit into available memory

Part Number: CC2640R2F
Other Parts Discussed in Thread: CC2642R,

Description Resource Path Location Type
<a href="file:/C:/ti/ccs1030/ccs/tools/compiler/dmed/HTML/10099.html">#10099-D</a>
program will not fit into available memory,
or the section contains a call site that requires a trampoline that can't be generated for this section.
placement with alignment fails for section ".cinit" size 0x5de. Available memory ranges:
cc26xx_app_oad.cmd /multi_role_cc2640r2lp_app/TOOLS line 338 C/C++ Problem

Above mentioned error occurring because of code size

If some part of code commented then above error not occur .....but all code is essential so

.....any solution for increase size of flash memory or any other way to solve this error

  • Hi Rohit,

    You should make sure to use the correct dependencies for the SIMPLELINK-CC2640R2-SDK as stated in the Release Notes.  For example, the latest version (v5.30) uses the following:

    • TI Code Composer Studio: CCS-9.0.0.00013
    • TI Code Generation Tools for Arm: 18.12.2.LTS
    • XDCTools: 3.51.03.28

    Regards,
    Ryan

  • Yes ....

    everything is perfect .....and it is running project without any issue but when 

    I added some additional features in the existing code and then  this error occurred     

  • The CC2640R2F only has 128 kB of in-system Programmable Flash and the multi-role project (and accompanying BIM resources for OAD) is already consuming a majority of this available space.  Adding additional features could include more library dependencies or otherwise exceed the remaining flash.  You can view the Memory Allocation window inside a buildable multi-role project to determine how much flash is already consumed.  I recommend upgrading to the CC2642R with 352 kB of Programmable Flash.

    Regards,
    Ryan

  • Error occurred :-

    Description Resource Path Location Type
    #10010 errors encountered during linking; "multi_role_cc2640r2lp_app.out" not built multi_role_cc2640r2lp_app C/C++ Problem
    <a href="file:/C:/ti/ccs1030/ccs/tools/compiler/dmed/HTML/10099.html">#10099-D</a> program will not fit into available memory, or the section contains a call site that requires a trampoline that can't be generated for this section. placement with alignment fails for section ".cinit" size 0x455. Available memory ranges: cc26xx_app_oad.cmd /multi_role_cc2640r2lp_app/TOOLS line 338 C/C++ Problem
    <a href="file:/C:/ti/ccs1030/ccs/tools/compiler/dmed/HTML/10099.html">#10099-D</a> program will not fit into available memory, or the section contains a call site that requires a trampoline that can't be generated for this section. placement with alignment fails for section "GROUP_3" size 0x1121a. Available memory ranges: cc26xx_app_oad.cmd /multi_role_cc2640r2lp_app/TOOLS line 329 C/C++ Problem
    gmake: *** [all] Error 2 multi_role_cc2640r2lp_app C/C++ Problem
    gmake[1]: *** [multi_role_cc2640r2lp_app.out] Error 1 multi_role_cc2640r2lp_app C/C++ Problem

    flash used 99% so can we use other available memory like GPRAM or SRAM

    if -> Yes then how to use or which part of code needs to change ?

    else -> How to  upgrade to the CC2642R2F with 352 kB of Programmable Flash ?

  • Memory Management has sections for re-purposing RAM options for other RAM-based purposes but this does not include using RAM as Flash.  There is an E2E thread which covers reducing the flash size of existing BLE examples.  Otherwise, the BLE5-Stack Migration Guides have a module for updating from CC2640R2 to CC26x2

    Regards,
    Ryan

  • Hi,

    Stack Flash is free more than 50% can it possible to use free space for application flash 

  • Hi,

    Which SDK are you using? The memory view can be misleading. The free space in the stack is not actually free, this extra space is what's used in the application project.

    I would recommend repurposing the cache as RAM and potentially the AUX as RAM as needed. You can also navigate to the Stack Configurations and reduce the stack's memory usage to fit your application. For example, if you only expect to ever connect to 2 devices, set MAX_NUM_BLE_CONNS accordingly.

  • Hello,

    I am using simplelink_cc2640r2_sdk_5_10_00_02 .....It is running project .

    Actually we not need to much BLE concept it,s only some time for configure something  

    if in the place of multi role can we used simple peripheral then can it reduces flash size or 

    any some other way to configure stack that  will reduces flash use for same project 

  • Hello,

    Common use cases for using Bluetooth LE for initial configuration typically only use the peripheral. You can definitely reduce the project size if you are not using the multi_role side. To clarify, are you scanning and initiating a connection from the TI device (this means you are using a central role)?