mpu6050: Driver for MPU6000/MPU6050 6-axis MotionTracking device

struct mpu6050_raw_acceleration_t
#include <mpu6050.h>

Raw acceleration data.

Public Members

int16_t x

raw acceleration axis x

int16_t y

raw acceleration axis y

int16_t z

raw acceleration axis z

struct mpu6050_raw_rotation_t
#include <mpu6050.h>

Raw rotation data.

Public Members

int16_t x

raw rotation axis x

int16_t y

raw rotation axis y

int16_t z

raw rotation axis z

struct mpu6050_acceleration_t
#include <mpu6050.h>

MPU6050 acceleration data, g.

Public Members

float x

acceleration axis x

float y

acceleration axis y

float z

acceleration axis z

struct mpu6050_rotation_t
#include <mpu6050.h>

MPU6050 rotation data, °/s.

Public Members

float x

rotation axis x

float y

rotation axis y

float z

rotation axis z

struct mpu6050_dev_t
#include <mpu6050.h>

Device descriptor.

Public Members

i2c_dev_t i2c_dev
mpu6050_gyro_range_t gyro
mpu6050_accel_range_t accel
struct mpu6050_dev_t ranges

Defines

MPU6050_REGISTER_XG_OFFS_TC
MPU6050_REGISTER_YG_OFFS_TC
MPU6050_REGISTER_ZG_OFFS_TC
MPU6050_REGISTER_X_FINE_GAIN
MPU6050_REGISTER_Y_FINE_GAIN
MPU6050_REGISTER_Z_FINE_GAIN
MPU6050_REGISTER_XA_OFFS_H
MPU6050_REGISTER_XA_OFFS_L_TC
MPU6050_REGISTER_YA_OFFS_H
MPU6050_REGISTER_YA_OFFS_L_TC
MPU6050_REGISTER_ZA_OFFS_H
MPU6050_REGISTER_ZA_OFFS_L_TC
MPU6050_REGISTER_SELF_TEST_X
MPU6050_REGISTER_SELF_TEST_Y
MPU6050_REGISTER_SELF_TEST_Z
MPU6050_REGISTER_SELF_TEST_A
MPU6050_REGISTER_XG_OFFS_USRH
MPU6050_REGISTER_XG_OFFS_USRL
MPU6050_REGISTER_YG_OFFS_USRH
MPU6050_REGISTER_YG_OFFS_USRL
MPU6050_REGISTER_ZG_OFFS_USRH
MPU6050_REGISTER_ZG_OFFS_USRL
MPU6050_REGISTER_SMPLRT_DIV
MPU6050_REGISTER_CONFIG
MPU6050_REGISTER_GYRO_CONFIG
MPU6050_REGISTER_ACCEL_CONFIG
MPU6050_REGISTER_FF_THR
MPU6050_REGISTER_FF_DUR
MPU6050_REGISTER_MOT_THR
MPU6050_REGISTER_MOT_DUR
MPU6050_REGISTER_ZRMOT_THR
MPU6050_REGISTER_ZRMOT_DUR
MPU6050_REGISTER_FIFO_EN
MPU6050_REGISTER_I2C_MST_CTRL
MPU6050_REGISTER_I2C_SLV0_ADDR
MPU6050_REGISTER_I2C_SLV0_REG
MPU6050_REGISTER_I2C_SLV0_CTRL
MPU6050_REGISTER_I2C_SLV1_ADDR
MPU6050_REGISTER_I2C_SLV1_REG
MPU6050_REGISTER_I2C_SLV1_CTRL
MPU6050_REGISTER_I2C_SLV2_ADDR
MPU6050_REGISTER_I2C_SLV2_REG
MPU6050_REGISTER_I2C_SLV2_CTRL
MPU6050_REGISTER_I2C_SLV3_ADDR
MPU6050_REGISTER_I2C_SLV3_REG
MPU6050_REGISTER_I2C_SLV3_CTRL
MPU6050_REGISTER_I2C_SLV4_ADDR
MPU6050_REGISTER_I2C_SLV4_REG
MPU6050_REGISTER_I2C_SLV4_DO
MPU6050_REGISTER_I2C_SLV4_CTRL
MPU6050_REGISTER_I2C_SLV4_DI
MPU6050_REGISTER_I2C_MST_STATUS
MPU6050_REGISTER_INT_PIN_CFG
MPU6050_REGISTER_INT_ENABLE
MPU6050_REGISTER_DMP_INT_STATUS
MPU6050_REGISTER_INT_STATUS
MPU6050_REGISTER_ACCEL_XOUT_H
MPU6050_REGISTER_ACCEL_XOUT_L
MPU6050_REGISTER_ACCEL_YOUT_H
MPU6050_REGISTER_ACCEL_YOUT_L
MPU6050_REGISTER_ACCEL_ZOUT_H
MPU6050_REGISTER_ACCEL_ZOUT_L
MPU6050_REGISTER_TEMP_OUT_H
MPU6050_REGISTER_TEMP_OUT_L
MPU6050_REGISTER_GYRO_XOUT_H
MPU6050_REGISTER_GYRO_XOUT_L
MPU6050_REGISTER_GYRO_YOUT_H
MPU6050_REGISTER_GYRO_YOUT_L
MPU6050_REGISTER_GYRO_ZOUT_H
MPU6050_REGISTER_GYRO_ZOUT_L
MPU6050_REGISTER_EXT_SENS_DATA_00
MPU6050_REGISTER_EXT_SENS_DATA_01
MPU6050_REGISTER_EXT_SENS_DATA_02
MPU6050_REGISTER_EXT_SENS_DATA_03
MPU6050_REGISTER_EXT_SENS_DATA_04
MPU6050_REGISTER_EXT_SENS_DATA_05
MPU6050_REGISTER_EXT_SENS_DATA_06
MPU6050_REGISTER_EXT_SENS_DATA_07
MPU6050_REGISTER_EXT_SENS_DATA_08
MPU6050_REGISTER_EXT_SENS_DATA_09
MPU6050_REGISTER_EXT_SENS_DATA_10
MPU6050_REGISTER_EXT_SENS_DATA_11
MPU6050_REGISTER_EXT_SENS_DATA_12
MPU6050_REGISTER_EXT_SENS_DATA_13
MPU6050_REGISTER_EXT_SENS_DATA_14
MPU6050_REGISTER_EXT_SENS_DATA_15
MPU6050_REGISTER_EXT_SENS_DATA_16
MPU6050_REGISTER_EXT_SENS_DATA_17
MPU6050_REGISTER_EXT_SENS_DATA_18
MPU6050_REGISTER_EXT_SENS_DATA_19
MPU6050_REGISTER_EXT_SENS_DATA_20
MPU6050_REGISTER_EXT_SENS_DATA_21
MPU6050_REGISTER_EXT_SENS_DATA_22
MPU6050_REGISTER_EXT_SENS_DATA_23
MPU6050_REGISTER_MOT_DETECT_STATUS
MPU6050_REGISTER_I2C_SLV0_DO
MPU6050_REGISTER_I2C_SLV1_DO
MPU6050_REGISTER_I2C_SLV2_DO
MPU6050_REGISTER_I2C_SLV3_DO
MPU6050_REGISTER_I2C_MST_DELAY_CTRL
MPU6050_REGISTER_SIGNAL_PATH_RESET
MPU6050_REGISTER_MOT_DETECT_CTRL
MPU6050_REGISTER_USER_CTRL
MPU6050_REGISTER_PWR_MGMT_1
MPU6050_REGISTER_PWR_MGMT_2
MPU6050_REGISTER_BANK_SEL
MPU6050_REGISTER_MEM_START_ADDR
MPU6050_REGISTER_MEM_R_W
MPU6050_REGISTER_DMP_CFG_1
MPU6050_REGISTER_DMP_CFG_2
MPU6050_REGISTER_FIFO_COUNTH
MPU6050_REGISTER_FIFO_COUNTL
MPU6050_REGISTER_FIFO_R_W
MPU6050_REGISTER_WHO_AM_I
MPU6050_DLPF_BW_256
MPU6050_DLPF_BW_188
MPU6050_DLPF_BW_98
MPU6050_DLPF_BW_42
MPU6050_DLPF_BW_20
MPU6050_DLPF_BW_10
MPU6050_DLPF_BW_5
MPU6050_DHPF_RESET
MPU6050_DHPF_5
MPU6050_DHPF_2P5
MPU6050_DHPF_1P25
MPU6050_DHPF_0P63
MPU6050_DHPF_HOLD
MPU6050_DETECT_DECREMENT_RESET
MPU6050_DETECT_DECREMENT_1
MPU6050_DETECT_DECREMENT_2
MPU6050_DETECT_DECREMENT_4
MPU6050_EXT_SYNC_DISABLED
MPU6050_EXT_SYNC_TEMP_OUT_L
MPU6050_EXT_SYNC_GYRO_XOUT_L
MPU6050_EXT_SYNC_GYRO_YOUT_L
MPU6050_EXT_SYNC_GYRO_ZOUT_L
MPU6050_EXT_SYNC_ACCEL_XOUT_L
MPU6050_EXT_SYNC_ACCEL_YOUT_L
MPU6050_EXT_SYNC_ACCEL_ZOUT_L
MPU6050_CLOCK_DIV_348
MPU6050_CLOCK_DIV_333
MPU6050_CLOCK_DIV_320
MPU6050_CLOCK_DIV_308
MPU6050_CLOCK_DIV_296
MPU6050_CLOCK_DIV_286
MPU6050_CLOCK_DIV_276
MPU6050_CLOCK_DIV_267
MPU6050_CLOCK_DIV_258
MPU6050_CLOCK_DIV_500
MPU6050_CLOCK_DIV_471
MPU6050_CLOCK_DIV_444
MPU6050_CLOCK_DIV_421
MPU6050_CLOCK_DIV_400
MPU6050_CLOCK_DIV_381
MPU6050_CLOCK_DIV_364
MPU6050_SELF_TEST_XA_1_BIT
MPU6050_SELF_TEST_XA_1_LENGTH
MPU6050_SELF_TEST_XA_2_BIT
MPU6050_SELF_TEST_XA_2_LENGTH
MPU6050_SELF_TEST_YA_1_BIT
MPU6050_SELF_TEST_YA_1_LENGTH
MPU6050_SELF_TEST_YA_2_BIT
MPU6050_SELF_TEST_YA_2_LENGTH
MPU6050_SELF_TEST_ZA_1_BIT
MPU6050_SELF_TEST_ZA_1_LENGTH
MPU6050_SELF_TEST_ZA_2_BIT
MPU6050_SELF_TEST_ZA_2_LENGTH
MPU6050_SELF_TEST_XG_1_BIT
MPU6050_SELF_TEST_XG_1_LENGTH
MPU6050_SELF_TEST_YG_1_BIT
MPU6050_SELF_TEST_YG_1_LENGTH
MPU6050_SELF_TEST_ZG_1_BIT
MPU6050_SELF_TEST_ZG_1_LENGTH
MPU6050_CFG_EXT_SYNC_SET_BIT
MPU6050_CFG_EXT_SYNC_SET_MASK
MPU6050_CFG_DLPF_CFG_BIT
MPU6050_CFG_DLPF_CFG_MASK
MPU6050_GCONFIG_FS_SEL_BIT
MPU6050_GCONFIG_FS_SEL_MASK
MPU6050_ACONFIG_XA_ST_BIT
MPU6050_ACONFIG_YA_ST_BIT
MPU6050_ACONFIG_ZA_ST_BIT
MPU6050_ACONFIG_AFS_SEL_BIT
MPU6050_ACONFIG_AFS_SEL_MASK
MPU6050_ACONFIG_ACCEL_HPF_BIT
MPU6050_ACONFIG_ACCEL_HPF_MASK
MPU6050_TEMP_FIFO_EN_BIT
MPU6050_XG_FIFO_EN_BIT
MPU6050_YG_FIFO_EN_BIT
MPU6050_ZG_FIFO_EN_BIT
MPU6050_ACCEL_FIFO_EN_BIT
MPU6050_SLV2_FIFO_EN_BIT
MPU6050_SLV1_FIFO_EN_BIT
MPU6050_SLV0_FIFO_EN_BIT
MPU6050_MULT_MST_EN_BIT
MPU6050_WAIT_FOR_ES_BIT
MPU6050_SLV_3_FIFO_EN_BIT
MPU6050_I2C_MST_P_NSR_BIT
MPU6050_I2C_MST_CLK_BIT
MPU6050_I2C_MST_CLK_MASK
MPU6050_I2C_SLV_RW_BIT
MPU6050_I2C_SLV_ADDR_BIT
MPU6050_I2C_SLV_ADDR_LENGTH
MPU6050_I2C_SLV_EN_BIT
MPU6050_I2C_SLV_BYTE_SW_BIT
MPU6050_I2C_SLV_REG_DIS_BIT
MPU6050_I2C_SLV_GRP_BIT
MPU6050_I2C_SLV_LEN_BIT
MPU6050_I2C_SLV_LEN_MASK
MPU6050_I2C_SLV4_RW_BIT
MPU6050_I2C_SLV4_ADDR_BIT
MPU6050_I2C_SLV4_ADDR_LENGTH
MPU6050_I2C_SLV4_EN_BIT
MPU6050_I2C_SLV4_INT_EN_BIT
MPU6050_I2C_SLV4_REG_DIS_BIT
MPU6050_I2C_SLV4_MST_DLY_BIT
MPU6050_I2C_SLV4_MST_DLY_LENGTH
MPU6050_MST_PASS_THROUGH_BIT
MPU6050_MST_I2C_SLV4_DONE_BIT
MPU6050_MST_I2C_LOST_ARB_BIT
MPU6050_MST_I2C_SLV4_NACK_BIT
MPU6050_MST_I2C_SLV3_NACK_BIT
MPU6050_MST_I2C_SLV2_NACK_BIT
MPU6050_MST_I2C_SLV1_NACK_BIT
MPU6050_MST_I2C_SLV0_NACK_BIT
MPU6050_INTCFG_INT_LEVEL_BIT
MPU6050_INTCFG_INT_OPEN_BIT
MPU6050_INTCFG_LATCH_INT_EN_BIT
MPU6050_INTCFG_INT_RD_CLEAR_BIT
MPU6050_INTCFG_FSYNC_INT_LEVEL_BIT
MPU6050_INTCFG_FSYNC_INT_EN_BIT
MPU6050_INTCFG_I2C_BYPASS_EN_BIT
MPU6050_INTCFG_CLKOUT_EN_BIT
MPU6050_INTERRUPT_FF_BIT
MPU6050_INTERRUPT_MOT_BIT
MPU6050_INTERRUPT_ZMOT_BIT
MPU6050_INTERRUPT_FIFO_OFLOW_BIT
MPU6050_INTERRUPT_I2C_MST_INT_BIT
MPU6050_INTERRUPT_PLL_RDY_INT_BIT
MPU6050_INTERRUPT_DMP_INT_BIT
MPU6050_INTERRUPT_DATA_RDY_BIT
MPU6050_MOTION_MOT_XNEG_BIT
MPU6050_MOTION_MOT_XPOS_BIT
MPU6050_MOTION_MOT_YNEG_BIT
MPU6050_MOTION_MOT_YPOS_BIT
MPU6050_MOTION_MOT_ZNEG_BIT
MPU6050_MOTION_MOT_ZPOS_BIT
MPU6050_MOTION_MOT_ZRMOT_BIT
MPU6050_DLYCTRL_DELAY_ES_SHADOW_BIT
MPU6050_DLYCTRL_I2C_SLV4_DLY_EN_BIT
MPU6050_DLYCTRL_I2C_SLV3_DLY_EN_BIT
MPU6050_DLYCTRL_I2C_SLV2_DLY_EN_BIT
MPU6050_DLYCTRL_I2C_SLV1_DLY_EN_BIT
MPU6050_DLYCTRL_I2C_SLV0_DLY_EN_BIT
MPU6050_PATHRESET_GYRO_RESET_BIT
MPU6050_PATHRESET_ACCEL_RESET_BIT
MPU6050_PATHRESET_TEMP_RESET_BIT
MPU6050_DETECT_ACCEL_DELAY_BIT
MPU6050_DETECT_ACCEL_DELAY_MASK
MPU6050_DETECT_FF_COUNT_BIT
MPU6050_DETECT_FF_COUNT_MASK
MPU6050_DETECT_MOT_COUNT_BIT
MPU6050_DETECT_MOT_COUNT_MASK
MPU6050_USERCTRL_DMP_EN_BIT
MPU6050_USERCTRL_FIFO_EN_BIT
MPU6050_USERCTRL_I2C_MST_EN_BIT
MPU6050_USERCTRL_I2C_IF_DIS_BIT
MPU6050_USERCTRL_DMP_RESET_BIT
MPU6050_USERCTRL_FIFO_RESET_BIT
MPU6050_USERCTRL_I2C_MST_RESET_BIT
MPU6050_USERCTRL_SIG_COND_RESET_BIT
MPU6050_PWR1_DEVICE_RESET_BIT
MPU6050_PWR1_SLEEP_BIT
MPU6050_PWR1_CYCLE_BIT
MPU6050_PWR1_TEMP_DIS_BIT
MPU6050_PWR1_CLKSEL_BIT
MPU6050_PWR1_CLKSEL_MASK
MPU6050_PWR2_LP_WAKE_CTRL_BIT
MPU6050_PWR2_LP_WAKE_CTRL_MASK
MPU6050_PWR2_STBY_XA_BIT
MPU6050_PWR2_STBY_YA_BIT
MPU6050_PWR2_STBY_ZA_BIT
MPU6050_PWR2_STBY_XG_BIT
MPU6050_PWR2_STBY_YG_BIT
MPU6050_PWR2_STBY_ZG_BIT
MPU6050_WHO_AM_I_BIT
MPU6050_WHO_AM_I_MASK
MPU6050_TC_PWR_MODE_BIT
MPU6050_TC_OFFSET_BIT
MPU6050_TC_OFFSET_LENGTH
MPU6050_TC_OTP_BNK_VLD_BIT
MPU6050_DMPINT_5_BIT
MPU6050_DMPINT_4_BIT
MPU6050_DMPINT_3_BIT
MPU6050_DMPINT_2_BIT
MPU6050_DMPINT_1_BIT
MPU6050_DMPINT_0_BIT