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.

[FAQ] SENSOR-CONTROLLER-STUDIO: UART or I2C Communication Peripheral Expansion


Sensor Controller Studio is used to write, test and debug code for the CC26xx/CC13xx Sensor Controller, enabling ultra-low power application design. The tool generates an interface driver consisting of C source files with the firmware image, associated definitions, and generic functions that allow the System CPU application to control the Sensor Controller and exchange data.  

The SimpleLink device families each have a limited number of communication hardware peripherals available:

  • CC13X0/CC26X0: 1 UART, 1 I2C
  • CC13X2/CC26X2: 2 UART, 1 I2C
  • CC13X1/CC26X1: No SCS available
  • CC13X4/CC26X4: 4 UART, 2 I2C

It is recommended that you check the specific target SimpleLink device datasheet to confirm these quantities.

Since the Sensor Controller Studio (SCS) bit-bangs (i.e. emulates) its UART and I2C solutions, it is possible to add more communication peripheral resources to the SCS interface/solution.  This is useful if an application must go beyond the number of total physical communication peripherals available on the target device.  Note that this is not possible for SPI since this SCS solution utilizes the hardware peripheral, whose number is limited.  There is also not a solution available for "I2C Slave" end applications.

Here are the instructions for adding more “I2C Master” resources to your Sensor Controller Studio:

  • Copy <install_dir>/resource_defs/ to C:\Users\<user_name>\Documents\Texas Instruments\Sensor Controller Studio\resource_defs
  • Copy all <install_dir>/proc_defs/i2c_*.prd to C:\Users\<user_name>\Documents\Texas Instruments\Sensor Controller Studio\proc_defs
  • Copy all <install_dir>/proc_defs/i2c_*.asm to C:\Users\<user_name>\Documents\Texas Instruments\Sensor Controller Studio\proc_defs
  • For each copied file:
    • Rename the file: "i2c.*" to "i2c1.*"
    • Replace all occurrences of "I2C" with "I2C1"
    • Replace all occurrences of "I2c" with "I2c1"
    • Replace all occurrences of "i2c" with "i2c1"
  • Restart Sensor Controller Studio
  • There is now a new "I2C1 Master" resource
  • Repeat all steps for I2CX as necessary

The same steps can be applied to "UART Emulator" resources as well.

Please consult the SCS Help Documentation for more information concerning the use of Sensor Controller Studio.