registers.hpp
Go to the documentation of this file.
1 // =========================================================================
2 // This library is placed under the MIT License
3 // Copyright 2017-2018 Natanael Josue Rabello. All rights reserved.
4 // For the license information refer to LICENSE file in root directory.
5 // =========================================================================
6 
12 #ifndef _MPU_REGISTERS_HPP_
13 #define _MPU_REGISTERS_HPP_
14 
15 #include <stdint.h>
16 #include "sdkconfig.h"
17 
19 namespace mpud {
20 
22 namespace regs {
23 
24 /*******************************************************************************
25  * MPU commom registers for all models
26  ******************************************************************************/
27 constexpr uint8_t XG_OFFSET_H {0x13};
28 constexpr uint8_t XG_OFFSET_L {0x14};
29 constexpr uint8_t YG_OFFSET_H {0x15};
30 constexpr uint8_t YG_OFFSET_L {0x16};
31 constexpr uint8_t ZG_OFFSET_H {0x17};
32 constexpr uint8_t ZG_OFFSET_L {0x18};
33 constexpr uint8_t SMPLRT_DIV {0x19}; // [7:0]
34 //------------------------------------------------------------------------------
35 constexpr uint8_t CONFIG {0x1A};
36 constexpr uint8_t CONFIG_FIFO_MODE_BIT {6};
37 constexpr uint8_t CONFIG_EXT_SYNC_SET_BIT {5}; // [5:3]
38 constexpr uint8_t CONFIG_EXT_SYNC_SET_LENGTH {3};
39 constexpr uint8_t CONFIG_DLPF_CFG_BIT {2}; // [2:0]
40 constexpr uint8_t CONFIG_DLPF_CFG_LENGTH {3};
41 //------------------------------------------------------------------------------
42 constexpr uint8_t GYRO_CONFIG {0x1B};
43 constexpr uint8_t GCONFIG_XG_ST_BIT {7};
44 constexpr uint8_t GCONFIG_YG_ST_BIT {6};
45 constexpr uint8_t GCONFIG_ZG_ST_BIT {5};
46 constexpr uint8_t GCONFIG_FS_SEL_BIT {4}; // [4:3]
47 constexpr uint8_t GCONFIG_FS_SEL_LENGTH {2};
48 constexpr uint8_t GCONFIG_FCHOICE_B {1}; // [1:0]
49 constexpr uint8_t GCONFIG_FCHOICE_B_LENGTH {2};
50 //------------------------------------------------------------------------------
51 constexpr uint8_t ACCEL_CONFIG {0x1C};
52 constexpr uint8_t ACONFIG_XA_ST_BIT {7};
53 constexpr uint8_t ACONFIG_YA_ST_BIT {6};
54 constexpr uint8_t ACONFIG_ZA_ST_BIT {5};
55 constexpr uint8_t ACONFIG_FS_SEL_BIT {4}; // [4:3]
56 constexpr uint8_t ACONFIG_FS_SEL_LENGTH {2};
57 constexpr uint8_t ACONFIG_HPF_BIT {2}; // [2:0]
58 constexpr uint8_t ACONFIG_HPF_LENGTH {3};
59 //------------------------------------------------------------------------------
60 constexpr uint8_t FF_THR {0x1D};
61 constexpr uint8_t FF_DUR {0x1E};
62 constexpr uint8_t MOTION_THR {0x1F}; // [7:0] // MPU9250_REG_WOM_THR
63 constexpr uint8_t MOTION_DUR {0x20};
64 constexpr uint8_t ZRMOTION_THR {0x21};
65 constexpr uint8_t ZRMOTION_DUR {0x22};
66 //------------------------------------------------------------------------------
67 constexpr uint8_t FIFO_EN {0x23};
68 constexpr uint8_t FIFO_TEMP_EN_BIT {7};
69 constexpr uint8_t FIFO_XGYRO_EN_BIT {6};
70 constexpr uint8_t FIFO_YGYRO_EN_BIT {5};
71 constexpr uint8_t FIFO_ZGYRO_EN_BIT {4};
72 constexpr uint8_t FIFO_ACCEL_EN_BIT {3};
73 constexpr uint8_t FIFO_SLV_2_EN_BIT {2};
74 constexpr uint8_t FIFO_SLV_1_EN_BIT {1};
75 constexpr uint8_t FIFO_SLV_0_EN_BIT {0};
76 //------------------------------------------------------------------------------
77 constexpr uint8_t I2C_MST_CTRL {0x24};
78 constexpr uint8_t I2CMST_CTRL_MULT_EN_BIT {7};
79 constexpr uint8_t I2CMST_CTRL_WAIT_FOR_ES_BIT {6};
80 constexpr uint8_t I2CMST_CTRL_SLV_3_FIFO_EN_BIT{5};
81 constexpr uint8_t I2CMST_CTRL_P_NSR_BIT {4};
82 constexpr uint8_t I2CMST_CTRL_CLOCK_BIT {3}; // [3:0]
83 constexpr uint8_t I2CMST_CTRL_CLOCK_LENGTH {4};
84 //------------------------------------------------------------------------------
85 constexpr uint8_t I2C_SLV0_ADDR {0x25};
86 constexpr uint8_t I2C_SLV_RNW_BIT {7}; // same for all I2C_SLV registers
87 constexpr uint8_t I2C_SLV_ID_BIT {6}; // [6:0]
88 constexpr uint8_t I2C_SLV_ID_LENGTH {7};
89 //------------------------------------------------------------------------------
90 constexpr uint8_t I2C_SLV0_REG {0x26}; // [7:0]
91 //------------------------------------------------------------------------------
92 constexpr uint8_t I2C_SLV0_CTRL {0x27};
93 constexpr uint8_t I2C_SLV_EN_BIT {7}; // same for all I2C_SLV registers
94 constexpr uint8_t I2C_SLV_BYTE_SW_BIT {6};
95 constexpr uint8_t I2C_SLV_REG_DIS_BIT {5};
96 constexpr uint8_t I2C_SLV_GRP_BIT {4};
97 constexpr uint8_t I2C_SLV_LEN_BIT {3}; // [3:0]
98 constexpr uint8_t I2C_SLV_LEN_LENGTH {4};
99 //------------------------------------------------------------------------------
100 constexpr uint8_t I2C_SLV1_ADDR {0x28}; // see SLV0 for bit defines
101 constexpr uint8_t I2C_SLV1_REG {0x29};
102 constexpr uint8_t I2C_SLV1_CTRL {0x2A};
103 constexpr uint8_t I2C_SLV2_ADDR {0x2B}; // see SLV0 for bit defines
104 constexpr uint8_t I2C_SLV2_REG {0x2C};
105 constexpr uint8_t I2C_SLV2_CTRL {0x2D};
106 constexpr uint8_t I2C_SLV3_ADDR {0x2E}; // see SLV0 for bit defines
107 constexpr uint8_t I2C_SLV3_REG {0x2F};
108 constexpr uint8_t I2C_SLV3_CTRL {0x30};
109 constexpr uint8_t I2C_SLV4_ADDR {0x31}; // see SLV0 for bit defines
110 constexpr uint8_t I2C_SLV4_REG {0x32};
111 constexpr uint8_t I2C_SLV4_DO {0x33}; // [7:0]
112 //------------------------------------------------------------------------------
113 constexpr uint8_t I2C_SLV4_CTRL {0x34};
114 constexpr uint8_t I2C_SLV4_EN_BIT {7};
115 constexpr uint8_t I2C_SLV4_DONE_INT_BIT {6};
116 constexpr uint8_t I2C_SLV4_REG_DIS_BIT {5};
117 constexpr uint8_t I2C_SLV4_MST_DELAY_BIT {4}; // [4:0]
118 constexpr uint8_t I2C_SLV4_MST_DELAY_LENGTH {5};
119 //------------------------------------------------------------------------------
120 constexpr uint8_t I2C_SLV4_DI {0x35}; // [7:0]
121 //------------------------------------------------------------------------------
122 constexpr uint8_t I2C_MST_STATUS {0x36};
123 constexpr uint8_t I2CMST_STAT_PASS_THROUGH_BIT{7};
124 constexpr uint8_t I2CMST_STAT_SLV4_DONE_BIT {6};
125 constexpr uint8_t I2CMST_STAT_LOST_ARB_BIT {5};
126 constexpr uint8_t I2CMST_STAT_SLV4_NACK_BIT {4};
127 constexpr uint8_t I2CMST_STAT_SLV3_NACK_BIT {3};
128 constexpr uint8_t I2CMST_STAT_SLV2_NACK_BIT {2};
129 constexpr uint8_t I2CMST_STAT_SLV1_NACK_BIT {1};
130 constexpr uint8_t I2CMST_STAT_SLV0_NACK_BIT {0};
131 //------------------------------------------------------------------------------
132 constexpr uint8_t INT_PIN_CONFIG {0x37};
133 constexpr uint8_t INT_CFG_LEVEL_BIT {7};
134 constexpr uint8_t INT_CFG_OPEN_BIT {6};
135 constexpr uint8_t INT_CFG_LATCH_EN_BIT {5};
136 constexpr uint8_t INT_CFG_ANYRD_2CLEAR_BIT {4};
137 constexpr uint8_t INT_CFG_FSYNC_LEVEL_BIT {3};
138 constexpr uint8_t INT_CFG_FSYNC_INT_MODE_EN_BIT{2};
139 constexpr uint8_t INT_CFG_I2C_BYPASS_EN_BIT {1};
140 constexpr uint8_t INT_CFG_CLOCKOUT_EN_BIT {0};
141 //------------------------------------------------------------------------------
142 constexpr uint8_t INT_ENABLE {0x38};
143 constexpr uint8_t INT_ENABLE_FREEFALL_BIT {7};
144 constexpr uint8_t INT_ENABLE_MOTION_BIT {6};
145 constexpr uint8_t INT_ENABLE_ZEROMOT_BIT {5};
146 constexpr uint8_t INT_ENABLE_FIFO_OFLOW_BIT {4};
147 constexpr uint8_t INT_ENABLE_I2C_MST_FSYNC_BIT{3};
148 constexpr uint8_t INT_ENABLE_PLL_RDY_BIT {2};
149 constexpr uint8_t INT_ENABLE_DMP_RDY_BIT {1};
150 constexpr uint8_t INT_ENABLE_RAW_DATA_RDY_BIT {0};
151 //------------------------------------------------------------------------------
152 constexpr uint8_t DMP_INT_STATUS {0x39};
153 constexpr uint8_t DMP_INT_STATUS_0 {0};
154 constexpr uint8_t DMP_INT_STATUS_1 {1};
155 constexpr uint8_t DMP_INT_STATUS_2 {2};
156 constexpr uint8_t DMP_INT_STATUS_3 {3};
157 constexpr uint8_t DMP_INT_STATUS_4 {4};
158 constexpr uint8_t DMP_INT_STATUS_5 {5};
159 //------------------------------------------------------------------------------
160 constexpr uint8_t INT_STATUS {0x3A};
161 constexpr uint8_t INT_STATUS_FREEFALL_BIT {7};
162 constexpr uint8_t INT_STATUS_MOTION_BIT {6};
163 constexpr uint8_t INT_STATUS_ZEROMOT_BIT {5};
164 constexpr uint8_t INT_STATUS_FIFO_OFLOW_BIT {4};
165 constexpr uint8_t INT_STATUS_I2C_MST_BIT {3};
166 constexpr uint8_t INT_STATUS_PLL_RDY_BIT {2};
167 constexpr uint8_t INT_STATUS_DMP_RDY_BIT {1};
168 constexpr uint8_t INT_STATUS_RAW_DATA_RDY_BIT {0};
169 //------------------------------------------------------------------------------
170 constexpr uint8_t ACCEL_XOUT_H {0x3B}; // [15:0]
171 constexpr uint8_t ACCEL_XOUT_L {0x3C};
172 constexpr uint8_t ACCEL_YOUT_H {0x3D}; // [15:0]
173 constexpr uint8_t ACCEL_YOUT_L {0x3E};
174 constexpr uint8_t ACCEL_ZOUT_H {0x3F}; // [15:0]
175 constexpr uint8_t ACCEL_ZOUT_L {0x40};
176 constexpr uint8_t TEMP_OUT_H {0x41}; // [15:0]
177 constexpr uint8_t TEMP_OUT_L {0x42};
178 constexpr uint8_t GYRO_XOUT_H {0x43}; // [15:0]
179 constexpr uint8_t GYRO_XOUT_L {0x44};
180 constexpr uint8_t GYRO_YOUT_H {0x45}; // [15:0]
181 constexpr uint8_t GYRO_YOUT_L {0x46};
182 constexpr uint8_t GYRO_ZOUT_H {0x47}; // [15:0]
183 constexpr uint8_t GYRO_ZOUT_L {0x48};
184 constexpr uint8_t EXT_SENS_DATA_00 {0x49}; // Stores data read from Slave 0, 1, 2, and 3
185 constexpr uint8_t EXT_SENS_DATA_01 {0x4A};
186 constexpr uint8_t EXT_SENS_DATA_02 {0x4B};
187 constexpr uint8_t EXT_SENS_DATA_03 {0x4C};
188 constexpr uint8_t EXT_SENS_DATA_04 {0x4D};
189 constexpr uint8_t EXT_SENS_DATA_05 {0x4E};
190 constexpr uint8_t EXT_SENS_DATA_06 {0x4F};
191 constexpr uint8_t EXT_SENS_DATA_07 {0x50};
192 constexpr uint8_t EXT_SENS_DATA_08 {0x51};
193 constexpr uint8_t EXT_SENS_DATA_09 {0x52};
194 constexpr uint8_t EXT_SENS_DATA_10 {0x53};
195 constexpr uint8_t EXT_SENS_DATA_11 {0x54};
196 constexpr uint8_t EXT_SENS_DATA_12 {0x55};
197 constexpr uint8_t EXT_SENS_DATA_13 {0x56};
198 constexpr uint8_t EXT_SENS_DATA_14 {0x57};
199 constexpr uint8_t EXT_SENS_DATA_15 {0x58};
200 constexpr uint8_t EXT_SENS_DATA_16 {0x59};
201 constexpr uint8_t EXT_SENS_DATA_17 {0x5A};
202 constexpr uint8_t EXT_SENS_DATA_18 {0x5B};
203 constexpr uint8_t EXT_SENS_DATA_19 {0x5C};
204 constexpr uint8_t EXT_SENS_DATA_20 {0x5D};
205 constexpr uint8_t EXT_SENS_DATA_21 {0x5E};
206 constexpr uint8_t EXT_SENS_DATA_22 {0x5F};
207 constexpr uint8_t EXT_SENS_DATA_23 {0x60};
208 constexpr uint8_t I2C_SLV0_DO {0x63};
209 constexpr uint8_t I2C_SLV1_DO {0x64};
210 constexpr uint8_t I2C_SLV2_DO {0x65};
211 constexpr uint8_t I2C_SLV3_DO {0x66};
212 //------------------------------------------------------------------------------
213 constexpr uint8_t I2C_MST_DELAY_CRTL {0x67};
214 constexpr uint8_t I2CMST_DLY_ES_SHADOW_BIT {7};
215 constexpr uint8_t I2CMST_DLY_SLV4_EN_BIT {4};
216 constexpr uint8_t I2CMST_DLY_SLV3_EN_BIT {3};
217 constexpr uint8_t I2CMST_DLY_SLV2_EN_BIT {2};
218 constexpr uint8_t I2CMST_DLY_SLV1_EN_BIT {1};
219 constexpr uint8_t I2CMST_DLY_SLV0_EN_BIT {0};
220 //------------------------------------------------------------------------------
221 constexpr uint8_t SIGNAL_PATH_RESET {0x68};
222 constexpr uint8_t SPATH_GYRO_RST_BIT {2};
223 constexpr uint8_t SPATH_ACCEL_RST_BIT {1};
224 constexpr uint8_t SPATH_TEMP_RST_BIT {0};
225 //------------------------------------------------------------------------------
226 constexpr uint8_t USER_CTRL {0x6A};
227 constexpr uint8_t USERCTRL_DMP_EN_BIT {7};
228 constexpr uint8_t USERCTRL_FIFO_EN_BIT {6};
229 constexpr uint8_t USERCTRL_I2C_MST_EN_BIT {5};
230 constexpr uint8_t USERCTRL_I2C_IF_DIS_BIT {4};
231 constexpr uint8_t USERCTRL_DMP_RESET_BIT {3};
232 constexpr uint8_t USERCTRL_FIFO_RESET_BIT {2};
233 constexpr uint8_t USERCTRL_I2C_MST_RESET_BIT {1};
234 constexpr uint8_t USERCTRL_SIG_COND_RESET_BIT {0};
235 //------------------------------------------------------------------------------
236 constexpr uint8_t PWR_MGMT1 {0x6B};
237 constexpr uint8_t PWR1_DEVICE_RESET_BIT {7};
238 constexpr uint8_t PWR1_SLEEP_BIT {6};
239 constexpr uint8_t PWR1_CYCLE_BIT {5};
240 constexpr uint8_t PWR1_GYRO_STANDBY_BIT {4};
241 constexpr uint8_t PWR1_TEMP_DIS_BIT {3};
242 constexpr uint8_t PWR1_CLKSEL_BIT {2};
243 constexpr uint8_t PWR1_CLKSEL_LENGTH {3};
244 //------------------------------------------------------------------------------
245 constexpr uint8_t PWR_MGMT2 {0x6C};
246 constexpr uint8_t PWR2_LP_WAKE_CTRL_BIT {7};
247 constexpr uint8_t PWR2_LP_WAKE_CTRL_LENGTH {2};
248 constexpr uint8_t PWR2_STBY_XA_BIT {5};
249 constexpr uint8_t PWR2_STBY_YA_BIT {4};
250 constexpr uint8_t PWR2_STBY_ZA_BIT {3};
251 constexpr uint8_t PWR2_STBY_XG_BIT {2};
252 constexpr uint8_t PWR2_STBY_YG_BIT {1};
253 constexpr uint8_t PWR2_STBY_ZG_BIT {0};
256 //------------------------------------------------------------------------------
257 constexpr uint8_t BANK_SEL {0x6D};
258 constexpr uint8_t BANKSEL_PRFTCH_EN_BIT {6};
259 constexpr uint8_t BANKSEL_CFG_USER_BANK_BIT {5};
260 constexpr uint8_t BANKSEL_MEM_SEL_BIT {4};
261 constexpr uint8_t BANKSEL_MEM_SEL_LENGTH {5};
262 //------------------------------------------------------------------------------
263 constexpr uint8_t MEM_START_ADDR {0x6E};
264 constexpr uint8_t MEM_R_W {0x6F};
265 constexpr uint8_t PRGM_START_H {0x70};
266 constexpr uint8_t PRGM_START_L {0x71};
267 constexpr uint8_t FIFO_COUNT_H {0x72}; // [15:0]
268 constexpr uint8_t FIFO_COUNT_L {0x73};
269 constexpr uint8_t FIFO_R_W {0x74};
270 constexpr uint8_t WHO_AM_I {0x75};
271 
272 
273 
274 
275 /*******************************************************************************
276  * MPU6000, MPU6050 and MPU9150 registers
277  ******************************************************************************/
278 #if defined CONFIG_MPU6050
279 constexpr uint8_t XG_OTP_OFFSET_TC {0x00}; // [7] PWR_MODE, [6:1] XG_OFFS_TC, [0] OTP_BNK_VLD
280 //------------------------------------------------------------------------------
281 constexpr uint8_t YG_OTP_OFFSET_TC {0x01}; // [7] PWR_MODE, [6:1] YG_OFFS_TC, [0] OTP_BNK_VLD
282 constexpr uint8_t TC_PWR_MODE_BIT {7}; // note: TC = temperature compensation, i think
283 //------------------------------------------------------------------------------
284 constexpr uint8_t ZG_OTP_OFFSET_TC {0x02}; // [7] PWR_MODE, [6:1] ZG_OFFS_TC, [0] OTP_BNK_VLD
285 constexpr uint8_t X_FINE_GAIN {0x03}; // [7:0] X_FINE_GAIN
286 constexpr uint8_t Y_FINE_GAIN {0x04}; // [7:0] Y_FINE_GAIN
287 constexpr uint8_t Z_FINE_GAIN {0x05}; // [7:0] Z_FINE_GAIN
288 constexpr uint8_t XA_OFFSET_H {0x06}; // [15:1] XA_OFFS
289 constexpr uint8_t XA_OFFSET_L {0x07}; // note: TC: bit [0]
290 constexpr uint8_t YA_OFFSET_H {0x08}; // [15:1] YA_OFFS
291 constexpr uint8_t YA_OFFSET_L {0x09}; // note: TC: bit [0]
292 constexpr uint8_t ZA_OFFSET_H {0x0A}; // [15:1] ZA_OFFS
293 constexpr uint8_t ZA_OFFSET_L {0x0B}; // note: TC: bit [0]
294 constexpr uint8_t SELF_TEST_X {0x0D};
295 constexpr uint8_t SELF_TEST_Y {0x0E};
296 constexpr uint8_t SELF_TEST_Z {0x0F};
297 constexpr uint8_t SELF_TEST_A {0x10};
298 //------------------------------------------------------------------------------
299 constexpr uint8_t MOTION_DETECT_STATUS{0x61};
300 constexpr uint8_t MOT_STATUS_X_NEG_BIT {7};
301 constexpr uint8_t MOT_STATUS_X_POS_BIT {6};
302 constexpr uint8_t MOT_STATUS_Y_NEG_BIT {5};
303 constexpr uint8_t MOT_STATUS_Y_POS_BIT {4};
304 constexpr uint8_t MOT_STATUS_Z_NEG_BIT {3};
305 constexpr uint8_t MOT_STATUS_Z_POS_BIT {2};
306 constexpr uint8_t MOT_STATUS_ZRMOT_BIT {0};
307 //------------------------------------------------------------------------------
308 constexpr uint8_t MOTION_DETECT_CTRL {0x69};
309 constexpr uint8_t MOTCTRL_ACCEL_ON_DELAY_BIT {5}; // [5:4]
310 constexpr uint8_t MOTCTRL_ACCEL_ON_DELAY_LENGTH{2};
311 constexpr uint8_t MOTCTRL_FF_COUNT_BIT {3}; // [3:2]
312 constexpr uint8_t MOTCTRL_FF_COUNT_LENGTH {2};
313 constexpr uint8_t MOTCTRL_MOT_COUNT_BIT {1}; // [1:0]
314 constexpr uint8_t MOTCTRL_MOT_COUNT_LENGTH {2};
315 //------------------------------------------------------------------------------
316 #endif
317 
318 
319 
320 /*******************************************************************************
321  * MPU6500 and MPU9250 registers
322  ******************************************************************************/
323 #if defined CONFIG_MPU6500
324 constexpr uint8_t SELF_TEST_X_GYRO {0x00}; // XG_ST_DATA[7:0]
325 constexpr uint8_t SELF_TEST_Y_GYRO {0x01}; // YG_ST_DATA[7:0]
326 constexpr uint8_t SELF_TEST_Z_GYRO {0x02}; // ZG_ST_DATA[7:0]
327 constexpr uint8_t SELF_TEST_X_ACCEL {0x0D};
328 constexpr uint8_t SELF_TEST_Y_ACCEL {0x0E};
329 constexpr uint8_t SELF_TEST_Z_ACCEL {0x0F};
330 //------------------------------------------------------------------------------
331 constexpr uint8_t ACCEL_CONFIG2 {0x1D};
332 constexpr uint8_t ACONFIG2_FIFO_SIZE_BIT {7}; // [7:6]
333 constexpr uint8_t ACONFIG2_FIFO_SIZE_LENGTH {2};
334 constexpr uint8_t ACONFIG2_ACCEL_FCHOICE_B_BIT{3};
335 constexpr uint8_t ACONFIG2_A_DLPF_CFG_BIT {2}; // [2:0]
336 constexpr uint8_t ACONFIG2_A_DLPF_CFG_LENGTH {3};
337 //------------------------------------------------------------------------------
338 constexpr uint8_t LP_ACCEL_ODR {0x1E};
339 constexpr uint8_t LPA_ODR_CLKSEL_BIT {3}; // [3:0]
340 constexpr uint8_t LPA_ODR_CLKSEL_LENGTH {4};
341 //------------------------------------------------------------------------------
342 constexpr uint8_t ACCEL_INTEL_CTRL {0x69};
343 constexpr uint8_t ACCEL_INTEL_EN_BIT {7};
344 constexpr uint8_t ACCEL_INTEL_MODE_BIT {6};
345 //------------------------------------------------------------------------------
346 constexpr uint8_t XA_OFFSET_H {0x77};
347 constexpr uint8_t XA_OFFSET_L {0x78};
348 constexpr uint8_t YA_OFFSET_H {0x7A};
349 constexpr uint8_t YA_OFFSET_L {0x7B};
350 constexpr uint8_t ZA_OFFSET_H {0x7D};
351 constexpr uint8_t ZA_OFFSET_L {0x7E};
352 #endif
353 
354 
355 
356 /*******************************************************************************
357  * MPU9150 and MPU9250 Magnetometer registers (AK89xx)
358  ******************************************************************************/
359 #if defined CONFIG_MPU_AK89xx
360 
361 namespace mag {
362 
363 constexpr uint8_t WHO_I_AM {0x00};
364 constexpr uint8_t INFO {0x01};
365 //------------------------------------------------------------------------------
366 constexpr uint8_t STATUS1 {0x02};
367 constexpr uint8_t STATUS1_DATA_RDY_BIT {0};
368 //------------------------------------------------------------------------------
369 constexpr uint8_t HXL {0x03};
370 constexpr uint8_t HXH {0x04};
371 constexpr uint8_t HYL {0x05};
372 constexpr uint8_t HYH {0x06};
373 constexpr uint8_t HZL {0x07};
374 constexpr uint8_t HZH {0x08};
375 //------------------------------------------------------------------------------
376 constexpr uint8_t STATUS2 {0x09};
377 constexpr uint8_t STATUS2_OVERFLOW_BIT {3};
378 //------------------------------------------------------------------------------
379 constexpr uint8_t CONTROL1 {0x0A};
380 constexpr uint8_t CONTROL1_MODE_BIT {3};
381 constexpr uint8_t CONTROL1_MODE_LENGTH {4};
382 //------------------------------------------------------------------------------
383 constexpr uint8_t ASTC {0x0C};
384 constexpr uint8_t ASTC_SELF_TEST_BIT {6};
385 //------------------------------------------------------------------------------
386 constexpr uint8_t TEST1 {0x0D};
387 constexpr uint8_t TEST2 {0x0E};
388 //------------------------------------------------------------------------------
389 constexpr uint8_t I2CDIS {0x0F};
390 constexpr uint8_t I2CDIS_DISABLE_VALUE {0x1B};
391 //------------------------------------------------------------------------------
392 constexpr uint8_t ASAX {0x10};
393 constexpr uint8_t ASAY {0x11};
394 constexpr uint8_t ASAZ {0x12};
395 
396 /*******************************************************************************
397  * MPU9150 Magnetometer (AK8975)
398  ******************************************************************************/
399 #if defined CONFIG_MPU_AK8975
400 constexpr uint8_t STATUS2_DATA_ERROR_BIT {2};
401 #endif
402 
403 /*******************************************************************************
404  * MPU9250 Magnetometer (AK8963)
405  ******************************************************************************/
406 #if defined CONFIG_MPU_AK8963
407 constexpr uint8_t STATUS1_DATA_OVERRUN_BIT{1};
408 constexpr uint8_t STATUS2_BIT_OUTPUT_M_BIT{4};
409 constexpr uint8_t CONTROL1_BIT_OUTPUT_BIT {4};
410 //------------------------------------------------------------------------------
411 constexpr uint8_t CONTROL2 {0x0B};
412 constexpr uint8_t CONTROL2_SOFT_RESET_BIT {0};
413 //------------------------------------------------------------------------------
414 #endif
415 
416 } // namespace mag
417 #endif // AK89xx
418 
419 } // namespace regs
420 
421 } // namespace mpud
422 
423 #endif /* end of include guard: _MPU_REGISTERS_HPP_ */
constexpr uint8_t ACCEL_XOUT_H
Definition: registers.hpp:170
constexpr uint8_t INT_STATUS
Definition: registers.hpp:160
constexpr uint8_t I2C_SLV3_REG
Definition: registers.hpp:107
constexpr uint8_t BANKSEL_MEM_SEL_BIT
Definition: registers.hpp:260
constexpr uint8_t SELF_TEST_Z_GYRO
Definition: registers.hpp:326
constexpr uint8_t Z_FINE_GAIN
Definition: registers.hpp:287
constexpr uint8_t SELF_TEST_Z_ACCEL
Definition: registers.hpp:329
constexpr uint8_t I2CMST_STAT_SLV4_NACK_BIT
Definition: registers.hpp:126
constexpr uint8_t EXT_SENS_DATA_13
Definition: registers.hpp:197
constexpr uint8_t EXT_SENS_DATA_08
Definition: registers.hpp:192
constexpr uint8_t INT_CFG_OPEN_BIT
Definition: registers.hpp:134
constexpr uint8_t Y_FINE_GAIN
Definition: registers.hpp:286
constexpr uint8_t I2C_SLV4_DI
Definition: registers.hpp:120
constexpr uint8_t I2CMST_DLY_SLV1_EN_BIT
Definition: registers.hpp:218
constexpr uint8_t STATUS1
Definition: registers.hpp:366
constexpr uint8_t SIGNAL_PATH_RESET
Definition: registers.hpp:221
constexpr uint8_t EXT_SENS_DATA_10
Definition: registers.hpp:194
constexpr uint8_t ASAY
Definition: registers.hpp:393
constexpr uint8_t MOTCTRL_MOT_COUNT_LENGTH
Definition: registers.hpp:314
constexpr uint8_t SELF_TEST_Z
Definition: registers.hpp:296
constexpr uint8_t XA_OFFSET_H
Definition: registers.hpp:288
constexpr uint8_t ACONFIG_HPF_LENGTH
Definition: registers.hpp:58
constexpr uint8_t X_FINE_GAIN
Definition: registers.hpp:285
constexpr uint8_t SELF_TEST_A
Definition: registers.hpp:297
constexpr uint8_t ZA_OFFSET_H
Definition: registers.hpp:292
constexpr uint8_t I2CMST_STAT_SLV2_NACK_BIT
Definition: registers.hpp:128
constexpr uint8_t I2CMST_STAT_LOST_ARB_BIT
Definition: registers.hpp:125
constexpr uint8_t EXT_SENS_DATA_07
Definition: registers.hpp:191
constexpr uint8_t INT_STATUS_RAW_DATA_RDY_BIT
Definition: registers.hpp:168
constexpr uint8_t I2C_SLV4_DO
Definition: registers.hpp:111
constexpr uint8_t XG_OTP_OFFSET_TC
Definition: registers.hpp:279
constexpr uint8_t SELF_TEST_Y_ACCEL
Definition: registers.hpp:328
constexpr uint8_t HZH
Definition: registers.hpp:374
constexpr uint8_t EXT_SENS_DATA_03
Definition: registers.hpp:187
constexpr uint8_t GYRO_XOUT_H
Definition: registers.hpp:178
constexpr uint8_t EXT_SENS_DATA_17
Definition: registers.hpp:201
constexpr uint8_t USERCTRL_I2C_IF_DIS_BIT
Definition: registers.hpp:230
constexpr uint8_t HXH
Definition: registers.hpp:370
constexpr uint8_t ACONFIG_FS_SEL_LENGTH
Definition: registers.hpp:56
constexpr uint8_t SELF_TEST_Y_GYRO
Definition: registers.hpp:325
constexpr uint8_t MOTION_DUR
Definition: registers.hpp:63
constexpr uint8_t CONFIG_EXT_SYNC_SET_LENGTH
Definition: registers.hpp:38
constexpr uint8_t PWR_MGMT1
Definition: registers.hpp:236
constexpr uint8_t MEM_START_ADDR
Definition: registers.hpp:263
constexpr uint8_t EXT_SENS_DATA_14
Definition: registers.hpp:198
constexpr uint8_t EXT_SENS_DATA_02
Definition: registers.hpp:186
constexpr uint8_t USERCTRL_DMP_RESET_BIT
Definition: registers.hpp:231
constexpr uint8_t I2CMST_DLY_ES_SHADOW_BIT
Definition: registers.hpp:214
constexpr uint8_t FIFO_COUNT_H
Definition: registers.hpp:267
constexpr uint8_t INT_CFG_LATCH_EN_BIT
Definition: registers.hpp:135
constexpr uint8_t INT_STATUS_MOTION_BIT
Definition: registers.hpp:162
constexpr uint8_t PWR1_CYCLE_BIT
Definition: registers.hpp:239
constexpr uint8_t FIFO_ACCEL_EN_BIT
Definition: registers.hpp:72
constexpr uint8_t I2C_SLV0_REG
Definition: registers.hpp:90
constexpr uint8_t INT_STATUS_ZEROMOT_BIT
Definition: registers.hpp:163
constexpr uint8_t INT_ENABLE
Definition: registers.hpp:142
constexpr uint8_t PWR2_STBY_YG_BIT
Definition: registers.hpp:252
constexpr uint8_t FF_THR
Definition: registers.hpp:60
constexpr uint8_t TEST2
Definition: registers.hpp:387
constexpr uint8_t ACCEL_INTEL_CTRL
Definition: registers.hpp:342
constexpr uint8_t FIFO_TEMP_EN_BIT
Definition: registers.hpp:68
constexpr uint8_t FIFO_XGYRO_EN_BIT
Definition: registers.hpp:69
constexpr uint8_t EXT_SENS_DATA_05
Definition: registers.hpp:189
constexpr uint8_t FIFO_R_W
Definition: registers.hpp:269
constexpr uint8_t I2CMST_CTRL_WAIT_FOR_ES_BIT
Definition: registers.hpp:79
constexpr uint8_t INT_STATUS_PLL_RDY_BIT
Definition: registers.hpp:166
constexpr uint8_t FIFO_SLV_2_EN_BIT
Definition: registers.hpp:73
constexpr uint8_t ACCEL_XOUT_L
Definition: registers.hpp:171
constexpr uint8_t GCONFIG_YG_ST_BIT
Definition: registers.hpp:44
constexpr uint8_t ACCEL_ZOUT_H
Definition: registers.hpp:174
constexpr uint8_t MOTCTRL_MOT_COUNT_BIT
Definition: registers.hpp:313
constexpr uint8_t SELF_TEST_X
Definition: registers.hpp:294
constexpr uint8_t STATUS1_DATA_OVERRUN_BIT
Definition: registers.hpp:407
constexpr uint8_t EXT_SENS_DATA_06
Definition: registers.hpp:190
constexpr uint8_t DMP_INT_STATUS_0
Definition: registers.hpp:153
constexpr uint8_t YG_OFFSET_L
Definition: registers.hpp:30
constexpr uint8_t I2C_SLV3_ADDR
Definition: registers.hpp:106
constexpr uint8_t EXT_SENS_DATA_11
Definition: registers.hpp:195
constexpr uint8_t MOTCTRL_ACCEL_ON_DELAY_LENGTH
Definition: registers.hpp:310
constexpr uint8_t PWR1_SLEEP_BIT
Definition: registers.hpp:238
constexpr uint8_t ACCEL_CONFIG
Definition: registers.hpp:51
constexpr uint8_t TC_PWR_MODE_BIT
Definition: registers.hpp:282
constexpr uint8_t INT_STATUS_FIFO_OFLOW_BIT
Definition: registers.hpp:164
constexpr uint8_t FF_DUR
Definition: registers.hpp:61
constexpr uint8_t XA_OFFSET_L
Definition: registers.hpp:289
constexpr uint8_t I2CDIS
Definition: registers.hpp:389
constexpr uint8_t INT_CFG_FSYNC_LEVEL_BIT
Definition: registers.hpp:137
constexpr uint8_t PWR2_STBY_XYZA_BITS
Definition: registers.hpp:254
constexpr uint8_t MOT_STATUS_X_POS_BIT
Definition: registers.hpp:301
constexpr uint8_t ZG_OFFSET_H
Definition: registers.hpp:31
constexpr uint8_t I2C_SLV_BYTE_SW_BIT
Definition: registers.hpp:94
constexpr uint8_t CONTROL1
Definition: registers.hpp:379
constexpr uint8_t SELF_TEST_Y
Definition: registers.hpp:295
constexpr uint8_t BANKSEL_PRFTCH_EN_BIT
Definition: registers.hpp:258
constexpr uint8_t TEMP_OUT_H
Definition: registers.hpp:176
constexpr uint8_t PWR1_CLKSEL_BIT
Definition: registers.hpp:242
constexpr uint8_t I2C_SLV2_ADDR
Definition: registers.hpp:103
constexpr uint8_t CONTROL2_SOFT_RESET_BIT
Definition: registers.hpp:412
constexpr uint8_t ACCEL_ZOUT_L
Definition: registers.hpp:175
constexpr uint8_t INT_CFG_I2C_BYPASS_EN_BIT
Definition: registers.hpp:139
constexpr uint8_t USER_CTRL
Definition: registers.hpp:226
constexpr uint8_t I2C_SLV0_DO
Definition: registers.hpp:208
constexpr uint8_t FIFO_EN
Definition: registers.hpp:67
constexpr uint8_t STATUS1_DATA_RDY_BIT
Definition: registers.hpp:367
constexpr uint8_t PRGM_START_L
Definition: registers.hpp:266
constexpr uint8_t I2C_SLV0_CTRL
Definition: registers.hpp:92
constexpr uint8_t PWR1_CLKSEL_LENGTH
Definition: registers.hpp:243
constexpr uint8_t CONTROL1_MODE_BIT
Definition: registers.hpp:380
constexpr uint8_t CONFIG_FIFO_MODE_BIT
Definition: registers.hpp:36
constexpr uint8_t EXT_SENS_DATA_22
Definition: registers.hpp:206
constexpr uint8_t WHO_I_AM
Definition: registers.hpp:363
constexpr uint8_t EXT_SENS_DATA_04
Definition: registers.hpp:188
constexpr uint8_t ZG_OFFSET_L
Definition: registers.hpp:32
constexpr uint8_t STATUS2_BIT_OUTPUT_M_BIT
Definition: registers.hpp:408
constexpr uint8_t I2CMST_CTRL_MULT_EN_BIT
Definition: registers.hpp:78
constexpr uint8_t CONTROL1_MODE_LENGTH
Definition: registers.hpp:381
constexpr uint8_t I2C_SLV_RNW_BIT
Definition: registers.hpp:86
constexpr uint8_t PWR2_STBY_XA_BIT
Definition: registers.hpp:248
constexpr uint8_t DMP_INT_STATUS
Definition: registers.hpp:152
constexpr uint8_t I2C_SLV2_CTRL
Definition: registers.hpp:105
constexpr uint8_t FIFO_SLV_0_EN_BIT
Definition: registers.hpp:75
constexpr uint8_t ASAZ
Definition: registers.hpp:394
constexpr uint8_t BANKSEL_MEM_SEL_LENGTH
Definition: registers.hpp:261
constexpr uint8_t INT_STATUS_FREEFALL_BIT
Definition: registers.hpp:161
constexpr uint8_t PWR2_STBY_ZG_BIT
Definition: registers.hpp:253
constexpr uint8_t I2C_SLV0_ADDR
Definition: registers.hpp:85
constexpr uint8_t SELF_TEST_X_ACCEL
Definition: registers.hpp:327
constexpr uint8_t I2C_SLV_GRP_BIT
Definition: registers.hpp:96
constexpr uint8_t I2C_SLV_ID_LENGTH
Definition: registers.hpp:88
constexpr uint8_t LPA_ODR_CLKSEL_BIT
Definition: registers.hpp:339
constexpr uint8_t USERCTRL_DMP_EN_BIT
Definition: registers.hpp:227
constexpr uint8_t MOT_STATUS_ZRMOT_BIT
Definition: registers.hpp:306
constexpr uint8_t MOTCTRL_FF_COUNT_LENGTH
Definition: registers.hpp:312
constexpr uint8_t GCONFIG_FCHOICE_B_LENGTH
Definition: registers.hpp:49
constexpr uint8_t ACCEL_YOUT_L
Definition: registers.hpp:173
constexpr uint8_t EXT_SENS_DATA_20
Definition: registers.hpp:204
constexpr uint8_t TEMP_OUT_L
Definition: registers.hpp:177
constexpr uint8_t I2CMST_DLY_SLV0_EN_BIT
Definition: registers.hpp:219
constexpr uint8_t I2C_SLV4_MST_DELAY_BIT
Definition: registers.hpp:117
constexpr uint8_t ACCEL_YOUT_H
Definition: registers.hpp:172
constexpr uint8_t PWR1_DEVICE_RESET_BIT
Definition: registers.hpp:237
constexpr uint8_t I2CMST_DLY_SLV4_EN_BIT
Definition: registers.hpp:215
constexpr uint8_t EXT_SENS_DATA_00
Definition: registers.hpp:184
constexpr uint8_t ACONFIG2_FIFO_SIZE_BIT
Definition: registers.hpp:332
constexpr uint8_t I2CMST_STAT_PASS_THROUGH_BIT
Definition: registers.hpp:123
constexpr uint8_t PWR2_LP_WAKE_CTRL_BIT
Definition: registers.hpp:246
constexpr uint8_t BANK_SEL
Definition: registers.hpp:257
constexpr uint8_t CONTROL1_BIT_OUTPUT_BIT
Definition: registers.hpp:409
constexpr uint8_t INT_CFG_LEVEL_BIT
Definition: registers.hpp:133
constexpr uint8_t HYH
Definition: registers.hpp:372
constexpr uint8_t INT_ENABLE_DMP_RDY_BIT
Definition: registers.hpp:149
constexpr uint8_t INT_STATUS_DMP_RDY_BIT
Definition: registers.hpp:167
constexpr uint8_t MOT_STATUS_Y_POS_BIT
Definition: registers.hpp:303
constexpr uint8_t PWR1_TEMP_DIS_BIT
Definition: registers.hpp:241
constexpr uint8_t EXT_SENS_DATA_16
Definition: registers.hpp:200
constexpr uint8_t PWR2_STBY_XG_BIT
Definition: registers.hpp:251
constexpr uint8_t I2CMST_DLY_SLV2_EN_BIT
Definition: registers.hpp:217
constexpr uint8_t ACCEL_CONFIG2
Definition: registers.hpp:331
constexpr uint8_t GCONFIG_ZG_ST_BIT
Definition: registers.hpp:45
constexpr uint8_t INT_ENABLE_RAW_DATA_RDY_BIT
Definition: registers.hpp:150
constexpr uint8_t I2C_SLV_EN_BIT
Definition: registers.hpp:93
constexpr uint8_t I2C_SLV4_DONE_INT_BIT
Definition: registers.hpp:115
constexpr uint8_t PWR1_GYRO_STANDBY_BIT
Definition: registers.hpp:240
constexpr uint8_t GYRO_YOUT_L
Definition: registers.hpp:181
constexpr uint8_t HYL
Definition: registers.hpp:371
constexpr uint8_t XG_OFFSET_L
Definition: registers.hpp:28
constexpr uint8_t HZL
Definition: registers.hpp:373
constexpr uint8_t INT_STATUS_I2C_MST_BIT
Definition: registers.hpp:165
constexpr uint8_t I2C_SLV4_MST_DELAY_LENGTH
Definition: registers.hpp:118
constexpr uint8_t LP_ACCEL_ODR
Definition: registers.hpp:338
constexpr uint8_t DMP_INT_STATUS_4
Definition: registers.hpp:157
constexpr uint8_t I2CMST_STAT_SLV3_NACK_BIT
Definition: registers.hpp:127
constexpr uint8_t I2CMST_STAT_SLV4_DONE_BIT
Definition: registers.hpp:124
constexpr uint8_t ACONFIG_ZA_ST_BIT
Definition: registers.hpp:54
constexpr uint8_t EXT_SENS_DATA_23
Definition: registers.hpp:207
constexpr uint8_t I2CMST_CTRL_CLOCK_BIT
Definition: registers.hpp:82
constexpr uint8_t PRGM_START_H
Definition: registers.hpp:265
constexpr uint8_t GCONFIG_FS_SEL_BIT
Definition: registers.hpp:46
constexpr uint8_t I2C_SLV4_ADDR
Definition: registers.hpp:109
constexpr uint8_t INT_ENABLE_FIFO_OFLOW_BIT
Definition: registers.hpp:146
constexpr uint8_t I2C_SLV1_DO
Definition: registers.hpp:209
constexpr uint8_t I2C_SLV4_EN_BIT
Definition: registers.hpp:114
constexpr uint8_t MOT_STATUS_Y_NEG_BIT
Definition: registers.hpp:302
constexpr uint8_t USERCTRL_SIG_COND_RESET_BIT
Definition: registers.hpp:234
constexpr uint8_t PWR2_LP_WAKE_CTRL_LENGTH
Definition: registers.hpp:247
constexpr uint8_t WHO_AM_I
Definition: registers.hpp:270
constexpr uint8_t I2CDIS_DISABLE_VALUE
Definition: registers.hpp:390
constexpr uint8_t I2C_SLV2_DO
Definition: registers.hpp:210
constexpr uint8_t ZA_OFFSET_L
Definition: registers.hpp:293
constexpr uint8_t ACONFIG_YA_ST_BIT
Definition: registers.hpp:53
constexpr uint8_t MOT_STATUS_Z_NEG_BIT
Definition: registers.hpp:304
constexpr uint8_t SPATH_ACCEL_RST_BIT
Definition: registers.hpp:223
constexpr uint8_t INT_CFG_CLOCKOUT_EN_BIT
Definition: registers.hpp:140
constexpr uint8_t MOT_STATUS_Z_POS_BIT
Definition: registers.hpp:305
constexpr uint8_t XG_OFFSET_H
Definition: registers.hpp:27
constexpr uint8_t SELF_TEST_X_GYRO
Definition: registers.hpp:324
constexpr uint8_t MOTION_THR
Definition: registers.hpp:62
constexpr uint8_t I2C_MST_STATUS
Definition: registers.hpp:122
constexpr uint8_t INT_CFG_ANYRD_2CLEAR_BIT
Definition: registers.hpp:136
constexpr uint8_t SMPLRT_DIV
Definition: registers.hpp:33
constexpr uint8_t I2CMST_CTRL_P_NSR_BIT
Definition: registers.hpp:81
constexpr uint8_t YG_OTP_OFFSET_TC
Definition: registers.hpp:281
constexpr uint8_t I2C_SLV4_REG_DIS_BIT
Definition: registers.hpp:116
constexpr uint8_t DMP_INT_STATUS_2
Definition: registers.hpp:155
constexpr uint8_t I2C_SLV_LEN_BIT
Definition: registers.hpp:97
constexpr uint8_t I2C_SLV3_DO
Definition: registers.hpp:211
constexpr uint8_t I2C_SLV_ID_BIT
Definition: registers.hpp:87
constexpr uint8_t ZRMOTION_THR
Definition: registers.hpp:64
constexpr uint8_t CONFIG_DLPF_CFG_LENGTH
Definition: registers.hpp:40
constexpr uint8_t USERCTRL_FIFO_EN_BIT
Definition: registers.hpp:228
constexpr uint8_t INT_ENABLE_ZEROMOT_BIT
Definition: registers.hpp:145
constexpr uint8_t I2C_SLV2_REG
Definition: registers.hpp:104
constexpr uint8_t STATUS2_DATA_ERROR_BIT
Definition: registers.hpp:400
constexpr uint8_t FIFO_YGYRO_EN_BIT
Definition: registers.hpp:70
constexpr uint8_t GYRO_ZOUT_H
Definition: registers.hpp:182
constexpr uint8_t PWR2_STBY_ZA_BIT
Definition: registers.hpp:250
constexpr uint8_t STATUS2
Definition: registers.hpp:376
constexpr uint8_t I2C_SLV1_REG
Definition: registers.hpp:101
constexpr uint8_t INT_ENABLE_PLL_RDY_BIT
Definition: registers.hpp:148
constexpr uint8_t HXL
Definition: registers.hpp:369
constexpr uint8_t YA_OFFSET_L
Definition: registers.hpp:291
constexpr uint8_t PWR2_STBY_XYZG_BITS
Definition: registers.hpp:255
constexpr uint8_t INT_ENABLE_I2C_MST_FSYNC_BIT
Definition: registers.hpp:147
constexpr uint8_t INT_PIN_CONFIG
Definition: registers.hpp:132
constexpr uint8_t FIFO_ZGYRO_EN_BIT
Definition: registers.hpp:71
constexpr uint8_t TEST1
Definition: registers.hpp:386
constexpr uint8_t GCONFIG_XG_ST_BIT
Definition: registers.hpp:43
constexpr uint8_t EXT_SENS_DATA_15
Definition: registers.hpp:199
constexpr uint8_t EXT_SENS_DATA_21
Definition: registers.hpp:205
constexpr uint8_t CONFIG
Definition: registers.hpp:35
constexpr uint8_t GYRO_CONFIG
Definition: registers.hpp:42
constexpr uint8_t USERCTRL_I2C_MST_EN_BIT
Definition: registers.hpp:229
constexpr uint8_t EXT_SENS_DATA_19
Definition: registers.hpp:203
constexpr uint8_t ACCEL_INTEL_MODE_BIT
Definition: registers.hpp:344
constexpr uint8_t YG_OFFSET_H
Definition: registers.hpp:29
constexpr uint8_t EXT_SENS_DATA_09
Definition: registers.hpp:193
constexpr uint8_t ACONFIG2_FIFO_SIZE_LENGTH
Definition: registers.hpp:333
constexpr uint8_t ACONFIG2_A_DLPF_CFG_BIT
Definition: registers.hpp:335
constexpr uint8_t FIFO_COUNT_L
Definition: registers.hpp:268
constexpr uint8_t SPATH_TEMP_RST_BIT
Definition: registers.hpp:224
constexpr uint8_t MOTION_DETECT_CTRL
Definition: registers.hpp:308
constexpr uint8_t INT_CFG_FSYNC_INT_MODE_EN_BIT
Definition: registers.hpp:138
constexpr uint8_t DMP_INT_STATUS_5
Definition: registers.hpp:158
constexpr uint8_t STATUS2_OVERFLOW_BIT
Definition: registers.hpp:377
constexpr uint8_t YA_OFFSET_H
Definition: registers.hpp:290
constexpr uint8_t I2C_MST_CTRL
Definition: registers.hpp:77
constexpr uint8_t GYRO_XOUT_L
Definition: registers.hpp:179
constexpr uint8_t BANKSEL_CFG_USER_BANK_BIT
Definition: registers.hpp:259
constexpr uint8_t ZRMOTION_DUR
Definition: registers.hpp:65
constexpr uint8_t PWR_MGMT2
Definition: registers.hpp:245
constexpr uint8_t I2CMST_CTRL_SLV_3_FIFO_EN_BIT
Definition: registers.hpp:80
constexpr uint8_t GYRO_YOUT_H
Definition: registers.hpp:180
constexpr uint8_t DMP_INT_STATUS_3
Definition: registers.hpp:156
constexpr uint8_t MEM_R_W
Definition: registers.hpp:264
constexpr uint8_t ACONFIG_XA_ST_BIT
Definition: registers.hpp:52
constexpr uint8_t SPATH_GYRO_RST_BIT
Definition: registers.hpp:222
constexpr uint8_t MOTION_DETECT_STATUS
Definition: registers.hpp:299
constexpr uint8_t I2C_SLV1_ADDR
Definition: registers.hpp:100
constexpr uint8_t I2C_SLV_REG_DIS_BIT
Definition: registers.hpp:95
constexpr uint8_t CONFIG_EXT_SYNC_SET_BIT
Definition: registers.hpp:37
constexpr uint8_t ZG_OTP_OFFSET_TC
Definition: registers.hpp:284
constexpr uint8_t I2CMST_DLY_SLV3_EN_BIT
Definition: registers.hpp:216
constexpr uint8_t INFO
Definition: registers.hpp:364
constexpr uint8_t I2CMST_CTRL_CLOCK_LENGTH
Definition: registers.hpp:83
constexpr uint8_t PWR2_STBY_YA_BIT
Definition: registers.hpp:249
constexpr uint8_t I2C_SLV4_CTRL
Definition: registers.hpp:113
constexpr uint8_t LPA_ODR_CLKSEL_LENGTH
Definition: registers.hpp:340
constexpr uint8_t INT_ENABLE_MOTION_BIT
Definition: registers.hpp:144
constexpr uint8_t ACONFIG2_A_DLPF_CFG_LENGTH
Definition: registers.hpp:336
constexpr uint8_t I2CMST_STAT_SLV0_NACK_BIT
Definition: registers.hpp:130
constexpr uint8_t ACCEL_INTEL_EN_BIT
Definition: registers.hpp:343
constexpr uint8_t DMP_INT_STATUS_1
Definition: registers.hpp:154
constexpr uint8_t EXT_SENS_DATA_01
Definition: registers.hpp:185
constexpr uint8_t CONFIG_DLPF_CFG_BIT
Definition: registers.hpp:39
constexpr uint8_t I2C_SLV_LEN_LENGTH
Definition: registers.hpp:98
constexpr uint8_t I2CMST_STAT_SLV1_NACK_BIT
Definition: registers.hpp:129
constexpr uint8_t GYRO_ZOUT_L
Definition: registers.hpp:183
constexpr uint8_t MOT_STATUS_X_NEG_BIT
Definition: registers.hpp:300
constexpr uint8_t USERCTRL_FIFO_RESET_BIT
Definition: registers.hpp:232
constexpr uint8_t ASAX
Definition: registers.hpp:392
constexpr uint8_t I2C_MST_DELAY_CRTL
Definition: registers.hpp:213
constexpr uint8_t I2C_SLV1_CTRL
Definition: registers.hpp:102
constexpr uint8_t FIFO_SLV_1_EN_BIT
Definition: registers.hpp:74
constexpr uint8_t ACONFIG2_ACCEL_FCHOICE_B_BIT
Definition: registers.hpp:334
constexpr uint8_t MOTCTRL_ACCEL_ON_DELAY_BIT
Definition: registers.hpp:309
constexpr uint8_t GCONFIG_FS_SEL_LENGTH
Definition: registers.hpp:47
constexpr uint8_t ASTC_SELF_TEST_BIT
Definition: registers.hpp:384
constexpr uint8_t ASTC
Definition: registers.hpp:383
constexpr uint8_t MOTCTRL_FF_COUNT_BIT
Definition: registers.hpp:311
constexpr uint8_t CONTROL2
Definition: registers.hpp:411
constexpr uint8_t I2C_SLV4_REG
Definition: registers.hpp:110
constexpr uint8_t GCONFIG_FCHOICE_B
Definition: registers.hpp:48
constexpr uint8_t ACONFIG_HPF_BIT
Definition: registers.hpp:57
constexpr uint8_t USERCTRL_I2C_MST_RESET_BIT
Definition: registers.hpp:233
constexpr uint8_t EXT_SENS_DATA_18
Definition: registers.hpp:202
constexpr uint8_t INT_ENABLE_FREEFALL_BIT
Definition: registers.hpp:143
constexpr uint8_t I2C_SLV3_CTRL
Definition: registers.hpp:108
constexpr uint8_t EXT_SENS_DATA_12
Definition: registers.hpp:196
constexpr uint8_t ACONFIG_FS_SEL_BIT
Definition: registers.hpp:55