1 /*
2 * Copyright (C) 2014 Invensense, Inc.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *      http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16 
17 #ifndef INV_SENSOR_PARAMS_H
18 #define INV_SENSOR_PARAMS_H
19 
20 /******************************************/
21 /******************************************/
22 //MPU9350 INV_COMPASS
23 #define COMPASS_MPU9350_RANGE           (9830.f)
24 #define COMPASS_MPU9350_RESOLUTION      (0.15f)
25 #define COMPASS_MPU9350_POWER           (10.f)
26 #define COMPASS_MPU9350_MINDELAY        (1000)
27 //MPU9250 INV_COMPASS
28 #define COMPASS_MPU9250_RANGE           (9830.f)
29 #define COMPASS_MPU9250_RESOLUTION      (0.15f)
30 #define COMPASS_MPU9250_POWER           (10.f)
31 #define COMPASS_MPU9250_MINDELAY        (10000)
32 //MPU9255 INV_COMPASS
33 #define COMPASS_MPU9255_RANGE           (9830.f)
34 #define COMPASS_MPU9255_RESOLUTION      (0.15f)
35 #define COMPASS_MPU9255_POWER           (10.f)
36 #define COMPASS_MPU9255_MINDELAY        (10000)
37 //MPU9150 INV_COMPASS
38 #define COMPASS_MPU9150_RANGE           (9830.f)
39 #define COMPASS_MPU9150_RESOLUTION      (0.285f)
40 #define COMPASS_MPU9150_POWER           (10.f)
41 #define COMPASS_MPU9150_MINDELAY        (10000)
42 //COMPASS_ID_AK8975
43 #define COMPASS_AKM8975_RANGE           (9830.f)
44 #define COMPASS_AKM8975_RESOLUTION      (0.285f)
45 #define COMPASS_AKM8975_POWER           (10.f)
46 #define COMPASS_AKM8975_MINDELAY        (10000)
47 //COMPASS_ID_AK8963C
48 #define COMPASS_AKM8963_RANGE           (9830.f)
49 #define COMPASS_AKM8963_RESOLUTION      (0.15f)
50 #define COMPASS_AKM8963_POWER           (10.f)
51 #define COMPASS_AKM8963_MINDELAY        (10000)
52 //COMPASS_ID_AK09911
53 #define COMPASS_AKM9911_RANGE           (9830.f)
54 #define COMPASS_AKM9911_RESOLUTION      (0.60f)
55 #define COMPASS_AKM9911_POWER           (10.f)
56 #define COMPASS_AKM9911_MINDELAY        (10000)
57 //COMPASS_ID_AK09912C
58 #define COMPASS_AKM9912_RANGE           (9830.f)
59 #define COMPASS_AKM9912_RESOLUTION      (0.15f)
60 #define COMPASS_AKM9912_POWER           (10.f)
61 #define COMPASS_AKM9912_MINDELAY        (10000)
62 //COMPASS_ID_AMI30X
63 #define COMPASS_AMI30X_RANGE            (5461.f)
64 #define COMPASS_AMI30X_RESOLUTION       (0.9f)
65 #define COMPASS_AMI30X_POWER            (0.15f)
66 //COMPASS_ID_AMI306
67 #define COMPASS_AMI306_RANGE            (5461.f)
68 #define COMPASS_AMI306_RESOLUTION       (0.9f)
69 #define COMPASS_AMI306_POWER            (0.15f)
70 #define COMPASS_AMI306_MINDELAY         (10000)
71 //COMPASS_ID_YAS529
72 #define COMPASS_YAS529_RANGE            (19660.f)
73 #define COMPASS_YAS529_RESOLUTION       (0.012f)
74 #define COMPASS_YAS529_POWER            (4.f)
75 //COMPASS_ID_YAS53x
76 #define COMPASS_YAS53x_RANGE            (8001.f)
77 #define COMPASS_YAS53x_RESOLUTION       (0.012f)
78 #define COMPASS_YAS53x_POWER            (4.f)
79 #define COMPASS_YAS53x_MINDELAY         (10000)
80 //COMPASS_ID_HMC5883
81 #define COMPASS_HMC5883_RANGE           (10673.f)
82 #define COMPASS_HMC5883_RESOLUTION      (10.f)
83 #define COMPASS_HMC5883_POWER           (0.24f)
84 //COMPASS_ID_LSM303DLH
85 #define COMPASS_LSM303DLH_RANGE         (10240.f)
86 #define COMPASS_LSM303DLH_RESOLUTION    (1.f)
87 #define COMPASS_LSM303DLH_POWER         (1.f)
88 //COMPASS_ID_LSM303DLM
89 #define COMPASS_LSM303DLM_RANGE         (10240.f)
90 #define COMPASS_LSM303DLM_RESOLUTION    (1.f)
91 #define COMPASS_LSM303DLM_POWER         (1.f)
92 //COMPASS_ID_MMC314X
93 #define COMPASS_MMC314X_RANGE           (400.f)
94 #define COMPASS_MMC314X_RESOLUTION      (2.f)
95 #define COMPASS_MMC314X_POWER           (0.55f)
96 //COMPASS_ID_HSCDTD002B
97 #define COMPASS_HSCDTD002B_RANGE        (9830.f)
98 #define COMPASS_HSCDTD002B_RESOLUTION   (1.f)
99 #define COMPASS_HSCDTD002B_POWER        (1.f)
100 //COMPASS_ID_HSCDTD004A
101 #define COMPASS_HSCDTD004A_RANGE        (9830.f)
102 #define COMPASS_HSCDTD004A_RESOLUTION   (1.f)
103 #define COMPASS_HSCDTD004A_POWER        (1.f)
104 /*******************************************/
105 //ACCEL_ID_MPU6500
106 #define ACCEL_MPU6500_RANGE             (2.f * GRAVITY_EARTH)
107 #define ACCEL_MPU6500_RESOLUTION        (0.004f * GRAVITY_EARTH)
108 #define ACCEL_MPU6500_POWER             (0.5f)
109 #define ACCEL_MPU6500_MINDELAY          (5000)
110 //ACCEL_ID_MPU9350
111 #define ACCEL_MPU9350_RANGE             (2.f * GRAVITY_EARTH)
112 #define ACCEL_MPU9350_RESOLUTION        (0.004f * GRAVITY_EARTH)
113 #define ACCEL_MPU9350_POWER             (0.5f)
114 #define ACCEL_MPU9350_MINDELAY          (1000)
115 //ACCEL_ID_MPU9250
116 #define ACCEL_MPU9250_RANGE             (2.f * GRAVITY_EARTH)
117 #define ACCEL_MPU9250_RESOLUTION        (0.004f * GRAVITY_EARTH)
118 #define ACCEL_MPU9250_POWER             (0.5f)
119 #define ACCEL_MPU9250_MINDELAY          (5000)
120 //ACCEL_ID_MPU9255
121 #define ACCEL_MPU9255_RANGE             (2.f * GRAVITY_EARTH)
122 #define ACCEL_MPU9255_RESOLUTION        (0.004f * GRAVITY_EARTH)
123 #define ACCEL_MPU9255_POWER             (0.5f)
124 #define ACCEL_MPU9255_MINDELAY          (5000)
125 //ACCEL_ID_MPU9150
126 #define ACCEL_MPU9150_RANGE             (2.f * GRAVITY_EARTH)
127 #define ACCEL_MPU9150_RESOLUTION        (0.004f * GRAVITY_EARTH)
128 #define ACCEL_MPU9150_POWER             (0.5f)
129 #define ACCEL_MPU9150_MINDELAY          (1000)
130 //ACCEL_ID_LIS331
131 #define ACCEL_LIS331_RANGE              (2.48f * GRAVITY_EARTH)
132 #define ACCEL_LIS331_RESOLUTION         (0.001f * GRAVITY_EARTH)
133 #define ACCEL_LIS331_POWER              (1.f)
134 //ACCEL_ID_LSM303DLX
135 #define ACCEL_LSM303DLX_RANGE           (2.48f * GRAVITY_EARTH)
136 #define ACCEL_LSM303DLX_RESOLUTION      (0.001f * GRAVITY_EARTH)
137 #define ACCEL_LSM303DLX_POWER           (1.f)
138 //ACCEL_ID_LIS3DH
139 #define ACCEL_LIS3DH_RANGE              (2.48f * GRAVITY_EARTH)
140 #define ACCEL_LIS3DH_RESOLUTION         (0.001f * GRAVITY_EARTH)
141 #define ACCEL_LIS3DH_POWER              (1.f)
142 //ACCEL_ID_KXSD9
143 #define ACCEL_KXSD9_RANGE               (2.5006f * GRAVITY_EARTH)
144 #define ACCEL_KXSD9_RESOLUTION          (0.001f * GRAVITY_EARTH)
145 #define ACCEL_KXSD9_POWER               (1.f)
146 //ACCEL_ID_KXTF9
147 #define ACCEL_KXTF9_RANGE               (1.f * GRAVITY_EARTH)
148 #define ACCEL_KXTF9_RESOLUTION          (0.033f * GRAVITY_EARTH)
149 #define ACCEL_KXTF9_POWER               (0.35f)
150 //ACCEL_ID_BMA150
151 #define ACCEL_BMA150_RANGE              (2.f * GRAVITY_EARTH)
152 #define ACCEL_BMA150_RESOLUTION         (0.004f * GRAVITY_EARTH)
153 #define ACCEL_BMA150_POWER              (0.2f)
154 //ACCEL_ID_BMA222
155 #define ACCEL_BMA222_RANGE              (2.f * GRAVITY_EARTH)
156 #define ACCEL_BMA222_RESOLUTION         (0.001f * GRAVITY_EARTH)
157 #define ACCEL_BMA222_POWER              (0.1f)
158 //ACCEL_ID_BMA250
159 #define ACCEL_BMA250_RANGE              (2.f * GRAVITY_EARTH)
160 #define ACCEL_BMA250_RESOLUTION         (0.00391f * GRAVITY_EARTH)
161 #define ACCEL_BMA250_POWER              (0.139f)
162 #define ACCEL_BMA250_MINDELAY           (1000)
163 //ACCEL_ID_ADXL34X
164 #define ACCEL_ADXL34X_RANGE             (2.f * GRAVITY_EARTH)
165 #define ACCEL_ADXL34X_RESOLUTION        (0.001f * GRAVITY_EARTH)
166 #define ACCEL_ADXL34X_POWER             (1.f)
167 //ACCEL_ID_MMA8450
168 #define ACCEL_MMA8450_RANGE             (2.f * GRAVITY_EARTH)
169 #define ACCEL_MMA8450_RESOLUTION        (0.001f * GRAVITY_EARTH)
170 #define ACCEL_MMA8450_POWER             (1.0f)
171 //ACCEL_ID_MMA845X
172 #define ACCEL_MMA845X_RANGE             (2.f * GRAVITY_EARTH)
173 #define ACCEL_MMA845X_RESOLUTION        (0.001f * GRAVITY_EARTH)
174 #define ACCEL_MMA845X_POWER             (1.f)
175 //ACCEL_ID_MPU6050
176 #define ACCEL_MPU6050_RANGE             (2.f * GRAVITY_EARTH)
177 #define ACCEL_MPU6050_RESOLUTION        (0.004f * GRAVITY_EARTH)
178 #define ACCEL_MPU6050_POWER             (5.5f)
179 #define ACCEL_MPU6050_MINDELAY          (1000)
180 /******************************************/
181 //GYRO MPU3050
182 #define RAD_P_DEG                       (3.14159f / 180.f)
183 #define GYRO_MPU3050_RANGE              (2000.f * RAD_P_DEG)
184 #define GYRO_MPU3050_RESOLUTION         (2000.f / 32768.f * RAD_P_DEG)
185 #define GYRO_MPU3050_POWER              (6.1f)
186 #define GYRO_MPU3050_MINDELAY           (1000)
187 //GYRO MPU6050
188 #define GYRO_MPU6050_RANGE              (2000.f * RAD_P_DEG)
189 #define GYRO_MPU6050_RESOLUTION         (2000.f / 32768.f * RAD_P_DEG)
190 #define GYRO_MPU6050_POWER              (5.5f)
191 #define GYRO_MPU6050_MINDELAY           (1000)
192 //GYRO MPU9150
193 #define GYRO_MPU9150_RANGE              (2000.f * RAD_P_DEG)
194 #define GYRO_MPU9150_RESOLUTION         (2000.f / 32768.f * RAD_P_DEG)
195 #define GYRO_MPU9150_POWER              (5.5f)
196 #define GYRO_MPU9150_MINDELAY           (1000)
197 //GYRO MPU9350
198 #define GYRO_MPU9350_RANGE              (2000.f * RAD_P_DEG)
199 #define GYRO_MPU9350_RESOLUTION         (2000.f / 32768.f * RAD_P_DEG)
200 #define GYRO_MPU9350_POWER              (5.5f)
201 #define GYRO_MPU9350_MINDELAY           (1000)
202 //GYRO MPU9250
203 #define GYRO_MPU9250_RANGE              (2000.f * RAD_P_DEG)
204 #define GYRO_MPU9250_RESOLUTION         (2000.f / 32768.f * RAD_P_DEG)
205 #define GYRO_MPU9250_POWER              (5.5f)
206 #define GYRO_MPU9250_MINDELAY           (5000)
207 //GYRO MPU9255
208 #define GYRO_MPU9255_RANGE              (2000.f * RAD_P_DEG)
209 #define GYRO_MPU9255_RESOLUTION         (2000.f / 32768.f * RAD_P_DEG)
210 #define GYRO_MPU9255_POWER              (5.5f)
211 #define GYRO_MPU9255_MINDELAY           (5000)
212 //GYRO MPU6500
213 #define GYRO_MPU6500_RANGE              (2000.f * RAD_P_DEG)
214 #define GYRO_MPU6500_RESOLUTION         (2000.f / 32768.f * RAD_P_DEG)
215 #define GYRO_MPU6500_POWER              (5.5f)
216 #define GYRO_MPU6500_MINDELAY           (5000)
217 //GYRO ITG3500
218 #define GYRO_ITG3500_RANGE              (2000.f * RAD_P_DEG)
219 #define GYRO_ITG3500_RESOLUTION         (2000.f / 32768.f * RAD_P_DEG)
220 #define GYRO_ITG3500_POWER              (5.5f)
221 #define GYRO_ITG3500_MINDELAY           (1000)
222 /******************************************/
223 //PRESSURE BMP280
224 #define PRESSURE_BMP280_RANGE           (1100.f)   // hpa
225 #define PRESSURE_BMP280_RESOLUTION      (0.009995f)// in psi
226 #define PRESSURE_BMP280_POWER           (0.004f)   // 0.004mA
227 #define PRESSURE_BMP280_MINDELAY        (33333)    // 30Hz unit in ns
228 #endif  /* INV_SENSOR_PARAMS_H */
229 
230