Texas Instruments Sensor Tag

From IoT
Jump to: navigation, search

Go Up to ThingConnect Devices


Texas Instruments Sensor Tag is a multi sensor Bluetooth LE development platform from Texas Instruments. SimpleLink SensorTag has 10 sensors including ambient light sensor, temperature sensor, humidity sensor and pressure sensor.

Use the TTISensorTag component to communicate with the Texas Instruments Sensor Tag.

Demo Location

You can find the sample projects for the Texas Instruments Sensor Tag in the following IoT demo directories after installing the component:

  • Start | Programs | Embarcadero RAD Studio Berlin | Samples and then navigate to:
    • Delphi: Internet of Things\Object Pascal\Thing Connect\TISensorTag
    • C++: Internet of Things\CPP\Thing Connect\TISensorTag

Supported Services

The Texas Instruments Sensor Tag component supports the following Bluetooth LE services and characteristics:

Service Characteristic Property Event Read Subscribe Write
Device Information Firmware Revision String FirmwareRevision OnFirmwareRevisionUpdate
YesSubscriptionFeature.png
Hardware Revision String HardwareRevision OnHardwareRevisionUpdate
YesSubscriptionFeature.png
IEEE 11073-20601 Regulatory Certification Data List IEEERegulatory OnIEEERegulatoryUpdate
YesSubscriptionFeature.png
Manufacturer Name String ManufacturerName OnManufacturerNameUpdate
YesSubscriptionFeature.png
Model Number String ModelNumber OnModelNumberUpdate
YesSubscriptionFeature.png
PnP ID PnPID OnPnPIDUpdate
YesSubscriptionFeature.png
Serial Number String SerialNumber OnSerialNumberUpdate
YesSubscriptionFeature.png
Software Revision String SoftwareRevision OnSoftwareRevisionUpdate
YesSubscriptionFeature.png
System ID SystemID OnSystemIDUpdate
YesSubscriptionFeature.png

The Texas Instruments Sensor Tag component supports the following custom services:

Service Property Event Read Subscribe Write Description
Barometric Pressure Service PressureConfig OnPressureConfigUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the pressure configuration data as a TSensorConfig.
PressureData (*) OnPressureDataUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns the pressure data value.
PressurePeriod OnPressurePeriodUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the pressure period between sensor measurements. Valid range is from 10 to 255 (the unit is 10 ms).
Connection Control Service CCSParameters OnCCSParametersUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns the Gatt CCS parameter.
RequestCCSParameters
YesSubscriptionFeature.png
Writes the Gatt CCS parameter.
DisconnectRequest
YesSubscriptionFeature.png
Writes 1 byte-field to request the OAD service disconnect.
Humidity Service HumidityConfig OnHumidityConfigUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the humidity configuration data as a TSensorConfig.
HumidityData (*) OnHumidityDataUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns the humidity data value.
HumidityPeriod OnHumidityPeriodUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the humidity period between sensor measurements. Valid range is from 10 to 255 (the unit is 10 ms).
IO Service IOServiceConfig OnIOServiceConfigUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the IO service configuration data.
IOServiceData OnIOServiceDataUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the IO service data.
IR Temperature Service IRTemperatureConfig OnIRTemperatureConfigUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the IR temperature configuration data as a TSensorConfig.
IRTemperatureData (*) OnIRTemperatureDataUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns the IR temperature data value.
IRTemperaturePeriod OnIRTemperaturePeriodUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the IR temperature period between sensor measurements. Valid range is from 30 to 255 (the unit is 10 ms).
Luxometer Service LuxometerConfig OnLuxometerConfigUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the luxometer configuration data as a TSensorConfig.
LuxometerData (*) OnLuxometerDataUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns the luxometer data value.
LuxometerPeriod OnLuxometerPeriodUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the luxometer period between sensor measurements. Valid range is from 10 to 255 (the unit is 10 ms).
Motion Sensor Service MotionData (*) OnMotionDataUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns the 9-axis motion sensor data value.
MotionSensorConfig OnMotionSensorConfigUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the motion sensor configuration data as a TMotionSensorConfig.
MotionSensorPeriod OnMotionSensorPeriodUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the motion sensor period between sensor measurements. Valid range is from 10 to 255 (the unit is 10 ms).
Over the Air Download Service OADImageBlock OnOADImageBlockUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the image block.
OADImageIdentify OnOADImageIdentifyUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the image identify.
Register Service RegisterServiceAddress OnRegisterServiceAddressUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the register address.
RegisterServiceDeviceID OnRegisterServiceDeviceIDUpdate
YesSubscriptionFeature.png
YesSubscriptionFeature.png
Returns and writes the register service deviceID.
Simple Key Service OnKeyPressStateUpdate
YesSubscriptionFeature.png
Returns the Key Press State value.

(*) Note: To either subscribe or read from this property the sensor must be enabled to provide data measurements. For more information, see Enabling Sensors.

Device Details

  • Device: Texas Instruments TI Sensor Tag
  • Model: CC2650
  • Firmware: 0.87
  • Technology: Bluetooth LE

Custom Data Types

The Texas Intruments Sensor Tag defines its custom data types in the following unit:

  • Iot.Device.TISensorTagTypes

Custom IR Temperature Sensor Data

The TIRTemperatureSensorData type contains the data returned from the IR temperature sensor.

  • Value: Raw array of bytes returned from the device.
  • IRTemperatureData: Returns the object temperature (IR temperature) value of the device (in Celsius degrees).
  • AmbientTemperatureData: Returns the ambient temperature value of the device (in Celsius degrees).

Custom Humidity Data

The THumiditySensorData type contains the data returned from humidity sensor.

  • Value: Raw array of bytes returned from the device.
  • HumiditySensorData: Relative humidity readings from the humidity sensor (in %RH).
  • HumiditySensorTemperature: Temperature reading from the humidity sensor (in Celsius degrees).

Custom Barometric Pressure Data

The TPressureSensorData type contains the barometric pressure data returned from the device.

  • Value: Raw array of bytes returned from the device.
  • PressureData: Returns the air pressure reading of the device (in mbar).

Custom Luxometer Data

The TLuxometerData type contains ambient light sensor data returned from the device.

  • Value: Raw array of bytes returned from the device.
  • LuxometerData: Illuminance of the light sensor (in Lux units).

Sensor Configuration Enumeration Type

The TSensorConfig is an enumeration type that is used to configure the sensor. Possible values are:

  • Sleep: Disables the sensor so that the consumption is minimized between measurements.
  • Start: Enables the sensor so that it provides data measurements that can be read.

Custom Motion Sensor Data

The TMotionSensorData type contains 9-axis motion sensor data returned from the device.

  • Value: Raw array of bytes returned from the device.
  • AccelerometerData: Returns accelerometer data of the 9-axis motion sensor of the device:
    • X: X-axis motion value of the accelerometer data (in g units).
    • Y: Y-axis motion value of the accelerometer data (in g units).
    • Z: Z-axis motion value of the accelerometer data (in g units).
  • GyroscopeData: Returns the gyroscope data of the 9-axis motion sensor of the device:
    • X: X-axis rotation value of the gyroscope data (in degrees/second units).
    • Y: Y-axis rotation value of the gyroscope data (in degrees/second units).
    • Z: Z-axis rotation value of the gyroscope data (in degrees/second units).
  • CompassData: Returns the compass data (magnetometer data) of the 9-axis motion sensor of the device:
    • X: X-axis magnetic field value of the compass data (in microTeslas units).
    • Y: Y-axis magnetic field value of the compass data (in microTeslas units).
    • Z: Z-axis magnetic field value of the compass data (in microTeslas units).

Motion Sensor Configuration Data

The TMotionSensorConfig type contains the set of motion sensors that are enabled in the device.

  • GyroXAxis: Enables the X-axis of the gyroscope.
  • GyroYAxis: Enables the Y-axis of the gyroscope.
  • GyroZAxis: Enables the Z-axis of the gyroscope.
  • AccelXAxis: Enables the X-axis of the accelerometer.
  • AccelYAxis: Enables the Y-axis of the accelerometer.
  • AccelZAxis: Enables the Z-axis of the accelerometer.
  • CompXAxis: Enables the X-axis of the compass.
  • CompYAxis: Enables the Y-axis of the compass.
  • CompZAxis: Enables the Z-axis of the compass.
  • RangeBit0: Enables the bit 0 value.
  • RangeBit1: Enables the bit 1 value.

Custom Key Press State

The TGattKeyPressStateConfig is an enumeration type that is used to configure the key press state configuration (to enable notifications for key hits on the sensor tag). Possible values are Disable, Key, PowerKey, and MagnetField.

Custom IO Service Data

The TIOServiceData contains the configuration of the IO service mode of the device.

  • RedLed: Returns if the red led is enabled.
  • GreenLed: Returns if the green led is enabled.
  • Buzzer: Returns if the buzzer is enabled.
  • TestMode: Sensor self test result.

Custom IO Service Configuration Data

The TIOServiceConfig is an enumeration type that is used to configure IO service mode. Possible values are Local, Remote, and Test.

Custom Register Service Address Data

The TRegisterAddress type contains register service address data returned from the device.

  • Value: Raw array of bytes returned from the device.
  • RegisterLength: The length of the address.
  • RegisterInternalAddr: The internal address value of the device.

Custom Register Service DeviceID Data

The TRegisterDeviceID type contains the register service deviceID from the device.

  • Value: Raw array of bytes returned from the device.
  • DeviceInterface: Returns the interface. Possible values are I2C0, I2C1, SPI1, SPI2, SPI3, and MCU.
  • DeviceAddress: Returns the device address value of the device.

Custom Gatt CCS Parameter Data

The TGattCCSParameter type contains the connection control service (CCS) parameters.

  • Value: Raw array of bytes returned from the device.
  • ConnectionInterval: Connection interval value.
  • SlaveLatency: The slave latency value.
  • SupervisionTimeout: The supervision timeout value of the readings from the device.

Custom OAD Image Identify

The TOADImageIdentify type contains data to identify the type of image that is active in the device.

  • Value: Raw array of bytes returned from the device.
  • ImageType: Type of image that is installed in the device. Possible values are TypeA (0) and TypeB (1).
  • ImageSize: Size of the installed image.
  • UserData: User data.

Custom OAD Image Block

The TOADImageBlock type contains data to identify the type of image that is active in the device.

  • Value: Raw array of bytes returned from the device.
  • BlockNo: Block number that was set for the current image block.
  • OADImageBlock: Image block data to be written to the device.

Known Issues

Discovery Mechanism

Enabling Sensors

  • To enable or disable the motion sensor:
    • Create an instance of TMotionSensorConfig and specify which 9-axis motion sensor you want to enable.
  • To enable or disable the humidity sensor, the barometric sensor or the luxometer sensor:
    • Set Start or Sleep by either writing TSensorConfig.Start or TSensorConfig.Sleep to the <PropertyName>Config property. See the example below for more details.

Delphi:

procedure TForm1.Switch1Switch(Sender: TObject);
begin
  if(Switch1.IsChecked) then
  begin
    TISensorTag1.HumidityConfig := TSensorConfig.Start;
    TISensorTag1.SubscribeHumidityData;
  end
  else 
   begin
     TISensorTag1.UnsubscribeHumidityData;
     TISensorTag1.HumidityConfig := TSensorConfig.Sleep;
   end;
end;

C++:

void __fastcall TForm1::Switch1Switch(TObject *Sender)
{
  if (CheckBox1->IsChecked) 
  {
   FTISensorTag1->SubscribeHumidityData();
   FTISensorTag1->HumidityConfig = TSensorConfig::Start;
  }
  else
  {
   FTISensorTag1->UnsubscribeHumidityData();
   FTISensorTag1->HumidityConfig = TSensorConfig::Sleep;
  }
}

Device Specific Information

  • Requires Firmware Revision 1.20 or higher.
  • Click on the left (red) button on the device to start Bluetooth.

See Also