/*******************************************************************************
* Copyright (c) 2011, 2016 Eurotech and/or its affiliates
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Eurotech
*******************************************************************************/
package org.eclipse.kura.example.ble.tisensortag;
import java.util.UUID;
public class TiSensorTagGatt {
// These values are for TI CC2541 and TI CC2650
// Refer to http://processors.wiki.ti.com/images/archive/a/a8/20130111154127!BLE_SensorTag_GATT_Server.pdf for the
// CC2541
// and http://www.ti.com/ww/en/wireless_connectivity/sensortag2015/tearDown.html#main for the CC2560
// Firmware revision
public static final String HANDLE_FIRMWARE_REVISION_2541 = "0x0018";
public static final String HANDLE_FIRMWARE_REVISION_2650 = "0x0014";
// Temperature sensor
// CC2541
public static final String HANDLE_TEMP_SENSOR_VALUE_2541 = "0x0025";
public static final String HANDLE_TEMP_SENSOR_NOTIFICATION_2541 = "0x0026";
public static final String HANDLE_TEMP_SENSOR_ENABLE_2541 = "0x0029";
// CC 2650
public static final String HANDLE_TEMP_SENSOR_VALUE_2650 = "0x0021";
public static final String HANDLE_TEMP_SENSOR_NOTIFICATION_2650 = "0x0022";
public static final String HANDLE_TEMP_SENSOR_ENABLE_2650 = "0x0024";
public static final String HANDLE_TEMP_SENSOR_PERIOD_2650 = "0x0026";
public static final UUID UUID_TEMP_SENSOR_VALUE = UUID.fromString("f000aa01-0451-4000-b000-000000000000");
public static final UUID UUID_TEMP_SENSOR_ENABLE = UUID.fromString("f000aa02-0451-4000-b000-000000000000");
public static final UUID UUID_TEMP_SENSOR_PERIOD = UUID.fromString("f000aa03-0451-4000-b000-000000000000");
// Accelerometer sensor
// CC2541
public static final String HANDLE_ACC_SENSOR_VALUE_2541 = "0x002d";
public static final String HANDLE_ACC_SENSOR_NOTIFICATION_2541 = "0x002e";
public static final String HANDLE_ACC_SENSOR_ENABLE_2541 = "0x0031";
public static final String HANDLE_ACC_SENSOR_PERIOD_2541 = "0x0034";
public static final UUID UUID_ACC_SENSOR_VALUE = UUID.fromString("f000aa11-0451-4000-b000-000000000000");
public static final UUID UUID_ACC_SENSOR_ENABLE = UUID.fromString("f000aa12-0451-4000-b000-000000000000");
public static final UUID UUID_ACC_SENSOR_PERIOD = UUID.fromString("f000aa13-0451-4000-b000-000000000000");
// Humidity sensor
// CC2541
public static final String HANDLE_HUM_SENSOR_VALUE_2541 = "0x0038";
public static final String HANDLE_HUM_SENSOR_NOTIFICATION_2541 = "0x0039";
public static final String HANDLE_HUM_SENSOR_ENABLE_2541 = "0x003c";
// CC2650
public static final String HANDLE_HUM_SENSOR_VALUE_2650 = "0x0029";
public static final String HANDLE_HUM_SENSOR_NOTIFICATION_2650 = "0x002a";
public static final String HANDLE_HUM_SENSOR_ENABLE_2650 = "0x002c";
public static final String HANDLE_HUM_SENSOR_PERIOD_2650 = "0x002E";
public static final UUID UUID_HUM_SENSOR_VALUE = UUID.fromString("f000aa21-0451-4000-b000-000000000000");
public static final UUID UUID_HUM_SENSOR_ENABLE = UUID.fromString("f000aa22-0451-4000-b000-000000000000");
public static final UUID UUID_HUM_SENSOR_PERIOD = UUID.fromString("f000aa23-0451-4000-b000-000000000000");
// Magnetometer sensor
// CC2541
public static final String HANDLE_MAG_SENSOR_VALUE_2541 = "0x0040";
public static final String HANDLE_MAG_SENSOR_NOTIFICATION_2541 = "0x0041";
public static final String HANDLE_MAG_SENSOR_ENABLE_2541 = "0x0044";
public static final String HANDLE_MAG_SENSOR_PERIOD_2541 = "0x0047";
public static final UUID UUID_MAG_SENSOR_VALUE = UUID.fromString("f000aa31-0451-4000-b000-000000000000");
public static final UUID UUID_MAG_SENSOR_ENABLE = UUID.fromString("f000aa32-0451-4000-b000-000000000000");
public static final UUID UUID_MAG_SENSOR_PERIOD = UUID.fromString("f000aa33-0451-4000-b000-000000000000");
// Pressure sensor
// CC2541 (Firm. 1.4)
public static final String HANDLE_PRE_SENSOR_VALUE_2541_1_4 = "0x004b";
public static final String HANDLE_PRE_SENSOR_NOTIFICATION_2541_1_4 = "0x004c";
public static final String HANDLE_PRE_SENSOR_ENABLE_2541_1_4 = "0x004f";
public static final String HANDLE_PRE_CALIBRATION_2541_1_4 = "0x0052";
// CC2541 (Firm. 1.5)
public static final String HANDLE_PRE_SENSOR_VALUE_2541_1_5 = "0x0051";
public static final String HANDLE_PRE_SENSOR_NOTIFICATION_2541_1_5 = "0x0052";
public static final String HANDLE_PRE_SENSOR_ENABLE_2541_1_5 = "0x0055";
public static final String HANDLE_PRE_CALIBRATION_2541_1_5 = "0x005b";
// CC2650
public static final String HANDLE_PRE_SENSOR_VALUE_2650 = "0x0031";
public static final String HANDLE_PRE_SENSOR_NOTIFICATION_2650 = "0x0032";
public static final String HANDLE_PRE_SENSOR_ENABLE_2650 = "0x0034";
public static final String HANDLE_PRE_SENSOR_PERIOD_2650 = "0x0036";
public static final UUID UUID_PRE_SENSOR_VALUE = UUID.fromString("f000aa41-0451-4000-b000-000000000000");
public static final UUID UUID_PRE_SENSOR_ENABLE = UUID.fromString("f000aa42-0451-4000-b000-000000000000");
public static final UUID UUID_PRE_SENSOR_CALIBRATION = UUID.fromString("f000aa43-0451-4000-b000-000000000000");
public static final UUID UUID_PRE_SENSOR_PERIOD = UUID.fromString("f000aa44-0451-4000-b000-000000000000");
// Gyroscope sensor
// CC2541
public static final String HANDLE_GYR_SENSOR_VALUE_2541 = "0x0057";
public static final String HANDLE_GYR_SENSOR_NOTIFICATION_2541 = "0x0058";
public static final String HANDLE_GYR_SENSOR_ENABLE_2541 = "0x005b";
public static final UUID UUID_GYR_SENSOR_VALUE = UUID.fromString("f000aa51-0451-4000-b000-000000000000");
public static final UUID UUID_GYR_SENSOR_ENABLE = UUID.fromString("f000aa52-0451-4000-b000-000000000000");
// Keys
// CC2541
public static final String HANDLE_KEYS_STATUS_2541 = "0x005f";
public static final String HANDLE_KEYS_NOTIFICATION_2541 = "0x0060";
// CC2650
public static final String HANDLE_KEYS_STATUS_2650 = "0x0049";
public static final String HANDLE_KEYS_NOTIFICATION_2650 = "0x004A";
public static final UUID UUID_KEYS_STATUS = UUID.fromString("f000ffe1-0451-4000-b000-000000000000");
// Ambient Light sensor
// CC2650
public static final String HANDLE_OPTO_SENSOR_VALUE_2650 = "0x0041";
public static final String HANDLE_OPTO_SENSOR_NOTIFICATION_2650 = "0x0042";
public static final String HANDLE_OPTO_SENSOR_ENABLE_2650 = "0x0044";
public static final String HANDLE_OPTO_SENSOR_PERIOD_2650 = "0x0046";
public static final UUID UUID_OPTO_SENSOR_VALUE = UUID.fromString("f000aa71-0451-4000-b000-000000000000");
public static final UUID UUID_OPTO_SENSOR_ENABLE = UUID.fromString("f000aa72-0451-4000-b000-000000000000");
public static final UUID UUID_OPTO_SENSOR_PERIOD = UUID.fromString("f000aa73-0451-4000-b000-000000000000");
// Movement sensor (accelerometer, gyroscope and magnetometer)
// CC2560
public static final String HANDLE_MOV_SENSOR_VALUE_2650 = "0x0039";
public static final String HANDLE_MOV_SENSOR_NOTIFICATION_2650 = "0x003A";
public static final String HANDLE_MOV_SENSOR_ENABLE_2650 = "0x003C";
public static final String HANDLE_MOV_SENSOR_PERIOD_2650 = "0x003E";
public static final UUID UUID_MOV_SENSOR_VALUE = UUID.fromString("f000aa81-0451-4000-b000-000000000000");
public static final UUID UUID_MOV_SENSOR_ENABLE = UUID.fromString("f000aa82-0451-4000-b000-000000000000");
public static final UUID UUID_MOV_SENSOR_PERIOD = UUID.fromString("f000aa83-0451-4000-b000-000000000000");
// IO Service (leds and buzzer)
// CC2560
public static final String HANDLE_IO_SENSOR_VALUE_2650 = "0x004E";
public static final String HANDLE_IO_SENSOR_ENABLE_2650 = "0x0050";
public static final UUID UUID_IO_SENSOR_VALUE = UUID.fromString("f000aa65-0451-4000-b000-000000000000");
public static final UUID UUID_IO_SENSOR_ENABLE = UUID.fromString("f000aa66-0451-4000-b000-000000000000");
}