![]() |
ThreeSpace API 2
2.0.6.1
Serial wrapper for YEI 3-Space Sensor Protocol
|
00001 /********************************************/ 00023 #ifndef YEI_THREESPACE_API_H_INCLUDED 00024 #define YEI_THREESPACE_API_H_INCLUDED 00025 #include <stdio.h> 00026 #include <string.h> 00027 #include <windows.h> 00028 #include <process.h> 00029 #include <math.h> 00030 00031 00032 #ifdef __cplusplus 00033 extern "C" 00034 { 00035 #endif 00036 00037 #if defined(__GNUC__) 00038 #define _inline inline 00039 #endif 00040 00041 #if defined(TSS_STATIC_LIB) 00042 #define TSS_EXPORT 00043 #elif defined(_MSC_VER) 00044 #define TSS_EXPORT __declspec(dllexport) 00045 #elif defined(__GNUC__) 00046 #define TSS_EXPORT __attribute__ ((dllexport)) 00047 #endif 00048 00049 /********************************************/ 00052 #define TSS_INFINITE_DURATION 0xffffffff 00053 00054 /********************************************/ 00058 #define TSS_DEFAULT_WIRLESSS_RETRIES 5 00059 00060 /********************************************/ 00064 #define TSS_DEFAULT_BAUD_RATE 115200 00065 00066 /********************************************/ 00069 typedef unsigned int TSS_Device_Id; 00070 00071 /********************************************/ 00074 typedef enum TSS_Device_Id_Mask 00075 { 00076 TSS_NO_DEVICE_ID = 0x00800000, 00077 TSS_BOOTLOADER_ID = 0x01000000, 00078 TSS_DONGLE_ID = 0x02000000, 00079 TSS_USB_ID = 0x04000000, 00080 TSS_EMBEDDED_ID = 0x08000000, 00081 TSS_WIRELESS_ID = 0x10000000, 00082 TSS_WIRELESS_W_ID = 0x20000000, 00083 TSS_DATALOGGER_ID = 0x40000000, 00084 TSS_BLUETOOTH_ID = 0x80000000, 00085 TSS_NO_DONGLE_ID = 0xfd000000, 00086 TSS_ALL_SENSORS_ID = 0xff000000 00087 }TSS_Device_Id_Mask; 00088 00089 /********************************************/ 00092 typedef enum TSS_Timestamp_Mode{ 00093 TSS_TIMESTAMP_NONE, 00094 TSS_TIMESTAMP_SENSOR, 00095 TSS_TIMESTAMP_SYSTEM 00096 }TSS_Timestamp_Mode; 00097 00098 /********************************************/ 00101 typedef enum TSS_Error 00102 { 00103 TSS_NO_ERROR, 00104 TSS_ERROR_COMMAND_FAIL, 00105 TSS_INVALID_COMMAND, 00106 TSS_INVALID_ID, 00107 TSS_ERROR_PARAMETER, 00108 TSS_ERROR_TIMEOUT, 00109 TSS_ERROR_WRITE, 00110 TSS_ERROR_READ, 00111 TSS_ERROR_STREAM_SLOTS_FULL, 00112 TSS_ERROR_STREAM_CONFIG, 00113 TSS_ERROR_MEMORY, 00114 TSS_ERROR_FIRMWARE_INCOMPATIBLE 00115 }TSS_Error; 00116 00117 static const char* const TSS_Error_String[] = { 00118 "TSS_NO_ERROR", 00119 "TSS_ERROR_COMMAND_FAIL", 00120 "TSS_INVALID_COMMAND", 00121 "TSS_INVALID_ID", 00122 "TSS_ERROR_PARAMETER", 00123 "TSS_ERROR_TIMEOUT", 00124 "TSS_ERROR_WRITE", 00125 "TSS_ERROR_READ", 00126 "TSS_ERROR_STREAM_SLOTS_FULL", 00127 "TSS_ERROR_STREAM_CONFIG", 00128 "TSS_ERROR_MEMORY", 00129 "TSS_ERROR_FIRMWARE_INCOMPATIBLE" 00130 }; 00131 00132 /********************************************/ 00135 typedef enum TSS_Firmware_Compatibility 00136 { 00137 TSS_FW_NOT_COMPATIBLE, 00138 TSS_FW_20R7_COMPATIBLE, 00139 TSS_FW_20R10_COMPATIBLE, 00140 TSS_FW_20R13_COMPATIBLE 00141 }TSS_Firmware_Compatibility; 00142 00143 static const char* const TSS_Firmware_Version_String[] = { 00144 "00Jan2000A00", 00145 "25Apr2013A00", 00146 "21Jun2013A00", 00147 "28Aug2013A00" 00148 }; 00149 00150 /********************************************/ 00158 typedef enum TSS_Stream_Command_Enum 00159 { 00160 TSS_GET_TARED_ORIENTATION_AS_QUATERNION = 0x00, 00161 TSS_GET_TARED_ORIENTATION_AS_EULER_ANGLES = 0x01, 00162 TSS_GET_TARED_ORIENTATION_AS_ROTATION_MATRIX = 0x02, 00163 TSS_GET_TARED_ORIENTATION_AS_AXIS_ANGLE = 0x03, 00164 TSS_GET_TARED_ORIENTATION_AS_TWO_VECTOR = 0x04, 00165 TSS_GET_DIFFERENCE_QUATERNION = 0x05, 00166 TSS_GET_UNTARED_ORIENTATION_AS_QUATERNION = 0x06, 00167 TSS_GET_UNTARED_ORIENTATION_AS_EULER_ANGLES = 0x07, 00168 TSS_GET_UNTARED_ORIENTATION_AS_ROTATION_MATRIX = 0x08, 00169 TSS_GET_UNTARED_ORIENTATION_AS_AXIS_ANGLE = 0x09, 00170 TSS_GET_UNTARED_ORIENTATION_AS_TWO_VECTOR = 0x0a, 00171 TSS_GET_TARED_TWO_VECTOR_IN_SENSOR_FRAME = 0x0b, 00172 TSS_GET_UNTARED_TWO_VECTOR_IN_SENSOR_FRAME = 0x0c, 00173 TSS_GET_ALL_NORMALIZED_COMPONENT_SENSOR_DATA = 0x20, 00174 TSS_GET_NORMALIZED_GYRO_RATE = 0x21, 00175 TSS_GET_NORMALIZED_ACCELEROMETER_VECTOR = 0x22, 00176 TSS_GET_NORMALIZED_COMPASS_VECTOR = 0x23, 00177 TSS_GET_ALL_CORRECTED_COMPONENT_SENSOR_DATA = 0x25, 00178 TSS_GET_CORRECTED_GYRO_RATE = 0x26, 00179 TSS_GET_CORRECTED_ACCELEROMETER_VECTOR = 0x27, 00180 TSS_GET_CORRECTED_COMPASS_VECTOR = 0x28, 00181 TSS_GET_CORRECTED_LINEAR_ACCELERATION_IN_GLOBAL_SPACE = 0x29, 00182 TSS_GET_TEMPERATURE_C = 0x2b, 00183 TSS_GET_TEMPERATURE_F = 0x2c, 00184 TSS_GET_CONFIDENCE_FACTOR = 0x2d, 00185 TSS_GET_ALL_RAW_COMPONENT_SENSOR_DATA = 0x40, 00186 TSS_GET_RAW_GYROSCOPE_RATE = 0x41, 00187 TSS_GET_RAW_ACCELEROMETER_DATA = 0x42, 00188 TSS_GET_RAW_COMPASS_DATA = 0x43, 00189 TSS_GET_BATTERY_VOLTAGE = 0xc9, 00190 TSS_GET_BATTERY_PERCENT_REMAINING = 0xca, 00191 TSS_GET_BATTERY_STATUS = 0xcb, 00192 TSS_GET_BUTTON_STATE = 0xfa, 00193 TSS_NULL = 0xff 00194 }TSS_Stream_Command_Enum; 00195 00196 /********************************************/ 00199 typedef unsigned char TSS_Stream_Command; 00200 00201 /********************************************/ 00204 typedef enum TSS_Find 00205 { 00206 TSS_FIND_BTL = 0x00000001, 00207 TSS_FIND_USB = 0x00000002, 00208 TSS_FIND_DNG = 0x00000004, 00209 TSS_FIND_WL = 0x00000008, 00210 TSS_FIND_EM = 0x00000010, 00211 TSS_FIND_DL = 0x00000020, 00212 TSS_FIND_BT = 0x00000040, 00213 TSS_FIND_UNKNOWN = 0x80000000, 00214 TSS_FIND_ALL_KNOWN = 0x7fffffff, 00215 TSS_FIND_ALL = 0xffffffff 00216 }TSS_Find; 00217 00218 /********************************************/ 00221 typedef enum TSS_Type 00222 { 00223 TSS_UNKNOWN, 00224 TSS_BTL, 00225 TSS_USB, 00226 TSS_DNG, 00227 TSS_WL, 00228 TSS_WL_W, 00229 TSS_EM, 00230 TSS_DL, 00231 TSS_BT, 00232 }TSS_Type; 00233 00234 static const char* const TSS_Type_String[] = { 00235 "TSS_UNKNOWN", 00236 "TSS_BTL", 00237 "TSS_USB", 00238 "TSS_DNG", 00239 "TSS_WL", //wireless wired (connected to PC) 00240 "TSS_WL_W", //wireless wireless 00241 "TSS_EM", 00242 "TSS_DL", 00243 "TSS_BT", 00244 }; 00245 00246 /********************************************/ 00249 typedef enum TSS_Axis_Direction 00250 { 00251 TSS_XYZ, 00252 TSS_XZY, 00253 TSS_YXZ, 00254 TSS_YZX, 00255 TSS_ZXY, 00256 TSS_ZYX, 00257 }TSS_Axis_Direction; 00258 00259 /********************************************/ 00262 typedef enum TSS_Filter_Mode 00263 { 00264 TSS_FILTER_IMU, 00265 TSS_FILTER_KALMAN, 00266 TSS_FILTER_ALTERNATING_KALMAN, 00267 TSS_FILTER_COMPLEMENTARY, 00268 TSS_FILTER_QUATERNION_GRADIENT_DECENT, 00269 }TSS_Filter_Mode; 00270 00271 /********************************************/ 00274 typedef struct TSS_ComPort 00275 { 00276 char com_port[32]; 00277 char friendly_name[64]; 00278 int sensor_type; //Change? 00279 }TSS_ComPort; 00280 00281 /********************************************/ 00284 typedef struct TSS_ComInfo 00285 { 00286 TSS_Type device_type; 00287 unsigned int serial_number; 00288 char firmware_version[13]; 00289 char hardware_version[33]; 00290 TSS_Firmware_Compatibility fw_compatibility; 00291 }TSS_ComInfo; 00292 00293 /********************************************/ 00303 typedef void CALLBACK TSS_CallBack(TSS_Device_Id device, char * output_data, unsigned int output_data_len, unsigned int * timestamp); 00304 00305 // Allow to call those directly when not using a DLL 00306 #ifdef TSS_STATIC_LIB 00307 TSS_EXPORT int tss_initThreeSpaceAPI(); 00308 TSS_EXPORT int tss_delThreeSpaceAPI(); 00309 #endif // TSS_STATIC_LIB 00310 00311 //convenience functions 00312 /********************************************/ 00320 TSS_EXPORT void tss_parseAxisDirections(unsigned char axis_byte, TSS_Axis_Direction * axis_order, char * neg_x, char * neg_y, char * neg_z); 00321 00322 /********************************************/ 00330 TSS_EXPORT unsigned char tss_generateAxisDirections(TSS_Axis_Direction axis_order, char neg_x, char neg_y, char neg_z); 00331 00332 //API specific functions 00333 // Sets the amount of retries on wireless commands via software, note there is 3 hardware retries by default 00334 /********************************************/ 00340 TSS_EXPORT void tss_setSoftwareWirelessRetries(unsigned int retries); 00341 00342 /********************************************/ 00346 TSS_EXPORT unsigned int tss_getSoftwareWirelessRetries(); 00347 00348 /********************************************/ 00352 TSS_EXPORT void tss_setDefaultCreateDeviceBaudRate(int baud_rate); 00353 00354 /********************************************/ 00358 TSS_EXPORT int tss_getDefaultCreateDeviceBaudRate(); 00359 00360 /********************************************/ 00368 TSS_EXPORT int tss_getComPorts(TSS_ComPort * ports_vec, unsigned int ports_vec_size, unsigned int offset, unsigned int filter); 00369 00370 /********************************************/ 00379 TSS_EXPORT TSS_Error tss_getTSDeviceInfoFromComPort(const char* com_port, TSS_ComInfo * com_info); 00380 00381 /********************************************/ 00389 TSS_EXPORT TSS_Error tss_getTSDeviceInfo(TSS_Device_Id device, TSS_ComInfo * com_info); 00390 00391 /********************************************/ 00401 TSS_EXPORT TSS_Device_Id tss_createTSDeviceU16Str(const wchar_t* com_port, TSS_Timestamp_Mode mode); 00402 00403 /********************************************/ 00413 TSS_EXPORT TSS_Device_Id tss_createTSDeviceStr(const char* com_port, TSS_Timestamp_Mode mode); 00414 00415 /********************************************/ 00426 TSS_EXPORT TSS_Device_Id tss_createTSDeviceU16StrEx(const wchar_t* com_port, int baud_rate, TSS_Timestamp_Mode mode); 00427 00428 /********************************************/ 00439 TSS_EXPORT TSS_Device_Id tss_createTSDeviceStrEx(const char* com_port, int baud_rate, TSS_Timestamp_Mode mode); 00440 00441 /********************************************/ 00447 TSS_EXPORT TSS_Error tss_closeTSDevice(TSS_Device_Id device); 00448 00449 /********************************************/ 00461 TSS_EXPORT TSS_Error tss_getSensorFromDongle(TSS_Device_Id device, int logical_id, unsigned int * w_ts_device); 00462 00463 /********************************************/ 00474 TSS_EXPORT TSS_Error tss_setSensorToDongle(TSS_Device_Id device, int logical_id, unsigned int w_serial_number); 00475 00476 /********************************************/ 00482 TSS_EXPORT TSS_Error tss_setTimestampMode(TSS_Device_Id device, TSS_Timestamp_Mode mode); 00483 00484 /********************************************/ 00496 TSS_EXPORT TSS_Error tss_getLastStreamData(TSS_Device_Id device, char * output_data, unsigned int output_data_len, unsigned int * timestamp); 00497 00498 /********************************************/ 00510 TSS_EXPORT TSS_Error tss_getLastStreamData2(TSS_Device_Id device, char * output_data, unsigned int output_data_len, unsigned int * timestamp); 00511 00512 /********************************************/ 00524 TSS_EXPORT TSS_Error tss_getLatestStreamData(TSS_Device_Id device, char * output_data, unsigned int output_data_len, unsigned int timeout, unsigned int * timestamp); 00525 00526 /********************************************/ 00535 TSS_EXPORT TSS_Error tss_setNewDataCallBack(TSS_Device_Id device, TSS_CallBack callback_func); 00536 00537 /********************************************/ 00565 TSS_EXPORT TSS_Error tss_sendRawCommandFormatted( TSS_Device_Id device, 00566 unsigned char command, 00567 char* in_data, 00568 char* in_data_detail, 00569 char * rtn_data, 00570 char* rtn_data_detail, 00571 unsigned int * timestamp); 00572 00573 /********************************************/ 00591 TSS_EXPORT TSS_Error tss_sendRawCommand(TSS_Device_Id device, 00592 unsigned char command, 00593 char* in_data, 00594 int in_data_size, 00595 char * rtn_data, 00596 int rtn_data_size, 00597 unsigned int * timestamp); 00598 00599 //Remove debug func 00600 //TSS_EXPORT TSS_Error tss_getRecordCount(TSS_Device_Id device); 00601 00602 /********************************************/ 00610 TSS_EXPORT int tss_isConnected(TSS_Device_Id device, int reconnect); 00611 00612 /********************************************/ 00618 TSS_EXPORT TSS_Error tss_getTSDeviceType(TSS_Device_Id device, TSS_Type * device_type); 00619 00620 /********************************************/ 00627 TSS_EXPORT int tss_resetThreeSpaceAPI(); 00628 00629 /********************************************/ 00645 TSS_EXPORT int tss_createTSDevicesBySerialNumber( unsigned int * serial_list, 00646 TSS_Device_Id * device_list, 00647 int list_length, 00648 int search_wireless, 00649 int search_unknown_devices, 00650 TSS_Timestamp_Mode mode); 00651 00652 /********************************************/ 00663 TSS_EXPORT int tss_getDeviceIDs( TSS_Device_Id * device_list, int list_length, int offset, int filter); 00664 00665 //Orientation Commands 00666 // 0(0x00) 00667 /*****************AutoGenerated*************/ 00678 TSS_EXPORT TSS_Error tss_getTaredOrientationAsQuaternion(TSS_Device_Id device, float * quat4, unsigned int * timestamp); 00679 // 1(0x01) 00680 /*****************AutoGenerated*************/ 00691 TSS_EXPORT TSS_Error tss_getTaredOrientationAsEulerAngles(TSS_Device_Id device, float * euler3, unsigned int * timestamp); 00692 // 2(0x02) 00693 /*****************AutoGenerated*************/ 00704 TSS_EXPORT TSS_Error tss_getTaredOrientationAsRotationMatrix(TSS_Device_Id device, float * matrix9, unsigned int * timestamp); 00705 // 3(0x03) 00706 /*****************AutoGenerated*************/ 00717 TSS_EXPORT TSS_Error tss_getTaredOrientationAsAxisAngle(TSS_Device_Id device, float * axis_angle4, unsigned int * timestamp); 00718 // 4(0x04) 00719 /*****************AutoGenerated*************/ 00730 TSS_EXPORT TSS_Error tss_getTaredOrientationAsTwoVector(TSS_Device_Id device, float * forward3, float * down3, unsigned int * timestamp); 00731 // 5(0x05) 00732 /*****************AutoGenerated*************/ 00743 TSS_EXPORT TSS_Error tss_getDifferenceQuaternion(TSS_Device_Id device, float * quat4, unsigned int * timestamp); 00744 // 6(0x06) 00745 /*****************AutoGenerated*************/ 00756 TSS_EXPORT TSS_Error tss_getUntaredOrientationAsQuaternion(TSS_Device_Id device, float * quat4, unsigned int * timestamp); 00757 // 7(0x07) 00758 /*****************AutoGenerated*************/ 00769 TSS_EXPORT TSS_Error tss_getUntaredOrientationAsEulerAngles(TSS_Device_Id device, float * euler3, unsigned int * timestamp); 00770 // 8(0x08) 00771 /*****************AutoGenerated*************/ 00782 TSS_EXPORT TSS_Error tss_getUntaredOrientationAsRotationMatrix(TSS_Device_Id device, float * matrix9, unsigned int * timestamp); 00783 // 9(0x09) 00784 /*****************AutoGenerated*************/ 00795 TSS_EXPORT TSS_Error tss_getUntaredOrientationAsAxisAngle(TSS_Device_Id device, float * axis_angle4, unsigned int * timestamp); 00796 // 10(0x0a) 00797 /*****************AutoGenerated*************/ 00808 TSS_EXPORT TSS_Error tss_getUntaredOrientationAsTwoVector(TSS_Device_Id device, float * north3, float * gravity3, unsigned int * timestamp); 00809 // 11(0x0b) 00810 /*****************AutoGenerated*************/ 00821 TSS_EXPORT TSS_Error tss_getTaredTwoVectorInSensorFrame(TSS_Device_Id device, float * forward3, float * down3, unsigned int * timestamp); 00822 // 12(0x0c) 00823 /*****************AutoGenerated*************/ 00834 TSS_EXPORT TSS_Error tss_getUntaredTwoVectorInSensorFrame(TSS_Device_Id device, float * north3, float * gravity3, unsigned int * timestamp); 00835 00836 //Embedded Commands 00837 // 29(0x1d) 00838 /*****************AutoGenerated*************/ 00849 TSS_EXPORT TSS_Error tss_setInterruptType(TSS_Device_Id device, unsigned char mode, unsigned char pin, unsigned int * timestamp); 00850 // 30(0x1e) 00851 /*****************AutoGenerated*************/ 00862 TSS_EXPORT TSS_Error tss_getInterruptType(TSS_Device_Id device, unsigned char * mode, unsigned char * pin, unsigned int * timestamp); 00863 // 31(0x1f) 00864 /*****************AutoGenerated*************/ 00875 TSS_EXPORT TSS_Error tss_getInterruptStatus(TSS_Device_Id device, unsigned char * status, unsigned int * timestamp); 00876 00877 //Normalized Data Commands 00878 // 32(0x20) 00879 /*****************AutoGenerated*************/ 00890 TSS_EXPORT TSS_Error tss_getAllNormalizedComponentSensorData(TSS_Device_Id device, float * gyro_rate3, float * gravity_direction3, float * north_direction3, unsigned int * timestamp); 00891 // 33(0x21) 00892 /*****************AutoGenerated*************/ 00903 TSS_EXPORT TSS_Error tss_getNormalizedGyroRate(TSS_Device_Id device, float * gyro_rate3, unsigned int * timestamp); 00904 // 34(0x22) 00905 /*****************AutoGenerated*************/ 00916 TSS_EXPORT TSS_Error tss_getNormalizedAccelerometerVector(TSS_Device_Id device, float * gravity_direction3, unsigned int * timestamp); 00917 // 35(0x23) 00918 /*****************AutoGenerated*************/ 00929 TSS_EXPORT TSS_Error tss_getNormalizedCompassVector(TSS_Device_Id device, float * north_direction3, unsigned int * timestamp); 00930 00931 //Corrected Data Commands 00932 // 37(0x25) 00933 /*****************AutoGenerated*************/ 00944 TSS_EXPORT TSS_Error tss_getAllCorrectedComponentSensorData(TSS_Device_Id device, float * gyro_rate3, float * accelerometer3, float * compass3, unsigned int * timestamp); 00945 // 38(0x26) 00946 /*****************AutoGenerated*************/ 00957 TSS_EXPORT TSS_Error tss_getCorrectedGyroRate(TSS_Device_Id device, float * gyro_rate3, unsigned int * timestamp); 00958 // 39(0x27) 00959 /*****************AutoGenerated*************/ 00970 TSS_EXPORT TSS_Error tss_getCorrectedAccelerometerVector(TSS_Device_Id device, float * accelerometer3, unsigned int * timestamp); 00971 // 40(0x28) 00972 /*****************AutoGenerated*************/ 00983 TSS_EXPORT TSS_Error tss_getCorrectedCompassVector(TSS_Device_Id device, float * compass3, unsigned int * timestamp); 00984 // 41(0x29) 00985 /*****************AutoGenerated*************/ 00996 TSS_EXPORT TSS_Error tss_getCorrectedLinearAccelerationInGlobalSpace(TSS_Device_Id device, float * accelerometer3, unsigned int * timestamp); 00997 00998 //Other Data Commands 00999 // 43(0x2b) 01000 /*****************AutoGenerated*************/ 01011 TSS_EXPORT TSS_Error tss_getTemperatureC(TSS_Device_Id device, float * temperature, unsigned int * timestamp); 01012 // 44(0x2c) 01013 /*****************AutoGenerated*************/ 01024 TSS_EXPORT TSS_Error tss_getTemperatureF(TSS_Device_Id device, float * temperature, unsigned int * timestamp); 01025 // 45(0x2d) 01026 /*****************AutoGenerated*************/ 01037 TSS_EXPORT TSS_Error tss_getConfidenceFactor(TSS_Device_Id device, float * confidence, unsigned int * timestamp); 01038 01039 //Data-Logging Commands 01040 // 57(0x39) 01041 /*****************AutoGenerated*************/ 01052 TSS_EXPORT TSS_Error tss_turnOnMassStorage(TSS_Device_Id device, unsigned int * timestamp); 01053 // 58(0x3a) 01054 /*****************AutoGenerated*************/ 01065 TSS_EXPORT TSS_Error tss_turnOffMassStorage(TSS_Device_Id device, unsigned int * timestamp); 01066 // 59(0x3b) 01067 /*****************AutoGenerated*************/ 01078 TSS_EXPORT TSS_Error tss_formatAndInitializeSDCard(TSS_Device_Id device, unsigned int * timestamp); 01079 // 60(0x3c) 01080 /*****************AutoGenerated*************/ 01091 TSS_EXPORT TSS_Error tss_beginDataLoggingSession(TSS_Device_Id device, unsigned int * timestamp); 01092 // 61(0x3d) 01093 /*****************AutoGenerated*************/ 01104 TSS_EXPORT TSS_Error tss_endDataLoggingSession(TSS_Device_Id device, unsigned int * timestamp); 01105 // 62(0x3e) 01106 /*****************AutoGenerated*************/ 01117 TSS_EXPORT TSS_Error tss_setClockValues(TSS_Device_Id device, unsigned char month, 01118 unsigned char day, 01119 unsigned char year, 01120 unsigned char hour, 01121 unsigned char minute, 01122 unsigned char second, 01123 unsigned int * timestamp); 01124 // 63(0x3f) 01125 /*****************AutoGenerated*************/ 01136 TSS_EXPORT TSS_Error tss_getClockValues(TSS_Device_Id device, unsigned char * month, 01137 unsigned char * day, 01138 unsigned char * year, 01139 unsigned char * hour, 01140 unsigned char * minute, 01141 unsigned char * second, 01142 unsigned int * timestamp); 01143 01144 //Raw Data Commands 01145 // 64(0x40) 01146 /*****************AutoGenerated*************/ 01157 TSS_EXPORT TSS_Error tss_getAllRawComponentSensorData(TSS_Device_Id device, float * gyro_rate3, float * accelerometer3, float * compass3, unsigned int * timestamp); 01158 // 65(0x41) 01159 /*****************AutoGenerated*************/ 01170 TSS_EXPORT TSS_Error tss_getRawGyroscopeRate(TSS_Device_Id device, float * gyro_rate3, unsigned int * timestamp); 01171 // 66(0x42) 01172 /*****************AutoGenerated*************/ 01183 TSS_EXPORT TSS_Error tss_getRawAccelerometerData(TSS_Device_Id device, float * accelerometer3, unsigned int * timestamp); 01184 // 67(0x43) 01185 /*****************AutoGenerated*************/ 01196 TSS_EXPORT TSS_Error tss_getRawCompassData(TSS_Device_Id device, float * compass3, unsigned int * timestamp); 01197 01198 //Streaming Commands 01199 // 80(0x50) 01200 /*****************AutoGenerated*************/ 01211 TSS_EXPORT TSS_Error tss_setStreamingSlots(TSS_Device_Id device, const TSS_Stream_Command * slots8, unsigned int * timestamp); 01212 // 81(0x51) 01213 /*****************AutoGenerated*************/ 01224 TSS_EXPORT TSS_Error tss_getStreamingSlots(TSS_Device_Id device, TSS_Stream_Command * slots8, unsigned int * timestamp); 01225 // 82(0x52) 01226 /*****************AutoGenerated*************/ 01237 TSS_EXPORT TSS_Error tss_setStreamingTiming(TSS_Device_Id device, unsigned int interval, unsigned int duration, unsigned int delay, unsigned int * timestamp); 01238 // 83(0x53) 01239 /*****************AutoGenerated*************/ 01250 TSS_EXPORT TSS_Error tss_getStreamingTiming(TSS_Device_Id device, unsigned int * interval, unsigned int * duration, unsigned int * delay, unsigned int * timestamp); 01251 // 84(0x54) 01252 /*****************AutoGenerated*************/ 01263 TSS_EXPORT TSS_Error tss_getStreamingBatch(TSS_Device_Id device, char * output_data, unsigned int output_data_len, unsigned int * timestamp); 01264 // 85(0x55) 01265 /*****************AutoGenerated*************/ 01276 TSS_EXPORT TSS_Error tss_startStreaming(TSS_Device_Id device, unsigned int * timestamp); 01277 // 86(0x56) 01278 /*****************AutoGenerated*************/ 01289 TSS_EXPORT TSS_Error tss_stopStreaming(TSS_Device_Id device, unsigned int * timestamp); 01290 // 95(0x5f) 01291 /*****************AutoGenerated*************/ 01302 TSS_EXPORT TSS_Error tss_updateCurrentTimestamp(TSS_Device_Id device, unsigned int set_timestamp, unsigned int * timestamp); 01303 01304 //Configuration Write Commands 01305 // 16(0x10) 01306 /*****************AutoGenerated*************/ 01317 TSS_EXPORT TSS_Error tss_setEulerAngleDecompositionOrder(TSS_Device_Id device, unsigned char order, unsigned int * timestamp); 01318 // 17(0x11) 01319 /*****************AutoGenerated*************/ 01330 TSS_EXPORT TSS_Error tss_setMagnetoresistiveThreshold(TSS_Device_Id device, float threshold, unsigned int trust_frames, float lockout_decay, float perturbation_detection_value, unsigned int * timestamp); 01331 // 18(0x12) 01332 /*****************AutoGenerated*************/ 01343 TSS_EXPORT TSS_Error tss_setAccelerometerResistanceThreshold(TSS_Device_Id device, float threshold, unsigned int lockout_frames, unsigned int * timestamp); 01344 // 19(0x13) 01345 /*****************AutoGenerated*************/ 01356 TSS_EXPORT TSS_Error tss_offsetWithCurrentOrientation(TSS_Device_Id device, unsigned int * timestamp); 01357 // 20(0x14) 01358 /*****************AutoGenerated*************/ 01369 TSS_EXPORT TSS_Error tss_resetBaseOffset(TSS_Device_Id device, unsigned int * timestamp); 01370 // 21(0x15) 01371 /*****************AutoGenerated*************/ 01382 TSS_EXPORT TSS_Error tss_offsetWithQuaternion(TSS_Device_Id device, const float * quat4, unsigned int * timestamp); 01383 // 22(0x16) 01384 /*****************AutoGenerated*************/ 01395 TSS_EXPORT TSS_Error tss_setBaseOffsetWithCurrentOrientation(TSS_Device_Id device, unsigned int * timestamp); 01396 // 96(0x60) 01397 /*****************AutoGenerated*************/ 01408 TSS_EXPORT TSS_Error tss_tareWithCurrentOrientation(TSS_Device_Id device, unsigned int * timestamp); 01409 // 97(0x61) 01410 /*****************AutoGenerated*************/ 01421 TSS_EXPORT TSS_Error tss_tareWithQuaternion(TSS_Device_Id device, const float * quat4, unsigned int * timestamp); 01422 // 98(0x62) 01423 /*****************AutoGenerated*************/ 01434 TSS_EXPORT TSS_Error tss_tareWithRotationMatrix(TSS_Device_Id device, const float * matrix9, unsigned int * timestamp); 01435 // 99(0x63) 01436 /*****************AutoGenerated*************/ 01447 //TSS_EXPORT TSS_Error tss_setStaticAccelerometerRhoMode(TSS_Device_Id device, float rho_value, unsigned int * timestamp); 01448 TSS_EXPORT TSS_Error tss_setStaticAccelerometerTrustValue(TSS_Device_Id device, float trust_value, unsigned int * timestamp); 01449 // 100(0x64) 01450 /*****************AutoGenerated*************/ 01461 //TSS_EXPORT TSS_Error tss_setConfidenceAccelerometerRhoMode(TSS_Device_Id device, float min_rho_value, float max_rho_value, unsigned int * timestamp); 01462 TSS_EXPORT TSS_Error tss_setConfidenceAccelerometerTrustValues(TSS_Device_Id device, float min_trust_value, float max_trust_value, unsigned int * timestamp); 01463 // 101(0x65) 01464 /*****************AutoGenerated*************/ 01475 //TSS_EXPORT TSS_Error tss_setStaticCompassRhoMode(TSS_Device_Id device, float rho_value, unsigned int * timestamp); 01476 TSS_EXPORT TSS_Error tss_setStaticCompassTrustValue(TSS_Device_Id device, float trust_value, unsigned int * timestamp); 01477 // 102(0x66) 01478 /*****************AutoGenerated*************/ 01489 //TSS_EXPORT TSS_Error tss_setConfidenceCompassRhoMode(TSS_Device_Id device, float min_rho_value, float max_rho_value, unsigned int * timestamp); 01490 TSS_EXPORT TSS_Error tss_setConfidenceCompassTrustValues(TSS_Device_Id device, float min_trust_value, float max_trust_value, unsigned int * timestamp); 01491 // 103(0x67) 01492 /*****************AutoGenerated*************/ 01503 TSS_EXPORT TSS_Error tss_setDesiredUpdateRate(TSS_Device_Id device, unsigned int update_rate, unsigned int * timestamp); 01504 // 105(0x69) 01505 /*****************AutoGenerated*************/ 01516 TSS_EXPORT TSS_Error tss_setReferenceVectorMode(TSS_Device_Id device, unsigned char mode, unsigned int * timestamp); 01517 // 106(0x6a) 01518 /*****************AutoGenerated*************/ 01529 TSS_EXPORT TSS_Error tss_setOversampleRate(TSS_Device_Id device, unsigned char samples_per_iteration, unsigned int * timestamp); 01530 // 107(0x6b) 01531 /*****************AutoGenerated*************/ 01542 TSS_EXPORT TSS_Error tss_setGyroscopeEnabled(TSS_Device_Id device, unsigned char enabled, unsigned int * timestamp); 01543 // 108(0x6c) 01544 /*****************AutoGenerated*************/ 01555 TSS_EXPORT TSS_Error tss_setAccelerometerEnabled(TSS_Device_Id device, unsigned char enabled, unsigned int * timestamp); 01556 // 109(0x6d) 01557 /*****************AutoGenerated*************/ 01568 TSS_EXPORT TSS_Error tss_setCompassEnabled(TSS_Device_Id device, unsigned char enabled, unsigned int * timestamp); 01569 // 116(0x74) 01570 /*****************AutoGenerated*************/ 01581 TSS_EXPORT TSS_Error tss_setAxisDirections(TSS_Device_Id device, unsigned char axis_direction_byte, unsigned int * timestamp); 01582 // 117(0x75) 01583 /*****************AutoGenerated*************/ 01594 TSS_EXPORT TSS_Error tss_setRunningAveragePercent(TSS_Device_Id device, float running_average_percent, unsigned int * timestamp); 01595 // 118(0x76) 01596 /*****************AutoGenerated*************/ 01607 TSS_EXPORT TSS_Error tss_setCompassReferenceVector(TSS_Device_Id device, const float * reference_vector3, unsigned int * timestamp); 01608 // 119(0x77) 01609 /*****************AutoGenerated*************/ 01620 TSS_EXPORT TSS_Error tss_setAccelerometerReferenceVector(TSS_Device_Id device, const float * reference_vector3, unsigned int * timestamp); 01621 // 120(0x78) 01622 /*****************AutoGenerated*************/ 01633 TSS_EXPORT TSS_Error tss_resetKalmanFilter(TSS_Device_Id device, unsigned int * timestamp); 01634 // 121(0x79) 01635 /*****************AutoGenerated*************/ 01646 TSS_EXPORT TSS_Error tss_setAccelerometerRange(TSS_Device_Id device, unsigned char accelerometer_range_setting, unsigned int * timestamp); 01647 // 123(0x7b) 01648 /*****************AutoGenerated*************/ 01659 TSS_EXPORT TSS_Error tss_setFilterMode(TSS_Device_Id device, unsigned char mode, unsigned int * timestamp); 01660 // 124(0x7c) 01661 /*****************AutoGenerated*************/ 01672 TSS_EXPORT TSS_Error tss_setRunningAverageMode(TSS_Device_Id device, unsigned char mode, unsigned int * timestamp); 01673 // 125(0x7d) 01674 /*****************AutoGenerated*************/ 01685 TSS_EXPORT TSS_Error tss_setGyroscopeRange(TSS_Device_Id device, unsigned char gyroscope_range_setting, unsigned int * timestamp); 01686 // 126(0x7e) 01687 /*****************AutoGenerated*************/ 01698 TSS_EXPORT TSS_Error tss_setCompassRange(TSS_Device_Id device, unsigned char compass_range_setting, unsigned int * timestamp); 01699 01700 // Configuration Read Commands 01701 // 128(0x80) Get tare orientation as quaternion 01702 /*****************AutoGenerated*************/ 01713 TSS_EXPORT TSS_Error tss_getTareAsQuaternion(TSS_Device_Id device, float * quat4, unsigned int * timestamp); 01714 // 129(0x81) Get tare orientation as rotation matrix 01715 /*****************AutoGenerated*************/ 01726 TSS_EXPORT TSS_Error tss_getTareAsRotationMatrix(TSS_Device_Id device, float * matrix9, unsigned int * timestamp); 01727 // 130(0x82) 01728 /*****************AutoGenerated*************/ 01739 //TSS_EXPORT TSS_Error tss_getAccelerometerRhoValue(TSS_Device_Id device, unsigned char * rho_mode, float * rho_min, float * rho_max, unsigned int * timestamp); 01740 TSS_EXPORT TSS_Error tss_getAccelerometerTrustValues(TSS_Device_Id device, float * min_trust_value, float * max_trust_value, unsigned int * timestamp); 01741 // 131(0x83) 01742 /*****************AutoGenerated*************/ 01753 //TSS_EXPORT TSS_Error tss_getCompassRhoValue(TSS_Device_Id device, unsigned char * rho_mode, float * rho_min, float * rho_max, unsigned int * timestamp); 01754 TSS_EXPORT TSS_Error tss_getCompassTrustValues(TSS_Device_Id device, float * min_trust_value, float * max_trust_value, unsigned int * timestamp); 01755 // 132(0x84) 01756 /*****************AutoGenerated*************/ 01767 TSS_EXPORT TSS_Error tss_getCurrentUpdateRate(TSS_Device_Id device, unsigned int * last_update, unsigned int * timestamp); 01768 // 133(0x85) 01769 /*****************AutoGenerated*************/ 01780 TSS_EXPORT TSS_Error tss_getCompassReferenceVector(TSS_Device_Id device, float * reference_vector, unsigned int * timestamp); 01781 // 134(0x86) 01782 /*****************AutoGenerated*************/ 01793 TSS_EXPORT TSS_Error tss_getAccelerometerReferenceVector(TSS_Device_Id device, float * reference_vector, unsigned int * timestamp); 01794 // 135(0x87) 01795 /*****************AutoGenerated*************/ 01806 TSS_EXPORT TSS_Error tss_getReferenceVectorMode(TSS_Device_Id device, unsigned char * mode, unsigned int * timestamp); 01807 // 140(0x8c) 01808 /*****************AutoGenerated*************/ 01819 TSS_EXPORT TSS_Error tss_getGyroscopeEnabledState(TSS_Device_Id device, unsigned char * enabled, unsigned int * timestamp); 01820 // 141(0x8d) 01821 /*****************AutoGenerated*************/ 01832 TSS_EXPORT TSS_Error tss_getAccelerometerEnabledState(TSS_Device_Id device, unsigned char * enabled, unsigned int * timestamp); 01833 // 142(0x8e) 01834 /*****************AutoGenerated*************/ 01845 TSS_EXPORT TSS_Error tss_getCompassEnabledState(TSS_Device_Id device, unsigned char * enabled, unsigned int * timestamp); 01846 // 143(0x8f) 01847 /*****************AutoGenerated*************/ 01858 TSS_EXPORT TSS_Error tss_getAxisDirections(TSS_Device_Id device, unsigned char * axis_directions, unsigned int * timestamp); 01859 // 144(0x90) 01860 /*****************AutoGenerated*************/ 01871 TSS_EXPORT TSS_Error tss_getOversampleRate(TSS_Device_Id device, unsigned char * oversample_rate, unsigned int * timestamp); 01872 // 145(0x91) 01873 /*****************AutoGenerated*************/ 01884 TSS_EXPORT TSS_Error tss_getRunningAveragePercent(TSS_Device_Id device, float * running_average_percent, unsigned int * timestamp); 01885 // 146(0x92) 01886 /*****************AutoGenerated*************/ 01897 TSS_EXPORT TSS_Error tss_getDesiredUpdateRate(TSS_Device_Id device, unsigned int * update_rate, unsigned int * timestamp); 01898 // 148(0x94) 01899 /*****************AutoGenerated*************/ 01910 TSS_EXPORT TSS_Error tss_getAccelerometerRange(TSS_Device_Id device, unsigned char * accelerometer_range_setting, unsigned int * timestamp); 01911 // 152(0x98) 01912 /*****************AutoGenerated*************/ 01923 TSS_EXPORT TSS_Error tss_getFilterMode(TSS_Device_Id device, unsigned char * mode, unsigned int * timestamp); 01924 // 153(0x99) 01925 /*****************AutoGenerated*************/ 01936 TSS_EXPORT TSS_Error tss_getRunningAverageMode(TSS_Device_Id device, unsigned char * mode, unsigned int * timestamp); 01937 // 154(0x9a) 01938 /*****************AutoGenerated*************/ 01949 TSS_EXPORT TSS_Error tss_getGyroscopeRange(TSS_Device_Id device, unsigned char * gyroscope_range_setting, unsigned int * timestamp); 01950 // 155(0x9b) 01951 /*****************AutoGenerated*************/ 01962 TSS_EXPORT TSS_Error tss_getCompassRange(TSS_Device_Id device, unsigned char * compass_range_setting, unsigned int * timestamp); 01963 // 156(0x9c) 01964 /*****************AutoGenerated*************/ 01975 TSS_EXPORT TSS_Error tss_getEulerAngleDecompositionOrder(TSS_Device_Id device, unsigned char * order, unsigned int * timestamp); 01976 // 157(0x9d) 01977 /*****************AutoGenerated*************/ 01988 TSS_EXPORT TSS_Error tss_getMagnetoresistiveThreshold(TSS_Device_Id device, float * threshold, unsigned int * trust_frames, float * lockout_decay, float * perturbation_detection_value, unsigned int * timestamp); 01989 // 158(0x9e) 01990 /*****************AutoGenerated*************/ 02001 TSS_EXPORT TSS_Error tss_getAccelerometerResistanceThreshold(TSS_Device_Id device, float * threshold, unsigned int * lockout_frames, unsigned int * timestamp); 02002 // 159(0x9f) 02003 /*****************AutoGenerated*************/ 02014 TSS_EXPORT TSS_Error tss_getOffsetOrientationAsQuaternion(TSS_Device_Id device, float * quat4, unsigned int * timestamp); 02015 02016 //Calibration Commands 02017 // 160(0xa0) 02018 /*****************AutoGenerated*************/ 02029 TSS_EXPORT TSS_Error tss_setCompassCalibrationCoefficients(TSS_Device_Id device, const float * matrix9, const float * bias3, unsigned int * timestamp); 02030 // 161(0xa1) 02031 /*****************AutoGenerated*************/ 02042 TSS_EXPORT TSS_Error tss_setAccelerometerCalibrationCoefficients(TSS_Device_Id device,const float * matrix9, const float * bias3, unsigned int * timestamp); 02043 // 162(0xa2) 02044 /*****************AutoGenerated*************/ 02055 TSS_EXPORT TSS_Error tss_getCompassCalibrationCoefficients(TSS_Device_Id device, float * matrix9, float * bias3, unsigned int * timestamp); 02056 // 163(0xa3) 02057 /*****************AutoGenerated*************/ 02068 TSS_EXPORT TSS_Error tss_getAccelerometerCalibrationCoefficients(TSS_Device_Id device, float * matrix9, float * bias3, unsigned int * timestamp); 02069 // 164(0xa4) 02070 /*****************AutoGenerated*************/ 02081 TSS_EXPORT TSS_Error tss_getGyroscopeCalibrationCoefficients(TSS_Device_Id device, float * matrix9, float * bias3, unsigned int * timestamp); 02082 // 165(0xa5) 02083 /*****************AutoGenerated*************/ 02094 TSS_EXPORT TSS_Error tss_beginGyroscopeAutoCalibration(TSS_Device_Id device, unsigned int * timestamp); 02095 // 166(0xa6) 02096 /*****************AutoGenerated*************/ 02107 TSS_EXPORT TSS_Error tss_setGyroscopeCalibrationCoefficients(TSS_Device_Id device, const float * matrix9, const float * bias3, unsigned int * timestamp); 02108 // 169(0xa9) 02109 /*****************AutoGenerated*************/ 02120 TSS_EXPORT TSS_Error tss_setCalibrationMode(TSS_Device_Id device, unsigned char mode, unsigned int * timestamp); 02121 // 170(0xaa) 02122 /*****************AutoGenerated*************/ 02133 TSS_EXPORT TSS_Error tss_getCalibrationMode(TSS_Device_Id device, unsigned char * mode, unsigned int * timestamp); 02134 // 171(0xab) 02135 /*****************AutoGenerated*************/ 02146 TSS_EXPORT TSS_Error tss_setOrthoCalibrationDataPointFromCurrentOrientation(TSS_Device_Id device, unsigned int * timestamp); 02147 // 172(0xac) 02148 /*****************AutoGenerated*************/ 02159 TSS_EXPORT TSS_Error tss_setOrthoCalibrationDataPointFromVector(TSS_Device_Id device, unsigned char type, unsigned char index, const float * vector3, unsigned int * timestamp); 02160 // 173(0xad) 02161 /*****************AutoGenerated*************/ 02172 TSS_EXPORT TSS_Error tss_getOrthoCalibrationDataPoint(TSS_Device_Id device, unsigned char type, unsigned char index, float * vector3, unsigned int * timestamp); 02173 // 174(0xae) 02174 /*****************AutoGenerated*************/ 02185 TSS_EXPORT TSS_Error tss_performOrthoCalibration(TSS_Device_Id device, unsigned int * timestamp); 02186 // 175(0xaf) 02187 /*****************AutoGenerated*************/ 02198 TSS_EXPORT TSS_Error tss_clearOrthoCalibrationData(TSS_Device_Id device, unsigned int * timestamp); 02199 02200 //Dongle Commands 02201 // 176(0xb0) 02202 /*****************AutoGenerated*************/ 02213 TSS_EXPORT TSS_Error tss_setWirelessStreamingAutoFlushMode(TSS_Device_Id device, unsigned char mode, unsigned int * timestamp); 02214 // 177(0xb1) 02215 /*****************AutoGenerated*************/ 02226 TSS_EXPORT TSS_Error tss_getWirelessStreamingAutoFlushMode(TSS_Device_Id device, unsigned char * mode, unsigned int * timestamp); 02227 // 178(0xb2) 02228 /*****************AutoGenerated*************/ 02239 TSS_EXPORT TSS_Error tss_setWirelessStreamingManualFlushBitfield(TSS_Device_Id device, unsigned short manual_flush_bitfield, unsigned int * timestamp); 02240 // 179(0xb3) 02241 /*****************AutoGenerated*************/ 02252 TSS_EXPORT TSS_Error tss_getWirelessStreamingManualFlushBitfield(TSS_Device_Id device, unsigned short * manual_flush_bitfield, unsigned int * timestamp); 02253 // 180(0xb4) 02254 /*****************AutoGenerated*************/ 02265 TSS_EXPORT TSS_Error tss_getManualFlushSingle(TSS_Device_Id device, unsigned char index, char * data, int in_data_size, int * out_data_size, unsigned int * timestamp); 02266 // 181(0xb5) 02267 /*****************AutoGenerated*************/ 02278 TSS_EXPORT TSS_Error tss_getManualFlushBulk(TSS_Device_Id device, char * data, int in_data_size, int * out_data_size, unsigned int * timestamp); 02279 // 182(0xb6) 02280 /*****************AutoGenerated*************/ 02291 TSS_EXPORT TSS_Error tss_broadcastSynchronizationPulse(TSS_Device_Id device, unsigned int * timestamp); 02292 // 208(0xd0) 02293 /*****************AutoGenerated*************/ 02304 TSS_EXPORT TSS_Error tss_getSerialNumberAtLogicalID(TSS_Device_Id device, unsigned char logical_id, unsigned int * serial_number, unsigned int * timestamp); 02305 // 209(0xd1) 02306 /*****************AutoGenerated*************/ 02317 TSS_EXPORT TSS_Error tss_setSerialNumberAtLogicalID(TSS_Device_Id device, unsigned char logical_id, unsigned int serial_number, unsigned int * timestamp); 02318 // 210(0xd2) 02319 /*****************AutoGenerated*************/ 02330 TSS_EXPORT TSS_Error tss_getWirelessChannelNoiseLevels(TSS_Device_Id device, unsigned char * channel_strengths16, unsigned int * timestamp); 02331 // 211(0xd3) 02332 /*****************AutoGenerated*************/ 02343 TSS_EXPORT TSS_Error tss_setWirelessRetries(TSS_Device_Id device, unsigned char retries, unsigned int * timestamp); 02344 // 212(0xd4) 02345 /*****************AutoGenerated*************/ 02356 TSS_EXPORT TSS_Error tss_getWirelessRetries(TSS_Device_Id device, unsigned char * retries, unsigned int * timestamp); 02357 // 213(0xd5) 02358 /*****************AutoGenerated*************/ 02369 TSS_EXPORT TSS_Error tss_getWirelessSlotsOpen(TSS_Device_Id device, unsigned char * slots_open, unsigned int * timestamp); 02370 // 214(0xd6) 02371 /*****************AutoGenerated*************/ 02382 TSS_EXPORT TSS_Error tss_getSignalStrength(TSS_Device_Id device, unsigned char * last_packet_signal_strength, unsigned int * timestamp); 02383 // 219(0xdb) 02384 /*****************AutoGenerated*************/ 02395 TSS_EXPORT TSS_Error tss_setWirelessResponseHeaderBitfield(TSS_Device_Id device, unsigned int header_bitfield, unsigned int * timestamp); 02396 // 220(0xdc) 02397 /*****************AutoGenerated*************/ 02408 TSS_EXPORT TSS_Error tss_getWirelessResponseHeaderBitfield(TSS_Device_Id device, unsigned int * header_bitfield, unsigned int * timestamp); 02409 02410 //Wireless Sensor & Dongle Commands 02411 // 192(0xc0) 02412 /*****************AutoGenerated*************/ 02423 TSS_EXPORT TSS_Error tss_getWirelessPanID(TSS_Device_Id device, unsigned short * pan_id, unsigned int * timestamp); 02424 // 193(0xc1) 02425 /*****************AutoGenerated*************/ 02436 TSS_EXPORT TSS_Error tss_setWirelessPanID(TSS_Device_Id device, unsigned short pan_id, unsigned int * timestamp); 02437 // 194(0xc2) 02438 /*****************AutoGenerated*************/ 02449 TSS_EXPORT TSS_Error tss_getWirelessChannel(TSS_Device_Id device, unsigned char * channel, unsigned int * timestamp); 02450 // 195(0xc3) 02451 /*****************AutoGenerated*************/ 02462 TSS_EXPORT TSS_Error tss_setWirelessChannel(TSS_Device_Id device, unsigned char channel, unsigned int * timestamp); 02463 // 197(0xc5) 02464 /*****************AutoGenerated*************/ 02475 TSS_EXPORT TSS_Error tss_commitWirelessSettings(TSS_Device_Id device, unsigned int * timestamp); 02476 // 198(0xc6) 02477 /*****************AutoGenerated*************/ 02488 TSS_EXPORT TSS_Error tss_getWirelessAddress(TSS_Device_Id device, unsigned short * address, unsigned int * timestamp); 02489 02490 //Battery Commands 02491 // 201(0xc9) 02492 /*****************AutoGenerated*************/ 02503 TSS_EXPORT TSS_Error tss_getBatteryVoltage(TSS_Device_Id device, float * battery_voltage, unsigned int * timestamp); 02504 // 202(0xca) 02505 /*****************AutoGenerated*************/ 02516 TSS_EXPORT TSS_Error tss_getBatteryPercentRemaining(TSS_Device_Id device, unsigned char * battery_percent, unsigned int * timestamp); 02517 // 203(0xcb) 02518 /*****************AutoGenerated*************/ 02529 TSS_EXPORT TSS_Error tss_getBatteryStatus(TSS_Device_Id device, unsigned char * battery_charge_status, unsigned int * timestamp); 02530 02531 //General Commands 02532 // 196(0xc4) 02533 /*****************AutoGenerated*************/ 02544 TSS_EXPORT TSS_Error tss_setLEDMode(TSS_Device_Id device, unsigned char mode, unsigned int * timestamp); 02545 // 200(0xc8) 02546 /*****************AutoGenerated*************/ 02557 TSS_EXPORT TSS_Error tss_getLEDMode(TSS_Device_Id device, unsigned char * mode, unsigned int * timestamp); 02558 // 221(0xdd) 02559 /*****************AutoGenerated*************/ 02570 TSS_EXPORT TSS_Error tss_setWiredResponseHeaderBitfield(TSS_Device_Id device, unsigned int header_bitfield, unsigned int * timestamp); 02571 // 222(0xde) 02572 /*****************AutoGenerated*************/ 02583 TSS_EXPORT TSS_Error tss_getWiredResponseHeaderBitfield(TSS_Device_Id device, unsigned int * header_bitfield, unsigned int * timestamp); 02584 // 223(0xdf) note: adds null terminator 02585 /*****************AutoGenerated*************/ 02596 TSS_EXPORT TSS_Error tss_getFirmwareVersionString(TSS_Device_Id device, char * firmware_version13, unsigned int * timestamp); 02597 // 224(0xe0) 02598 /*****************AutoGenerated*************/ 02609 TSS_EXPORT TSS_Error tss_restoreFactorySettings(TSS_Device_Id device, unsigned int * timestamp); 02610 // 225(0xe1) 02611 /*****************AutoGenerated*************/ 02622 TSS_EXPORT TSS_Error tss_commitSettings(TSS_Device_Id device, unsigned int * timestamp); 02623 // 226(0xe2) 02624 /*****************AutoGenerated*************/ 02635 TSS_EXPORT TSS_Error tss_softwareReset(TSS_Device_Id device, unsigned int * timestamp); 02636 // 227(0xe3) 02637 /*****************AutoGenerated*************/ 02648 TSS_EXPORT TSS_Error tss_setSleepMode(TSS_Device_Id device,unsigned char mode, unsigned int * timestamp); 02649 // 228(0xe4) 02650 /*****************AutoGenerated*************/ 02661 TSS_EXPORT TSS_Error tss_getSleepMode(TSS_Device_Id device, unsigned char * mode, unsigned int * timestamp); 02662 // 229(0xe5) 02663 /*****************AutoGenerated*************/ 02674 TSS_EXPORT TSS_Error tss_enterBootloaderMode(TSS_Device_Id device, unsigned int * timestamp); 02675 // 230(0xe6) note: adds null terminator 02676 /*****************AutoGenerated*************/ 02687 TSS_EXPORT TSS_Error tss_getHardwareVersionString(TSS_Device_Id device, char * hardware_version33, unsigned int * timestamp); 02688 // 231(0xe7) 02689 /*****************AutoGenerated*************/ 02700 TSS_EXPORT TSS_Error tss_setUARTBaudRate(TSS_Device_Id device, unsigned int baud_rate, unsigned int * timestamp); 02701 // 232(0xe8) 02702 /*****************AutoGenerated*************/ 02713 TSS_EXPORT TSS_Error tss_getUARTBaudRate(TSS_Device_Id device, unsigned int * baud_rate, unsigned int * timestamp); 02714 // 233(0xe9) 02715 /*****************AutoGenerated*************/ 02726 TSS_EXPORT TSS_Error tss_setUSBMode(TSS_Device_Id device, unsigned int mode, unsigned int * timestamp); 02727 // 234(0xea) 02728 /*****************AutoGenerated*************/ 02739 TSS_EXPORT TSS_Error tss_getUSBMode(TSS_Device_Id device, unsigned int * mode, unsigned int * timestamp); 02740 // 237(0xed) 02741 /*****************AutoGenerated*************/ 02752 TSS_EXPORT TSS_Error tss_getSerialNumber(TSS_Device_Id device, unsigned int * serial_number, unsigned int * timestamp); 02753 // 238(0xee) 02754 /*****************AutoGenerated*************/ 02765 TSS_EXPORT TSS_Error tss_setLEDColor(TSS_Device_Id device,const float * rgb_color3, unsigned int * timestamp); 02766 // 239(0xef) 02767 /*****************AutoGenerated*************/ 02778 TSS_EXPORT TSS_Error tss_getLEDColor(TSS_Device_Id device, float * rgb_color3, unsigned int * timestamp); 02779 02780 //Wireless HID Commands 02781 // 215(0xd7) 02782 /*****************AutoGenerated*************/ 02793 TSS_EXPORT TSS_Error tss_setWirelessHIDUpdateRate(TSS_Device_Id device, unsigned char HID_update_rate, unsigned int * timestamp); 02794 // 216(0xd8) 02795 /*****************AutoGenerated*************/ 02806 TSS_EXPORT TSS_Error tss_getWirelessHIDUpdateRate(TSS_Device_Id device, unsigned char * HID_update_rate, unsigned int * timestamp); 02807 // 217(0xd9) 02808 /*****************AutoGenerated*************/ 02819 TSS_EXPORT TSS_Error tss_setWirelessHIDAsynchronousMode(TSS_Device_Id device, unsigned char HID_communication_mode , unsigned int * timestamp); 02820 // 218(0xda) 02821 /*****************AutoGenerated*************/ 02832 TSS_EXPORT TSS_Error tss_getWirelessHIDAsynchronousMode(TSS_Device_Id device, unsigned char * HID_communication_mode , unsigned int * timestamp); 02833 // 240(0xf0) 02834 /*****************AutoGenerated*************/ 02845 TSS_EXPORT TSS_Error tss_setJoystickLogicalID(TSS_Device_Id device, unsigned char logical_ID , unsigned int * timestamp); 02846 // 241(0xf1) 02847 /*****************AutoGenerated*************/ 02858 TSS_EXPORT TSS_Error tss_setMouseLogicalID(TSS_Device_Id device, unsigned char * logical_ID , unsigned int * timestamp); 02859 // 242(0xf2) 02860 /*****************AutoGenerated*************/ 02871 TSS_EXPORT TSS_Error tss_getJoystickLogicalID(TSS_Device_Id device, unsigned char * logical_ID , unsigned int * timestamp); 02872 // 243(0xf3) 02873 /*****************AutoGenerated*************/ 02884 TSS_EXPORT TSS_Error tss_getMouseLogicalID(TSS_Device_Id device, unsigned char * logical_ID , unsigned int * timestamp); 02885 02886 //Wired HID Commands 02887 // 240(0xf0) 02888 /*****************AutoGenerated*************/ 02899 TSS_EXPORT TSS_Error tss_setJoystickEnabled(TSS_Device_Id device, unsigned char enabled_state , unsigned int * timestamp); 02900 // 241(0xf1) 02901 /*****************AutoGenerated*************/ 02912 TSS_EXPORT TSS_Error tss_setMouseEnabled(TSS_Device_Id device, unsigned char enabled_state , unsigned int * timestamp); 02913 // 242(0xf2) 02914 /*****************AutoGenerated*************/ 02925 TSS_EXPORT TSS_Error tss_getJoystickEnabled(TSS_Device_Id device, unsigned char * enabled_state , unsigned int * timestamp); 02926 // 243(0xf3) 02927 /*****************AutoGenerated*************/ 02938 TSS_EXPORT TSS_Error tss_getMouseEnabled(TSS_Device_Id device, unsigned char * enabled_state , unsigned int * timestamp); 02939 02940 //General HID Commands 02941 // 244(0xf4) 02942 /*****************AutoGenerated*************/ 02953 TSS_EXPORT TSS_Error tss_setControlMode(TSS_Device_Id device, unsigned char control_class, unsigned char control_index, unsigned char handler_index, unsigned int * timestamp); 02954 // 245(0xf5) 02955 /*****************AutoGenerated*************/ 02966 TSS_EXPORT TSS_Error tss_setControlData(TSS_Device_Id device, unsigned char control_class, unsigned char control_index, unsigned char data_point_index, float data_point, unsigned int * timestamp); 02967 // 246(0xf6) 02968 /*****************AutoGenerated*************/ 02979 TSS_EXPORT TSS_Error tss_getControlMode(TSS_Device_Id device, unsigned char control_class, unsigned char control_index, unsigned char * handler_index, unsigned int * timestamp); 02980 // 247(0xf7) 02981 /*****************AutoGenerated*************/ 02992 TSS_EXPORT TSS_Error tss_getControlData(TSS_Device_Id device, unsigned char control_class, unsigned char control_index, unsigned char data_point_index, float * data_point, unsigned int * timestamp); 02993 // 248(0xf8) 02994 /*****************AutoGenerated*************/ 03005 TSS_EXPORT TSS_Error tss_setButtonGyroDisableLength(TSS_Device_Id device, unsigned char number_of_frames, unsigned int * timestamp); 03006 // 249(0xf9) 03007 /*****************AutoGenerated*************/ 03018 TSS_EXPORT TSS_Error tss_getButtonGyroDisableLength(TSS_Device_Id device, unsigned char * number_of_frames, unsigned int * timestamp); 03019 // 250(0xfa) 03020 /*****************AutoGenerated*************/ 03031 TSS_EXPORT TSS_Error tss_getButtonState(TSS_Device_Id device, unsigned char * button_state, unsigned int * timestamp); 03032 // 251(0xfb) 03033 /*****************AutoGenerated*************/ 03044 TSS_EXPORT TSS_Error tss_setMouseAbsoluteRelativeMode(TSS_Device_Id device, unsigned char mode, unsigned int * timestamp); 03045 // 252(0xfc) 03046 /*****************AutoGenerated*************/ 03057 TSS_EXPORT TSS_Error tss_getMouseAbsoluteRelativeMode(TSS_Device_Id device, unsigned char * mode, unsigned int * timestamp); 03058 // 253(0xfd) 03059 /*****************AutoGenerated*************/ 03070 TSS_EXPORT TSS_Error tss_setJoystickAndMousePresentRemoved(TSS_Device_Id device, unsigned char joystick, unsigned char mouse, unsigned int * timestamp); 03071 // 254(0xfe) 03072 /*****************AutoGenerated*************/ 03083 TSS_EXPORT TSS_Error tss_getJoystickAndMousePresentRemoved(TSS_Device_Id device, unsigned char * joystick, unsigned char * mouse, unsigned int * timestamp); 03084 03085 03086 03087 #ifdef __cplusplus 03088 } 03089 #endif 03090 03091 #endif // YEI_THREESPACE_API_H_INCLUDED