Skip to content

Building TI SensorTag Project With CCS Linux Under Ubuntu

November 10, 2015

ccsv6

*During the setup, sometimes when the errors message appear to be weird, a rebuild of project may help to remove such error.

Installation setup

  1. The Ubuntu using is 12.04.
  2. CCS installed path
    1. CCS installed path ~/program/ti-ccs/ccsv6
  3. BLE Stack: 2.01
    1. BLE stack installed path: ~/program/ti-ccs/ti/simplelink/ble_cc26xx_2_01_00_44423
  4. TI-RTOS
    1. TI RTOS installed path: ~/program/ti-ccs/tirtos_simplelink_2_13_00_06
    2. XDC tools installed path: ~/program/ti-ccs/xdctools_3_31_00_24_core

Import Project

  1. Launch CCS
  2. Right Click on Project Explorer empty area, then ‘Import’ –> ‘CCS Project’
  3. Browse to path : program/ti-ccs/ti/simplelink/ble_cc26xx_2_01_00_44423/Projects/ble/SensorTag/CC26xx/CCS
    1. Under ‘Discovered projects’, tick both ‘SensorTag’ and ‘SensorTagStack’
    2. Click ‘Finish’ to import project

Building SensorTag

Build Folder Path Modification

  1. Right click on ‘SensorTag’, select ‘Properties’
  2. Click on ‘Resource’ –> ‘Linked Resources’, change path below, you need to modify below absolute path according to your installation location:
    1. CC26XXWARE : /home/cheng/program/ti-ccs/tirtos_simplelink_2_13_00_06/products/cc26xxware_2_21_01_15600
    2. TI_RTOS_DRIVERS_BASE : /home/cheng/program/ti-ccs/tirtos_simplelink_2_13_00_06/packages
  3. Build and there should be some warning about as below:
    1. Invalid project path: Include path not foundSensorTagBuildInvalidPath

Invalid Project Path

  1. All above errors is due to name case is not match, we can perform one of the below method
    1. folder rename
    2. create link file (I use this in below)
  2. Browse to respective folder and start changing creating the symbolic link
    1. ln -s Include include
    2. ln -s cc26xxST CC26xxST
    3. ln -s CC26xx cc26xx
    4. ln -s Devices devices
    5. ln -s interfaces interfaces
  3. In menu bar ‘Project’ –> ‘Clean’
  4. In menu bar ‘Project’ –> ‘Rebuild All’
  5. Another error statingas as shown below
    1. cannot open source file “sensortag.h”
    2. SensorTagFileOpenFail
  6. To solve this:
    1. Browse to: ~/program/ti-ccs/ti/simplelink/ble_cc26xx_2_01_00_44423/Projects/ble/SensorTag/CC26xx/Source/Application
    2. ln -s sensorTag.h sensortag.h
    3. ln -s sensorTag.h SensorTag.h
  7. More error on naming
    1. Browse to: ~/program/ti-ccs/ti/simplelink/ble_cc26xx_2_01_00_44423/Projects/ble/SensorTag/CC26xx/Source/Application
    2. ln -s SensorTag_ConnCtrl.h sensortag_connctrl.h
    3. ln -s SensorTag_IO.h sensorTag_IO.h

Building SensorTagStack

Build Folder Path Modification

  1. Right click on ‘SensorTag’, select ‘Properties’
  2. Click on ‘Resource’ –> ‘Linked Resources’, change path below, you need to modify below absolute path according to your installation location:
    1. CC26XXWARE : /home/cheng/program/ti-ccs/tirtos_simplelink_2_13_00_06/products/cc26xxware_2_21_01_15600
    2. TI_RTOS_DRIVERS_BASE : /home/cheng/program/ti-ccs/tirtos_simplelink_2_13_00_06/packages
  3. After rebuild, there will be errors on:
    1. ble/SensorTag/CC26xx/CCS/SensorTagStack/../../IAR/Stack/CC2650/../../../../../../tools/LibSearch/libSearch.exe: Command not found

Wine Setup (running LibSearch.exe and Boundary.exe)

  1. Below Window executables is being use during build process, in Linux, we have to use wine to run these executables
    1. libSearch.exe
    2. Boundary.exe
  2. Refer to internet on wine installation as well as wine-mono
  3. Preparation
    1. Ensure LibSearch.exe is at: ~/program/ti-ccs/ti/simplelink/ble_cc26xx_2_01_00_44423/Projects/tools/LibSearch
    2. Ensure Boundary.exe is at: ~/program/ti-ccs/ti/simplelink/ble_cc26xx_2_01_00_44423/Projects/tools/Boundary
  4. Right click Project ‘SensorTagStack’ –> ‘Properties’
    1. ‘Build’ –> ‘Steps’
    2. Change Pre-build steps to:
      1. wine “${ORG_PROJ_DIR}/../../../../../../tools/LibSearch/libSearch.exe” ${ORG_PROJ_DIR}/buildConfig.opt ${ORG_PROJ_DIR}/../../../../../../tools/LibSearch/parameters.xml ${ORG_PROJ_DIR}/../../../../../Libraries/CC26xx/IAR/ ${ORG_PROJ_DIR}/../../Lib/CC2650Stack.a FlashROM
    3. Change Post-build steps to:
      1. “${CG_TOOL_HEX}” -order MS –memwidth=8 –romwidth=8 –intel -o “${ProjName}.hex” “${ProjName}.out”
        mono “${ORG_PROJ_DIR}/../../../../../../tools/Boundary/Boundary.exe” -prj “ccs” -chip “CC2640” -lcf “${ORG_PROJ_DIR}/../../../../../common/cc26xx/CCS/cc26xx_ble_stack.cmd” -map “${PROJECT_LOC}/${ConfigName}/${ProjName}.map” -xml “${ORG_PROJ_DIR}/../../../../../../tools/Boundary/BoundaryConfig.xml” -cc “${ORG_PROJ_DIR}/../../../CCS/Config/ccsCompilerDefines.bcfg” -lnk “${ORG_PROJ_DIR}/../../../CCS/Config/ccsLinkerDefines.cmd”
  5. ‘Project’ –> ‘Build Project’
  6. Errors on:
    1. cannot open source file
    2. SensorTagOpenFileFail2
    3. After perform a ‘Project clean’ and project rebuild everything works

Advertisements

From → Embedded System

2 Comments
  1. I am having a problem on MAC OSX that CCS cannot find file:
    #10008-D cannot find file “/Users/michaelliesenberg/.wine/drive_c/ti/simplelink/ble_cc26xx_2_01_00_44423/Projects/ble/SensorTag/CC26xx/CCS/SensorTagStack/../../IAR/Stack/CC2650/../../Lib/CC2650Stack_HCI_TL.a”

    Do you have any idea?

    • During stack building, there are pre-build steps (uses libSearch.exe) and post-build steps (uses Boundary.exe). Double check on this part.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: