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.

Compiler/CC2640: Flash space not enough for Project_Zero_App

Part Number: CC2640

Tool/software: TI C/C++ Compiler

My project is load from \ti\simplelink_academy_01_11_00_0000\modules\projects\ble_projectzero
ti-rtos : tirtos_cc13xx_cc26xx_2_20_01_08
xdctools: xdctools_3_32_00_06_core

ti ble stack is : \ti\simplelink\ble_sdk_2_02_01_18

From the map file, ProjectZeroStack still have 0x0000ee3d flash unused, but  ProjectZeroApp only have 0x000004b0 flash unused.

Flash Space is not enough for my application, how can I adjust the flash arrangement for App and stack?

I also want to set osal_snv = 2, but now I have to accept osal_snv = 1.

Can you help me? Thanks.

  • Hello,

    Project Zero is meant to be a starting point for users to develop their own custom application. That being said, there may be many features not needed for your particular application. There are some tips in the software developer's guide (SWRU393) in section 10.4.

    I also noticed that you are using v15.12.3 as your ARM compiler. Please use v5.2.9, which should free up  some more space in SRAM.

  • I have read the swru393e Chapter 10 that told me how to configure ble stack features. But I want to know how to configure map file boundary address.

    Can I configure the Application Imagine code space、Stack Imagine code space、SNV and CCA?

    How to configure  the Application Imagine code space、Stack Imagine code space、SNV and CCA boundary?

    Because Application Imagine code space is not enough, but stack Imagine code space have large free space memory.

    Thanks!

  • I also want to know, how to use Stack Frontier Generator to generate ccs_compiler_defines.bcfg files?

  • ${CG_TOOL_HEX} -order MS --memwidth=8 --romwidth=8 --intel -o ${ProjName}.hex ${ProjName}.out
    ${TI_BLE_SDK_BASE}/tools/frontier/frontier.exe ccs ${PROJECT_LOC}/${ConfigName}/${ProjName}_linkInfo.xml ${PROJECT_ROOT}/TOOLS/ccs_compiler_defines.bcfg ${PROJECT_ROOT}/TOOLS/ccs_linker_defines.cmd

    where frontier.exe get ICALL_STACK0_ADDR ICALL_STACK0_START ICALL_RAM0_START to create ccs_linker_defines.cmd and ccs_compiler_defines.bcfg?

    How can I get frontier.exe resource file paths and modify it?

    because I want to modify
    --define=ICALL_STACK0_ADDR=0xe001
    --define=ICALL_STACK0_START=0xe000
    --define=ICALL_RAM0_START=0x20004348
    to
    --define=ICALL_STACK0_ADDR=0xC001
    --define=ICALL_STACK0_START=0xC000
    --define=ICALL_RAM0_START=0x20004348

    when I directly modify it in the project, it lost.
  • The answer only told me how to configure ble build opition, but I want to configure build and linker boundary.
  • I am looking into this and will get back with you. I apologize for the delay!
  • Please look to this thread for a follow up: e2e.ti.com/.../2841835