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.

LAUNCHCC3235MOD: Trouble getting started with CC3235MOD using makefile.

Part Number: LAUNCHCC3235MOD
Other Parts Discussed in Thread: UNIFLASH, SYSCONFIG, CC3235SF

Hi,

I'm just getting started with CC3235MOD Launchpad Kit.  I'm trying to walk through the QuickStartGuide for SimpleLink CC32xxSDK.

My development environment is Linux using GNU ARM embedded toolchain.

I've installed the SDK, FreeRTOS10.1.1 and Uniflash; then I skipped to section 7 "Quick Start for Makefile Users".

I updated the <SDK_INSTALL_DIR>/imports.makefile, but there is no directory path to the SYSCONFIG_TOOL.

The imports.mak file has

SYSCONFIG_TOOL ?= /home/username/ti/ccs1030/ccs/utils/sysconfig_1.8.0/sysconfig_cli.sh

but there is no ccs1030/ directory below, and after searching the entire sdk tree, there is no sysconfig_cli.sh file to be found.

I tried skipping over that to section 7.2 "Build Kernel configuration"

So, I just removed that line from imports.mak and I was able to build tirtos-release and freertos-release.

The makefile doesn't support "nortos-release" but I was able to build it manually with "make -C nortos.

Section 7.3 & 7.4 almost entirely bombed (make failed) because files are not found.  

Am I starting in the right place?  Is there supposed to be a "sysconfig_cli.sh" file in the SDK?

Thanks in advance,

Ed

  • Hi Ed,

    SysConfig is an external tool that is shipped as either part of the Code Composer Studio installation or as a standalone tool: https://www.ti.com/tool/SYSCONFIG

    SysConfig is used by default in the SDK examples, but it shouldn't be needed for the libraries. The failure was likely just because of the missing include path in imports.mak.

    Best regards,

    Sarah

  • Hi Sarah,

    Thanks very much for responding.

    The original imports.mak (shown below without comments) that came with the SDK doesn't appear to have any include directory paths. 

    XDC_INSTALL_DIR ?= /home/username/ti/xdctools_3_62_00_08_core
    SYSCONFIG_TOOL ?= /home/username/ti/ccs1030/ccs/utils/sysconfig_1.8.0/sysconfig_cli.sh

    FREERTOS_INSTALL_DIR ?= /home/username/FreeRTOSv10.2.1

    CCS_ARMCOMPILER ?= /home/username/ti/ccs1030/ccs/tools/compiler/ti-cgt-arm_20.2.4.LTS
    TICLANG_ARMCOMPILER ?= /home/username/ti/ccs1030/ccs/tools/compiler/1.2.1.STS
    GCC_ARMCOMPILER ?= /home/username/ti/ccs1030/ccs/tools/compiler/9.2019.q4.major

    RM = rm -f
    RMDIR = rm -rf
    DEVNULL = /dev/null
    ECHOBLANKLINE = echo

    I changed the top level paths as needed to match my SDK installation, but there is no ccs1030 directory anywhere in the SDK.  Apparently SYSCONFIG_TOOL isn't used anyway because I was able to update SDC_INSTALL_DIR, FREERTOS_INSTALL_DIR and GCC_ARMCOMPILER and with that all three versions of the kernel built clean.  I was also able to build the first item in section 7.3 Build Core libs: Host Driver lib.  After that things fell apart... 

    Attempting to build MQTT lib (as described in the quick-start-guide) fails because the specified path where it says to run make, there is no makefile.  Actually there is no [mM]akefile anywhere in that directory (<SDK_INSTALL_PATH>\source\ti\net\mqtt).

    Attempting to build OTA lib, there's some OTA_VENDOR_TOKEN needed by otauser.h.

    Finally, after those fails, I figured I'd still try to build the project (section 7.4), but it immediately fails because it can't find a file named "ti_drivers_config.h".  Unfortunately that can't just be a path problem becasue there is no ti_drivers_config.h anywhere in the SDK tree.

    I tried running other makefiles under the SDK, but most fail after not finding "ti_drivers_config.h" or "ti_drivers_config.c"; but as I said, they are nowhere in the SDK tree.

    Any other pointers you can give would sure be helpful, it seems the SDK is incomplete or I downloaded something incorrectly.  

  • Ok, I think I see the problem...  I don't know if I missed a step somewhere or its just not documented properly; regardless, here's what seems to have helped with all of the builds in the quick-start-guide that I attempted...

    I installed the SDK by running the simplelink_cc32xx_sdk_5_20_00_06.run file that I downloaded from TI website, then started reading through the Documentation_Overview.html which pointed me to "Quick_Start_Guide.html".  Based on those instructions I found/installed FreeRTOSv10.1.1, and the ARM cross compiler.  Then I jumped to Section 7 "Quick Start for Makefile Users" and the first thing it says is "update the top level directory for the items in the imports.mak file.  This is where things went wrong because at this point there is no "sysconfig_cli.sh" (referred to in imports.mak).  

    I later discovered tools/standalone_sysconfig/sysconfig-1.8.0_1850-setup.run so I tried running that.  This step installs the  sysconfig_cli.sh file that is referenced in imports.mak, and with that path properly set up things work much better.  I started (over) with section 7.2 "Build Kernel configuration" by first running "make clean" and then I built tirtos-release and freertos-release directly as specified.  Then to build the "nortos" I just ran "make -C nortos" because that top level makefile didn't support nortos for some reason.

    Then I was able to move on the section 7.3 "Build Core libs" and I built  "Host Driver lib", but MQTT and OTA are (apparently) built by just running "make" at the  <SDK_INSTALL_PATH>\source\ti\net level.

    Finally, I was able to build an example <SDK_INSTALL_DIR>/examples/rtos/CC3235SF_LAUNCHXL/demos/network_terminal/freertos/gcc successfully!

    So, as best I can tell the missing step in the documentation is to run tools/standalone_sysconfig/sysconfig-1.8.0_1850-setup.run immediately after installing the SDK and updating the imports.mak file to point to the sysconfig_cli.sh file that comes with that.

  • Hi Ed,

    As I said in my first post, yes, you need to install CCS or standalone SysConfig.

    I'm glad you were able to build the other libraries. Keep in mind that you need to make your changes to otauser.h before building the ota library (which is the token error you saw originally). See the cloud_OTA example readme.

    Best regards,

    Sarah

  • Yep, you're right... The problem was I didn't know what "standalone_sysconfig" was until I stumbled on it in the SDK tree.

    Thanks much for the help!