summaryrefslogtreecommitdiffstats
path: root/libsensors/mlsdk/mllite/dmpKey.h
diff options
context:
space:
mode:
Diffstat (limited to 'libsensors/mlsdk/mllite/dmpKey.h')
-rw-r--r--libsensors/mlsdk/mllite/dmpKey.h398
1 files changed, 398 insertions, 0 deletions
diff --git a/libsensors/mlsdk/mllite/dmpKey.h b/libsensors/mlsdk/mllite/dmpKey.h
new file mode 100644
index 0000000..3e2e667
--- /dev/null
+++ b/libsensors/mlsdk/mllite/dmpKey.h
@@ -0,0 +1,398 @@
+/*
+ $License:
+ Copyright 2011 InvenSense, Inc.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ $
+ */
+#ifndef DMPKEY_H__
+#define DMPKEY_H__
+
+#define KEY_CFG_25 0
+#define KEY_CFG_24 (KEY_CFG_25+1)
+#define KEY_CFG_26 (KEY_CFG_24+1)
+#define KEY_CFG_21 (KEY_CFG_26+1)
+#define KEY_CFG_20 (KEY_CFG_21+1)
+#define KEY_CFG_TAP4 (KEY_CFG_20+1)
+#define KEY_CFG_TAP5 (KEY_CFG_TAP4+1)
+#define KEY_CFG_TAP6 (KEY_CFG_TAP5+1)
+#define KEY_CFG_TAP7 (KEY_CFG_TAP6+1)
+#define KEY_CFG_TAP0 (KEY_CFG_TAP7+1)
+#define KEY_CFG_TAP1 (KEY_CFG_TAP0+1)
+#define KEY_CFG_TAP2 (KEY_CFG_TAP1+1)
+#define KEY_CFG_TAP3 (KEY_CFG_TAP2+1)
+#define KEY_CFG_TAP_QUANTIZE (KEY_CFG_TAP3+1)
+#define KEY_CFG_TAP_JERK (KEY_CFG_TAP_QUANTIZE+1)
+#define KEY_CFG_TAP_SAVE_ACCB (KEY_CFG_TAP_JERK+1)
+#define KEY_CFG_TAP_CLEAR_STICKY (KEY_CFG_TAP_SAVE_ACCB+1)
+#define KEY_FCFG_ACCEL_INPUT (KEY_CFG_TAP_CLEAR_STICKY +1)
+#define KEY_FCFG_ACCEL_INIT (KEY_FCFG_ACCEL_INPUT+1)
+#define KEY_CFG_23 (KEY_FCFG_ACCEL_INIT+1)
+#define KEY_FCFG_1 (KEY_CFG_23+1)
+#define KEY_FCFG_3 (KEY_FCFG_1+1)
+#define KEY_FCFG_2 (KEY_FCFG_3+1)
+#define KEY_CFG_3D (KEY_FCFG_2+1)
+#define KEY_CFG_3B (KEY_CFG_3D+1)
+#define KEY_CFG_3C (KEY_CFG_3B+1)
+#define KEY_FCFG_5 (KEY_CFG_3C+1)
+#define KEY_FCFG_4 (KEY_FCFG_5+1)
+#define KEY_FCFG_7 (KEY_FCFG_4+1)
+#define KEY_FCFG_FSCALE (KEY_FCFG_7+1)
+#define KEY_FCFG_AZ (KEY_FCFG_FSCALE+1)
+#define KEY_FCFG_6 (KEY_FCFG_AZ+1)
+#define KEY_FCFG_LSB4 (KEY_FCFG_6+1)
+#define KEY_CFG_12 (KEY_FCFG_LSB4+1)
+#define KEY_CFG_14 (KEY_CFG_12+1)
+#define KEY_CFG_15 (KEY_CFG_14+1)
+#define KEY_CFG_16 (KEY_CFG_15+1)
+#define KEY_CFG_18 (KEY_CFG_16+1)
+#define KEY_CFG_6 (KEY_CFG_18 + 1)
+#define KEY_CFG_7 (KEY_CFG_6+1)
+#define KEY_CFG_4 (KEY_CFG_7+1)
+#define KEY_CFG_5 (KEY_CFG_4+1)
+#define KEY_CFG_2 (KEY_CFG_5+1)
+#define KEY_CFG_3 (KEY_CFG_2+1)
+#define KEY_CFG_1 (KEY_CFG_3+1)
+#define KEY_CFG_EXTERNAL (KEY_CFG_1+1)
+#define KEY_CFG_8 (KEY_CFG_EXTERNAL+1)
+#define KEY_CFG_9 (KEY_CFG_8+1)
+#define KEY_CFG_ORIENT_3 (KEY_CFG_9 + 1)
+#define KEY_CFG_ORIENT_2 (KEY_CFG_ORIENT_3 + 1)
+#define KEY_CFG_ORIENT_1 (KEY_CFG_ORIENT_2 + 1)
+#define KEY_CFG_GYRO_SOURCE (KEY_CFG_ORIENT_1 + 1)
+#define KEY_CFG_ORIENT_IRQ_1 (KEY_CFG_GYRO_SOURCE + 1)
+#define KEY_CFG_ORIENT_IRQ_2 (KEY_CFG_ORIENT_IRQ_1 + 1)
+#define KEY_CFG_ORIENT_IRQ_3 (KEY_CFG_ORIENT_IRQ_2 + 1)
+#define KEY_FCFG_MAG_VAL (KEY_CFG_ORIENT_IRQ_3 + 1)
+#define KEY_FCFG_MAG_MOV (KEY_FCFG_MAG_VAL + 1)
+
+#define KEY_D_0_22 (KEY_FCFG_MAG_MOV + 1)
+#define KEY_D_0_24 (KEY_D_0_22+1)
+#define KEY_D_0_36 (KEY_D_0_24+1)
+#define KEY_D_0_52 (KEY_D_0_36+1)
+#define KEY_D_0_96 (KEY_D_0_52+1)
+#define KEY_D_0_104 (KEY_D_0_96+1)
+#define KEY_D_0_108 (KEY_D_0_104+1)
+#define KEY_D_0_163 (KEY_D_0_108+1)
+#define KEY_D_0_188 (KEY_D_0_163+1)
+#define KEY_D_0_192 (KEY_D_0_188+1)
+#define KEY_D_0_224 (KEY_D_0_192+1)
+#define KEY_D_0_228 (KEY_D_0_224+1)
+#define KEY_D_0_232 (KEY_D_0_228+1)
+#define KEY_D_0_236 (KEY_D_0_232+1)
+
+#define KEY_DMP_PREVPTAT (KEY_D_0_236+1)
+#define KEY_D_1_2 (KEY_DMP_PREVPTAT+1)
+#define KEY_D_1_4 (KEY_D_1_2 + 1)
+#define KEY_D_1_8 (KEY_D_1_4 + 1)
+#define KEY_D_1_10 (KEY_D_1_8+1)
+#define KEY_D_1_24 (KEY_D_1_10+1)
+#define KEY_D_1_28 (KEY_D_1_24+1)
+#define KEY_D_1_92 (KEY_D_1_28+1)
+#define KEY_D_1_96 (KEY_D_1_92+1)
+#define KEY_D_1_98 (KEY_D_1_96+1)
+#define KEY_D_1_106 (KEY_D_1_98+1)
+#define KEY_D_1_108 (KEY_D_1_106+1)
+#define KEY_D_1_112 (KEY_D_1_108+1)
+#define KEY_D_1_128 (KEY_D_1_112+1)
+#define KEY_D_1_152 (KEY_D_1_128+1)
+#define KEY_D_1_168 (KEY_D_1_152+1)
+#define KEY_D_1_175 (KEY_D_1_168+1)
+#define KEY_D_1_178 (KEY_D_1_175+1)
+#define KEY_D_1_179 (KEY_D_1_178+1)
+#define KEY_D_1_236 (KEY_D_1_179+1)
+#define KEY_D_1_244 (KEY_D_1_236+1)
+#define KEY_D_2_12 (KEY_D_1_244+1)
+#define KEY_D_2_96 (KEY_D_2_12+1)
+#define KEY_D_2_108 (KEY_D_2_96+1)
+#define KEY_D_2_244 (KEY_D_2_108+1)
+#define KEY_D_2_248 (KEY_D_2_244+1)
+#define KEY_D_2_252 (KEY_D_2_248+1)
+
+// Compass Keys
+#define KEY_CPASS_BIAS_X (KEY_D_2_252+1)
+#define KEY_CPASS_BIAS_Y (KEY_CPASS_BIAS_X+1)
+#define KEY_CPASS_BIAS_Z (KEY_CPASS_BIAS_Y+1)
+#define KEY_CPASS_MTX_00 (KEY_CPASS_BIAS_Z+1)
+#define KEY_CPASS_MTX_01 (KEY_CPASS_MTX_00+1)
+#define KEY_CPASS_MTX_02 (KEY_CPASS_MTX_01+1)
+#define KEY_CPASS_MTX_10 (KEY_CPASS_MTX_02+1)
+#define KEY_CPASS_MTX_11 (KEY_CPASS_MTX_10+1)
+#define KEY_CPASS_MTX_12 (KEY_CPASS_MTX_11+1)
+#define KEY_CPASS_MTX_20 (KEY_CPASS_MTX_12+1)
+#define KEY_CPASS_MTX_21 (KEY_CPASS_MTX_20+1)
+#define KEY_CPASS_MTX_22 (KEY_CPASS_MTX_21+1)
+
+// Mantis Keys
+#define KEY_CFG_MOTION_BIAS (KEY_CPASS_MTX_22+1)
+
+#define KEY_DMP_TAPW_MIN (KEY_CFG_MOTION_BIAS+1)
+#define KEY_DMP_TAP_THR_X (KEY_DMP_TAPW_MIN+1)
+#define KEY_DMP_TAP_THR_Y (KEY_DMP_TAP_THR_X+1)
+#define KEY_DMP_TAP_THR_Z (KEY_DMP_TAP_THR_Y+1)
+#define KEY_DMP_SH_TH_Y (KEY_DMP_TAP_THR_Z+1)
+#define KEY_DMP_SH_TH_X (KEY_DMP_SH_TH_Y+1)
+#define KEY_DMP_SH_TH_Z (KEY_DMP_SH_TH_X+1)
+#define KEY_DMP_ORIENT (KEY_DMP_SH_TH_Z+1)
+#define KEY_D_ACT0 (KEY_DMP_ORIENT+1)
+#define KEY_D_ACSX (KEY_D_ACT0+1)
+#define KEY_D_ACSY (KEY_D_ACSX+1)
+#define KEY_D_ACSZ (KEY_D_ACSY+1)
+
+// Pedometer Standalone only keys
+#define KEY_D_PEDSTD_BP_B (KEY_D_ACSZ+1)
+#define KEY_D_PEDSTD_HP_A (KEY_D_PEDSTD_BP_B+1)
+#define KEY_D_PEDSTD_HP_B (KEY_D_PEDSTD_HP_A+1)
+#define KEY_D_PEDSTD_BP_A4 (KEY_D_PEDSTD_HP_B+1)
+#define KEY_D_PEDSTD_BP_A3 (KEY_D_PEDSTD_BP_A4+1)
+#define KEY_D_PEDSTD_BP_A2 (KEY_D_PEDSTD_BP_A3+1)
+#define KEY_D_PEDSTD_BP_A1 (KEY_D_PEDSTD_BP_A2+1)
+#define KEY_D_PEDSTD_INT_THRSH (KEY_D_PEDSTD_BP_A1+1)
+#define KEY_D_PEDSTD_CLIP (KEY_D_PEDSTD_INT_THRSH+1)
+#define KEY_D_PEDSTD_SB (KEY_D_PEDSTD_CLIP+1)
+#define KEY_D_PEDSTD_SB_TIME (KEY_D_PEDSTD_SB+1)
+#define KEY_D_PEDSTD_PEAKTHRSH (KEY_D_PEDSTD_SB_TIME+1)
+#define KEY_D_PEDSTD_TIML (KEY_D_PEDSTD_PEAKTHRSH+1)
+#define KEY_D_PEDSTD_TIMH (KEY_D_PEDSTD_TIML+1)
+#define KEY_D_PEDSTD_PEAK (KEY_D_PEDSTD_TIMH+1)
+#define KEY_D_PEDSTD_TIMECTR (KEY_D_PEDSTD_PEAK+1)
+#define KEY_D_PEDSTD_STEPCTR (KEY_D_PEDSTD_TIMECTR+1)
+#define KEY_D_PEDSTD_WALKTIME (KEY_D_PEDSTD_STEPCTR+1)
+
+// EIS Keys
+#define KEY_P_EIS_FIFO_FOOTER (KEY_D_PEDSTD_WALKTIME+1)
+#define KEY_P_EIS_FIFO_YSHIFT (KEY_P_EIS_FIFO_FOOTER+1)
+#define KEY_P_EIS_DATA_RATE (KEY_P_EIS_FIFO_YSHIFT+1)
+#define KEY_P_EIS_FIFO_XSHIFT (KEY_P_EIS_DATA_RATE+1)
+#define KEY_P_EIS_FIFO_SYNC (KEY_P_EIS_FIFO_XSHIFT+1)
+#define KEY_P_EIS_FIFO_ZSHIFT (KEY_P_EIS_FIFO_SYNC+1)
+#define KEY_P_EIS_FIFO_READY (KEY_P_EIS_FIFO_ZSHIFT+1)
+#define KEY_DMP_FOOTER (KEY_P_EIS_FIFO_READY+1)
+#define KEY_DMP_INTX_HC (KEY_DMP_FOOTER+1)
+#define KEY_DMP_INTX_PH (KEY_DMP_INTX_HC+1)
+#define KEY_DMP_INTX_SH (KEY_DMP_INTX_PH+1)
+#define KEY_DMP_AINV_SH (KEY_DMP_INTX_SH +1)
+#define KEY_DMP_A_INV_XH (KEY_DMP_AINV_SH+1)
+#define KEY_DMP_AINV_PH (KEY_DMP_A_INV_XH+1)
+#define KEY_DMP_CTHX_H (KEY_DMP_AINV_PH+1)
+#define KEY_DMP_CTHY_H (KEY_DMP_CTHX_H+1)
+#define KEY_DMP_CTHZ_H (KEY_DMP_CTHY_H+1)
+#define KEY_DMP_NCTHX_H (KEY_DMP_CTHZ_H+1)
+#define KEY_DMP_NCTHY_H (KEY_DMP_NCTHX_H+1)
+#define KEY_DMP_NCTHZ_H (KEY_DMP_NCTHY_H+1)
+#define KEY_DMP_CTSQ_XH (KEY_DMP_NCTHZ_H+1)
+#define KEY_DMP_CTSQ_YH (KEY_DMP_CTSQ_XH+1)
+#define KEY_DMP_CTSQ_ZH (KEY_DMP_CTSQ_YH+1)
+#define KEY_DMP_INTX_H (KEY_DMP_CTSQ_ZH+1)
+#define KEY_DMP_INTY_H (KEY_DMP_INTX_H+1)
+#define KEY_DMP_INTZ_H (KEY_DMP_INTY_H+1)
+#define KEY_DMP_HPX_H (KEY_DMP_INTZ_H+1)
+#define KEY_DMP_HPY_H (KEY_DMP_HPX_H+1)
+#define KEY_DMP_HPZ_H (KEY_DMP_HPY_H+1)
+
+// Stream Keys
+#define KEY_STREAM_P_GYRO_Z (KEY_DMP_HPZ_H + 1)
+#define KEY_STREAM_P_GYRO_Y (KEY_STREAM_P_GYRO_Z+1)
+#define KEY_STREAM_P_GYRO_X (KEY_STREAM_P_GYRO_Y+1)
+#define KEY_STREAM_P_TEMP (KEY_STREAM_P_GYRO_X+1)
+#define KEY_STREAM_P_AUX_Y (KEY_STREAM_P_TEMP+1)
+#define KEY_STREAM_P_AUX_X (KEY_STREAM_P_AUX_Y+1)
+#define KEY_STREAM_P_AUX_Z (KEY_STREAM_P_AUX_X+1)
+#define KEY_STREAM_P_ACCEL_Y (KEY_STREAM_P_AUX_Z+1)
+#define KEY_STREAM_P_ACCEL_X (KEY_STREAM_P_ACCEL_Y+1)
+#define KEY_STREAM_P_FOOTER (KEY_STREAM_P_ACCEL_X+1)
+#define KEY_STREAM_P_ACCEL_Z (KEY_STREAM_P_FOOTER+1)
+
+#define NUM_KEYS (KEY_STREAM_P_ACCEL_Z+1)
+
+ typedef struct {
+ unsigned short key;
+ unsigned short addr;
+ } tKeyLabel;
+
+#define DINA0A 0x0a
+#define DINA22 0x22
+#define DINA42 0x42
+#define DINA5A 0x5a
+
+#define DINA06 0x06
+#define DINA0E 0x0e
+#define DINA16 0x16
+#define DINA1E 0x1e
+#define DINA26 0x26
+#define DINA2E 0x2e
+#define DINA36 0x36
+#define DINA3E 0x3e
+#define DINA46 0x46
+#define DINA4E 0x4e
+#define DINA56 0x56
+#define DINA5E 0x5e
+#define DINA66 0x66
+#define DINA6E 0x6e
+#define DINA76 0x76
+#define DINA7E 0x7e
+
+#define DINA00 0x00
+#define DINA08 0x08
+#define DINA10 0x10
+#define DINA18 0x18
+#define DINA20 0x20
+#define DINA28 0x28
+#define DINA30 0x30
+#define DINA38 0x38
+#define DINA40 0x40
+#define DINA48 0x48
+#define DINA50 0x50
+#define DINA58 0x58
+#define DINA60 0x60
+#define DINA68 0x68
+#define DINA70 0x70
+#define DINA78 0x78
+
+#define DINA04 0x04
+#define DINA0C 0x0c
+#define DINA14 0x14
+#define DINA1C 0x1C
+#define DINA24 0x24
+#define DINA2C 0x2c
+#define DINA34 0x34
+#define DINA3C 0x3c
+#define DINA44 0x44
+#define DINA4C 0x4c
+#define DINA54 0x54
+#define DINA5C 0x5c
+#define DINA64 0x64
+#define DINA6C 0x6c
+#define DINA74 0x74
+#define DINA7C 0x7c
+
+#define DINA01 0x01
+#define DINA09 0x09
+#define DINA11 0x11
+#define DINA19 0x19
+#define DINA21 0x21
+#define DINA29 0x29
+#define DINA31 0x31
+#define DINA39 0x39
+#define DINA41 0x41
+#define DINA49 0x49
+#define DINA51 0x51
+#define DINA59 0x59
+#define DINA61 0x61
+#define DINA69 0x69
+#define DINA71 0x71
+#define DINA79 0x79
+
+#define DINA25 0x25
+#define DINA2D 0x2d
+#define DINA35 0x35
+#define DINA3D 0x3d
+#define DINA4D 0x4d
+#define DINA55 0x55
+#define DINA5D 0x5D
+#define DINA6D 0x6d
+#define DINA75 0x75
+#define DINA7D 0x7d
+
+#define DINC00 0x00
+#define DINC01 0x01
+#define DINC02 0x02
+#define DINC03 0x03
+#define DINC08 0x08
+#define DINC09 0x09
+#define DINC0A 0x0a
+#define DINC0B 0x0b
+#define DINC10 0x10
+#define DINC11 0x11
+#define DINC12 0x12
+#define DINC13 0x13
+#define DINC18 0x18
+#define DINC19 0x19
+#define DINC1A 0x1a
+#define DINC1B 0x1b
+
+#define DINC20 0x20
+#define DINC21 0x21
+#define DINC22 0x22
+#define DINC23 0x23
+#define DINC28 0x28
+#define DINC29 0x29
+#define DINC2A 0x2a
+#define DINC2B 0x2b
+#define DINC30 0x30
+#define DINC31 0x31
+#define DINC32 0x32
+#define DINC33 0x33
+#define DINC38 0x38
+#define DINC39 0x39
+#define DINC3A 0x3a
+#define DINC3B 0x3b
+
+#define DINC40 0x40
+#define DINC41 0x41
+#define DINC42 0x42
+#define DINC43 0x43
+#define DINC48 0x48
+#define DINC49 0x49
+#define DINC4A 0x4a
+#define DINC4B 0x4b
+#define DINC50 0x50
+#define DINC51 0x51
+#define DINC52 0x52
+#define DINC53 0x53
+#define DINC58 0x58
+#define DINC59 0x59
+#define DINC5A 0x5a
+#define DINC5B 0x5b
+
+#define DINC60 0x60
+#define DINC61 0x61
+#define DINC62 0x62
+#define DINC63 0x63
+#define DINC68 0x68
+#define DINC69 0x69
+#define DINC6A 0x6a
+#define DINC6B 0x6b
+#define DINC70 0x70
+#define DINC71 0x71
+#define DINC72 0x72
+#define DINC73 0x73
+#define DINC78 0x78
+#define DINC79 0x79
+#define DINC7A 0x7a
+#define DINC7B 0x7b
+
+#define DINA80 0x80
+#define DINA90 0x90
+#define DINAA0 0xa0
+#define DINAC9 0xc9
+#define DINACB 0xcb
+#define DINACD 0xcd
+#define DINACF 0xcf
+#define DINAC8 0xc8
+#define DINACA 0xca
+#define DINACC 0xcc
+#define DINACE 0xce
+#define DINAD8 0xd8
+#define DINADD 0xdd
+#define DINAF8 0xf8
+#define DINAFE 0xfe
+#define DINAC0 0xc0
+#define DINAC1 0xc1
+#define DINAC2 0xc2
+#define DINAC3 0xc3
+#define DINAC4 0xc4
+#define DINAC5 0xc5
+
+
+#endif // DMPKEY_H__