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.

LP-CC1352P7: How to set up a project where TI's code is not in the main root?

Part Number: LP-CC1352P7
Other Parts Discussed in Thread: SYSCONFIG

Tool/software:

Hi,

I have a current project based on a modification of Wi-SUN node (but I think this question is independent of the base code) and it will work as a base to all projects I intend to build in the future. Once we store our projects in git repos, the idea would be that we create and clone a new project and then I add the Wi-SUN base code as a submodule and then simply write the specific application code.

Basically this would be the hierarchy:

my_project/
├── wisun_based_code/           <- git submodule
├── my_specific_application/
│   ├── my-application.c
│   ├── my-application.h
│   ├── libs/
│   └── ...

The issue when I try to do this is that CCS does not recognize this structure as a CCS project. I found out that .cproject, .ccsproject and .project files are required to CCS be able to recognize a folder as a project. If I add these files to the main root, some other folders like "Release" are automatically included in the main root.

How can I manage to have a project with the specifications mentioned above?

Thank you in advance.

Regards,
Eduardo.

  • Hi Eduardo,

    When building a project we recommend that you manage the SDK through git, and your application is linked to your SDK.
    CCS does require the .cproject, .ccsproject and .project files you mention. You could add the "Release" folder into the .gitignore.

    Best regards,

    Daniel

  • Hi Daniel,

    we recommend that you manage the SDK through git

    Do you mean that I should download your SDK and upload it to my git repo or do TI have a git repo with SDK where I can clone?

    Currently the process I have been doing to develop a new code is using Resource Explorer from CCS and the modify the example codes.

    Regardless the .cproject, .ccsproject and .project files, this is what I mean:

    If I remove those files, CCS does not recognize the project anymore and it seems to be just a folder:

    Based on this thread (CODECOMPOSER: What is required for CCS to detect a project?) it seems like those files are indeed necessary.

    Also, if I have a project and move all the TI files to a folder (like the following screenshot), CCS also stops recognizing the project:

    How can I manage to use this configuration?

    Regards,
    Eduardo.

  • Hi Eduardo,

    1. Yes, the F2 SimpleLink SDK is both provided as an installation file from ti.com website, or as at GitHub repository from GitHub - TexasInstruments/simplelink-lowpower-f2-sdk: SimpleLink Low Power F2 SDK, the examples come as a git submodule. The instructions are provided in the README file.

    2. You can move the project into a subdirectory in the workspace by following this steps: 6.1. Creating and Managing Projects — Code Composer Studio 20.2.0 Documentation

    Best,

    Daniel

  • Hi Daniel,

    1. I have cloned the wisun_examples and then updated the SDK submodule. Then I edited the imports.mak file as mentioned in the README.md file, but when I try to build I am facing the following error:

    [ 13%] Building C object kernel/nortos/CMakeFiles/nortos_cc26x4_ns.dir/dpl/TimerPCC26XX_nortos.c.obj
    [ 13%] Building C object kernel/nortos/CMakeFiles/nortos_cc26x4_ns.dir/dpl/TimestampPCC26XX_nortos.c.obj
    [ 13%] Building C object kernel/nortos/CMakeFiles/nortos_cc26x4_ns.dir/startup/startup_cc13x4_cc26x4_ticlang_ns.c.obj
    [ 13%] Linking C static library lib/ticlang/m33f/nortos_cc26x4_ns/nortos_cc26x4_ns.a
    make[3]: Leaving directory '/home/oee_dev-002/gen2/Firmware/simplelink-ti_wisunfan-examples/cc13xx_cc26xx_sdk/build/ticlang'
    [ 13%] Built target nortos_cc26x4_ns
    make[3]: Entering directory '/home/oee_dev-002/gen2/Firmware/simplelink-ti_wisunfan-examples/cc13xx_cc26xx_sdk/build/ticlang'
    make[3]: Leaving directory '/home/oee_dev-002/gen2/Firmware/simplelink-ti_wisunfan-examples/cc13xx_cc26xx_sdk/build/ticlang'
    make[3]: Entering directory '/home/oee_dev-002/gen2/Firmware/simplelink-ti_wisunfan-examples/cc13xx_cc26xx_sdk/build/ticlang'
    [ 13%] Building ASM object kernel/tirtos7/packages/ti/sysbios/CMakeFiles/tirtos7_m0p.dir/family/arm/v6m/TaskSupport_asm_gcc.o
    tiarmclang: warning: argument unused during compilation: '-D BIOS_mpeEnabled_D=0' [-Wunused-command-line-argument]
    tiarmclang: warning: argument unused during compilation: '-D BIOS_smpEnabled_D=0' [-Wunused-command-line-argument]
    tiarmclang: warning: argument unused during compilation: '-D Hwi_dispatcherSwiSupport_D' [-Wunused-command-line-argument]
    tiarmclang: warning: argument unused during compilation: '-D TaskSupport_usesMonitors__D' [-Wunused-command-line-argument]
    [ 14%] Building ASM object kernel/tirtos7/packages/ti/sysbios/CMakeFiles/tirtos7_m0p.dir/family/arm/v6m/Hwi_asm_gcc.o
    tiarmclang: warning: argument unused during compilation: '-D BIOS_mpeEnabled_D=0' [-Wunused-command-line-argument]
    tiarmclang: warning: argument unused during compilation: '-D BIOS_smpEnabled_D=0' [-Wunused-command-line-argument]
    tiarmclang: warning: argument unused during compilation: '-D Hwi_dispatcherSwiSupport_D' [-Wunused-command-line-argument]
    tiarmclang: warning: argument unused during compilation: '-D TaskSupport_usesMonitors__D' [-Wunused-command-line-argument]
    [ 14%] Building ASM object kernel/tirtos7/packages/ti/sysbios/CMakeFiles/tirtos7_m0p.dir/family/arm/v6m/Hwi_asm_switch_gcc.o
    tiarmclang: warning: argument unused during compilation: '-D BIOS_mpeEnabled_D=0' [-Wunused-command-line-argument]
    tiarmclang: warning: argument unused during compilation: '-D BIOS_smpEnabled_D=0' [-Wunused-command-line-argument]
    tiarmclang: warning: argument unused during compilation: '-D Hwi_dispatcherSwiSupport_D' [-Wunused-command-line-argument]
    tiarmclang: warning: argument unused during compilation: '-D TaskSupport_usesMonitors__D' [-Wunused-command-line-argument]
    [ 14%] Building C object kernel/tirtos7/packages/ti/sysbios/CMakeFiles/tirtos7_m0p.dir/family/arm/vxm/boot/boot_cortex_m.c.obj
    [ 14%] Linking C static library lib/ticlang/m0p/sysbios/sysbios.a
    make[3]: Leaving directory '/home/oee_dev-002/gen2/Firmware/simplelink-ti_wisunfan-examples/cc13xx_cc26xx_sdk/build/ticlang'
    [ 14%] Built target tirtos7_m0p
    make[3]: Entering directory '/home/oee_dev-002/gen2/Firmware/simplelink-ti_wisunfan-examples/cc13xx_cc26xx_sdk/build/ticlang'
    make[3]: Leaving directory '/home/oee_dev-002/gen2/Firmware/simplelink-ti_wisunfan-examples/cc13xx_cc26xx_sdk/build/ticlang'
    make[3]: Entering directory '/home/oee_dev-002/gen2/Firmware/simplelink-ti_wisunfan-examples/cc13xx_cc26xx_sdk/build/ticlang'
    [ 14%] Building ASM object kernel/tirtos7/packages/ti/sysbios/CMakeFiles/tirtos7_m4.dir/family/arm/m3/TaskSupport_asm_gcc.o
    tiarmclang: warning: argument unused during compilation: '-D BIOS_mpeEnabled_D=0' [-Wunused-command-line-argument]
    tiarmclang: warning: argument unused during compilation: '-D BIOS_smpEnabled_D=0' [-Wunused-command-line-argument]
    tiarmclang: warning: argument unused during compilation: '-D Hwi_dispatcherSwiSupport_D' [-Wunused-command-line-argument]
    tiarmclang: warning: argument unused during compilation: '-D TaskSupport_usesMonitors__D' [-Wunused-command-line-argument]
    /home/oee_dev-002/gen2/Firmware/simplelink-ti_wisunfan-examples/cc13xx_cc26xx_sdk/kernel/tirtos7/packages/ti/sysbios/family/arm/m3/TaskSupport_asm_gcc.s:60:9: error: instruction requires: fp registers
            vpush   {d8-d15}
            ^
    /home/oee_dev-002/gen2/Firmware/simplelink-ti_wisunfan-examples/cc13xx_cc26xx_sdk/kernel/tirtos7/packages/ti/sysbios/family/arm/m3/TaskSupport_asm_gcc.s:77:9: error: instruction requires: fp registers
            vpop    {d8-d15}        @ pop vfp caller regs
            ^
    make[3]: *** [kernel/tirtos7/packages/ti/sysbios/CMakeFiles/tirtos7_m4.dir/build.make:75: kernel/tirtos7/packages/ti/sysbios/CMakeFiles/tirtos7_m4.dir/family/arm/m3/TaskSupport_asm_gcc.o] Error 1
    make[3]: Leaving directory '/home/oee_dev-002/gen2/Firmware/simplelink-ti_wisunfan-examples/cc13xx_cc26xx_sdk/build/ticlang'
    make[2]: *** [CMakeFiles/Makefile2:771: kernel/tirtos7/packages/ti/sysbios/CMakeFiles/tirtos7_m4.dir/all] Error 2
    make[2]: Leaving directory '/home/oee_dev-002/gen2/Firmware/simplelink-ti_wisunfan-examples/cc13xx_cc26xx_sdk/build/ticlang'
    make[1]: *** [Makefile:136: all] Error 2
    make[1]: Leaving directory '/home/oee_dev-002/gen2/Firmware/simplelink-ti_wisunfan-examples/cc13xx_cc26xx_sdk/build/ticlang'
    make: *** [Makefile:18: build-ticlang] Error 2

    Did I configure anything wrong?

    2. After being able to compile it properly I can try this step.

    Thank you.

    Best regards,
    Eduardo.

  • This is the configuration I have set:

    XDC_INSTALL_DIR ?= /home/oee_dev-002/ti/xdctools_3_62_01_15_core
    SYSCONFIG_TOOL ?= /home/oee_dev-002/ti/ccs2002/ccs/utils/sysconfig_1.22.0/sysconfig_cli.sh
    CMAKE ?= /usr/local/bin/cmake
    PYTHON ?= /usr/bin/python3
    TICLANG_ARMCOMPILER ?= /home/oee_dev-002/ti/ccs2002/ccs/tools/compiler/ti-cgt-armllvm_4.0.1.LTS
    GCC_ARMCOMPILER ?= /usr
    # IAR_ARMCOMPILER ?= /home/username/iar9.50.2

  • Hi Eduardo,

    I suspect it could be due to the CMake version.
    What version are you using? Could you try version cmake 3.22.1 ?

    Best,

    Daniel