Microchip® Advanced Software Framework

bno055_doc.h File Reference

BNO055 sensor driver config.

Copyright (c) 2018 Microchip Technology Inc. and its subsidiaries.

#include "platform_files.h"
#include "bno055.h"

Data Structures

struct  bno055_accel_double_t
 struct for Accel-output data of precision double More...
 
struct  bno055_accel_float_t
 struct for Accel-output data of precision float More...
 
struct  bno055_accel_offset_t
 struct for Accel offset More...
 
struct  bno055_accel_t
 struct for accel data read from registers More...
 
struct  bno055_euler_double_t
 struct for Euler-output data of precision double More...
 
struct  bno055_euler_float_t
 struct for Euler-output data of precision float More...
 
struct  bno055_euler_t
 struct for Euler data read from registers More...
 
struct  bno055_gravity_double_t
 struct for Gravity-output data of precision double More...
 
struct  bno055_gravity_float_t
 struct for Gravity-output data of precision float More...
 
struct  bno055_gravity_t
 struct for Gravity data read from registers More...
 
struct  bno055_gyro_double_t
 struct for Gyro-output data of precision double More...
 
struct  bno055_gyro_float_t
 struct for Gyro-output data of precision float More...
 
struct  bno055_gyro_offset_t
 struct for Gyro offset More...
 
struct  bno055_gyro_t
 struct for Gyro data read from registers More...
 
struct  bno055_linear_accel_double_t
 struct for Linear Accel-output data of precision double More...
 
struct  bno055_linear_accel_float_t
 struct for Linear accel-output data of precision float More...
 
struct  bno055_linear_accel_t
 struct for Linear Accel data read from registers More...
 
struct  bno055_mag_double_t
 struct for Mag-output data of precision double More...
 
struct  bno055_mag_float_t
 struct for Mag-output data of precision float More...
 
struct  bno055_mag_offset_t
 struct for Mag offset More...
 
struct  bno055_mag_t
 struct for Mag data read from registers More...
 
struct  bno055_quaternion_t
 struct for Quaternion data read from registers More...
 
struct  bno055_sic_matrix_t
 struct for soft iron calibration matrix More...
 
struct  bno055_t
 bno055 struct More...
 

Macros

BUS READ AND WRITE FUNCTIONS
#define BNO055_WR_FUNC_PTR
 
#define BNO055_BUS_WRITE_FUNC(dev_addr, reg_addr, reg_data, wr_len)   bus_write(dev_addr, reg_addr, reg_data, wr_len)
 
#define BNO055_RD_FUNC_PTR
 
#define BNO055_BUS_READ_FUNC(dev_addr, reg_addr, reg_data, r_len)   bus_read(dev_addr, reg_addr, reg_data, r_len)
 
#define BNO055_DELAY_RETURN_TYPE   void
 
#define BNO055_DELAY_PARAM_TYPES   u32
 
#define BNO055_DELAY_FUNC(delay_in_msec)   delay_func(delay_in_msec)
 
I2C ADDRESS DEFINITION FOR BNO055
#define BNO055_I2C_ADDR1   0x28
 
#define BNO055_I2C_ADDR2   0x29
 
REGISTER ADDRESS DEFINITION
#define BNO055_PAGE_ID_ADDR   0X07
 
#define BNO055_CHIP_ID_ADDR   0x00
 
#define BNO055_ACCEL_REV_ID_ADDR   0x01
 
#define BNO055_MAG_REV_ID_ADDR   0x02
 
#define BNO055_GYRO_REV_ID_ADDR   0x03
 
#define BNO055_SW_REV_ID_LSB_ADDR   0x04
 
#define BNO055_SW_REV_ID_MSB_ADDR   0x05
 
#define BNO055_BL_REV_ID_ADDR   0X06
 
#define BNO055_ACCEL_DATA_X_LSB_ADDR   0X08
 
#define BNO055_ACCEL_DATA_X_MSB_ADDR   0X09
 
#define BNO055_ACCEL_DATA_Y_LSB_ADDR   0X0A
 
#define BNO055_ACCEL_DATA_Y_MSB_ADDR   0X0B
 
#define BNO055_ACCEL_DATA_Z_LSB_ADDR   0X0C
 
#define BNO055_ACCEL_DATA_Z_MSB_ADDR   0X0D
 
#define BNO055_MAG_DATA_X_LSB_ADDR   0X0E
 
#define BNO055_MAG_DATA_X_MSB_ADDR   0X0F
 
#define BNO055_MAG_DATA_Y_LSB_ADDR   0X10
 
#define BNO055_MAG_DATA_Y_MSB_ADDR   0X11
 
#define BNO055_MAG_DATA_Z_LSB_ADDR   0X12
 
#define BNO055_MAG_DATA_Z_MSB_ADDR   0X13
 
#define BNO055_GYRO_DATA_X_LSB_ADDR   0X14
 
#define BNO055_GYRO_DATA_X_MSB_ADDR   0X15
 
#define BNO055_GYRO_DATA_Y_LSB_ADDR   0X16
 
#define BNO055_GYRO_DATA_Y_MSB_ADDR   0X17
 
#define BNO055_GYRO_DATA_Z_LSB_ADDR   0X18
 
#define BNO055_GYRO_DATA_Z_MSB_ADDR   0X19
 
#define BNO055_EULER_H_LSB_ADDR   0X1A
 
#define BNO055_EULER_H_MSB_ADDR   0X1B
 
#define BNO055_EULER_R_LSB_ADDR   0X1C
 
#define BNO055_EULER_R_MSB_ADDR   0X1D
 
#define BNO055_EULER_P_LSB_ADDR   0X1E
 
#define BNO055_EULER_P_MSB_ADDR   0X1F
 
#define BNO055_QUATERNION_DATA_W_LSB_ADDR   0X20
 
#define BNO055_QUATERNION_DATA_W_MSB_ADDR   0X21
 
#define BNO055_QUATERNION_DATA_X_LSB_ADDR   0X22
 
#define BNO055_QUATERNION_DATA_X_MSB_ADDR   0X23
 
#define BNO055_QUATERNION_DATA_Y_LSB_ADDR   0X24
 
#define BNO055_QUATERNION_DATA_Y_MSB_ADDR   0X25
 
#define BNO055_QUATERNION_DATA_Z_LSB_ADDR   0X26
 
#define BNO055_QUATERNION_DATA_Z_MSB_ADDR   0X27
 
#define BNO055_LINEAR_ACCEL_DATA_X_LSB_ADDR   0X28
 
#define BNO055_LINEAR_ACCEL_DATA_X_MSB_ADDR   0X29
 
#define BNO055_LINEAR_ACCEL_DATA_Y_LSB_ADDR   0X2A
 
#define BNO055_LINEAR_ACCEL_DATA_Y_MSB_ADDR   0X2B
 
#define BNO055_LINEAR_ACCEL_DATA_Z_LSB_ADDR   0X2C
 
#define BNO055_LINEAR_ACCEL_DATA_Z_MSB_ADDR   0X2D
 
#define BNO055_GRAVITY_DATA_X_LSB_ADDR   0X2E
 
#define BNO055_GRAVITY_DATA_X_MSB_ADDR   0X2F
 
#define BNO055_GRAVITY_DATA_Y_LSB_ADDR   0X30
 
#define BNO055_GRAVITY_DATA_Y_MSB_ADDR   0X31
 
#define BNO055_GRAVITY_DATA_Z_LSB_ADDR   0X32
 
#define BNO055_GRAVITY_DATA_Z_MSB_ADDR   0X33
 
#define BNO055_TEMP_ADDR   0X34
 
#define BNO055_CALIB_STAT_ADDR   0X35
 
#define BNO055_SELFTEST_RESULT_ADDR   0X36
 
#define BNO055_INTR_STAT_ADDR   0X37
 
#define BNO055_SYS_CLK_STAT_ADDR   0X38
 
#define BNO055_SYS_STAT_ADDR   0X39
 
#define BNO055_SYS_ERR_ADDR   0X3A
 
#define BNO055_UNIT_SEL_ADDR   0X3B
 
#define BNO055_DATA_SELECT_ADDR   0X3C
 
#define BNO055_OPR_MODE_ADDR   0X3D
 
#define BNO055_PWR_MODE_ADDR   0X3E
 
#define BNO055_SYS_TRIGGER_ADDR   0X3F
 
#define BNO055_TEMP_SOURCE_ADDR   0X40
 
#define BNO055_AXIS_MAP_CONFIG_ADDR   0X41
 
#define BNO055_AXIS_MAP_SIGN_ADDR   0X42
 
#define BNO055_SIC_MATRIX_0_LSB_ADDR   0X43
 
#define BNO055_SIC_MATRIX_0_MSB_ADDR   0X44
 
#define BNO055_SIC_MATRIX_1_LSB_ADDR   0X45
 
#define BNO055_SIC_MATRIX_1_MSB_ADDR   0X46
 
#define BNO055_SIC_MATRIX_2_LSB_ADDR   0X47
 
#define BNO055_SIC_MATRIX_2_MSB_ADDR   0X48
 
#define BNO055_SIC_MATRIX_3_LSB_ADDR   0X49
 
#define BNO055_SIC_MATRIX_3_MSB_ADDR   0X4A
 
#define BNO055_SIC_MATRIX_4_LSB_ADDR   0X4B
 
#define BNO055_SIC_MATRIX_4_MSB_ADDR   0X4C
 
#define BNO055_SIC_MATRIX_5_LSB_ADDR   0X4D
 
#define BNO055_SIC_MATRIX_5_MSB_ADDR   0X4E
 
#define BNO055_SIC_MATRIX_6_LSB_ADDR   0X4F
 
#define BNO055_SIC_MATRIX_6_MSB_ADDR   0X50
 
#define BNO055_SIC_MATRIX_7_LSB_ADDR   0X51
 
#define BNO055_SIC_MATRIX_7_MSB_ADDR   0X52
 
#define BNO055_SIC_MATRIX_8_LSB_ADDR   0X53
 
#define BNO055_SIC_MATRIX_8_MSB_ADDR   0X54
 
#define ACCEL_OFFSET_X_LSB_ADDR   0X55
 
#define ACCEL_OFFSET_X_MSB_ADDR   0X56
 
#define ACCEL_OFFSET_Y_LSB_ADDR   0X57
 
#define ACCEL_OFFSET_Y_MSB_ADDR   0X58
 
#define ACCEL_OFFSET_Z_LSB_ADDR   0X59
 
#define ACCEL_OFFSET_Z_MSB_ADDR   0X5A
 
#define MAG_OFFSET_X_LSB_ADDR   0X5B
 
#define MAG_OFFSET_X_MSB_ADDR   0X5C
 
#define MAG_OFFSET_Y_LSB_ADDR   0X5D
 
#define MAG_OFFSET_Y_MSB_ADDR   0X5E
 
#define MAG_OFFSET_Z_LSB_ADDR   0X5F
 
#define MAG_OFFSET_Z_MSB_ADDR   0X60
 
#define GYRO_OFFSET_X_LSB_ADDR   0X61
 
#define GYRO_OFFSET_X_MSB_ADDR   0X62
 
#define GYRO_OFFSET_Y_LSB_ADDR   0X63
 
#define GYRO_OFFSET_Y_MSB_ADDR   0X64
 
#define GYRO_OFFSET_Z_LSB_ADDR   0X65
 
#define GYRO_OFFSET_Z_MSB_ADDR   0X66
 
#define ACCEL_RADIUS_LSB_ADDR   0X67
 
#define ACCEL_RADIUS_MSB_ADDR   0X68
 
#define MAG_RADIUS_LSB_ADDR   0X69
 
#define MAG_RADIUS_MSB_ADDR   0X6A
 
#define ACCEL_CONFIG_ADDR   0X08
 
#define MAG_CONFIG_ADDR   0X09
 
#define GYRO_CONFIG_ADDR   0X0A
 
#define GYRO_MODE_CONFIG_ADDR   0X0B
 
#define ACCEL_SLEEP_CONFIG_ADDR   0X0C
 
#define GYRO_SLEEP_CONFIG_ADDR   0X0D
 
#define MAG_SLEEP_CONFIG_ADDR   0x0E
 
#define INT_MASK_ADDR   0X0F
 
#define INT_ADDR   0X10
 
#define ACCEL_ANY_MOTION_THRES_ADDR   0X11
 
#define ACCEL_INTR_SETTINGS_ADDR   0X12
 
#define ACCEL_HIGH_G_DURN_ADDR   0X13
 
#define ACCEL_HIGH_G_THRES_ADDR   0X14
 
#define ACCEL_NO_MOTION_THRES_ADDR   0X15
 
#define ACCEL_NO_MOTION_SET_ADDR   0X16
 
#define GYRO_INTR_SETING_ADDR   0X17
 
#define GYRO_HIGHRATE_X_SET_ADDR   0X18
 
#define GYRO_DURN_X_ADDR   0X19
 
#define GYRO_HIGHRATE_Y_SET_ADDR   0X1A
 
#define GYRO_DURN_Y_ADDR   0X1B
 
#define GYRO_HIGHRATE_Z_SET_ADDR   0X1C
 
#define GYRO_DURN_Z_ADDR   0X1D
 
#define GYRO_ANY_MOTION_THRES_ADDR   0X1E
 
#define GYRO_ANY_MOTION_SET_ADDR   0X1F
 
#define BNO055_MDELAY_DATA_TYPE   u32
 
#define BNO055_RETURN_FUNCTION_TYPE   s8
 
#define BNO055_FLOAT_ENABLE
 
#define BNO055_DOUBLE_ENABLE
 
CONSTANT DEFINITIONS
#define BNO055_ZERO_U8X   ((u8)0)
 
#define BNO055_ONE_U8X   ((u8)1)
 
#define BNO055_TWO_U8X   ((u8)2)
 
#define BNO055_FOUR_U8X   ((u8)4)
 
#define BNO055_FIVE_U8X   ((u8)5)
 
#define BNO055_SIX_U8X   ((u8)6)
 
#define BNO055_SEVEN_U8X   ((u8)7)
 
#define BNO055_ELEVEN_U8X   ((u8)11)
 
#define BNO055_SIXTEEN_U8X   ((u8)16)
 
#define BNO055_EIGHT_U8X   ((u8)8)
 
#define BNO055_TWENTY_U8X   ((u8)20)
 
#define BNO055_EIGHTEEN_U8X   ((u8)18)
 
#define BNO055_SHIFT_8_POSITION   ((u8)8)
 
#define E_NULL_PTR   ((s8)-127)
 
#define E_BNO055_OUT_OF_RANGE   ((s8)-2)
 
#define SUCCESS   ((u8)0)
 
#define ERROR   ((s8)-1)
 
#define ENABLED   0x01
 
#define DISABLED   0x00
 
#define PAGE_ZERO   0X00
 
#define PAGE_ONE   0X01
 
#define ACCEL_TEMP_EN   0x00
 
#define GYRO_TEMP_EN   0x01
 
#define MCU_TEMP_EN   0x03
 
#define ACCEL_UNIT_MSQ   0x00
 
#define ACCEL_UNIT_MG   0x01
 
#define GYRO_UNIT_DPS   0x00
 
#define GYRO_UNIT_RPS   0x01
 
#define EULER_UNIT_DEG   0x00
 
#define EULER_UNIT_RAD   0x01
 
#define TEMP_UNIT_CELSIUS   0x00
 
#define TEMP_UNIT_FAHRENHEIT   0x01
 
#define ACCEL_DIV_MSQ   100.0
 
#define ACCEL_DIV_MG   1
 
#define MAG_DIV_UT   16.0
 
#define GYRO_DIV_DPS   16.0
 
#define GYRO_DIV_RPS   900.0
 
#define EULER_DIV_DEG   16.0
 
#define EULER_DIV_RAD   900.0
 
#define LINEAR_ACCEL_DIV_MSQ   100.0
 
#define GRAVITY_DIV_MSQ   100.0
 
#define TEMP_DIV_FAHRENHEIT   0.5
 
#define TEMP_DIV_CELSIUS   1
 
#define BNO055_SIX_HUNDRES_U8X   600
 
#define OPERATION_MODE_CONFIG   0X00
 
#define OPERATION_MODE_ACCONLY   0X01
 
#define OPERATION_MODE_MAGONLY   0X02
 
#define OPERATION_MODE_GYRONLY   0X03
 
#define OPERATION_MODE_ACCMAG   0X04
 
#define OPERATION_MODE_ACCGYRO   0X05
 
#define OPERATION_MODE_MAGGYRO   0X06
 
#define OPERATION_MODE_AMG   0X07
 
#define OPERATION_MODE_IMUPLUS   0X08
 
#define OPERATION_MODE_COMPASS   0X09
 
#define OPERATION_MODE_M4G   0X0A
 
#define OPERATION_MODE_NDOF_FMC_OFF   0X0B
 
#define OPERATION_MODE_NDOF   0X0C
 
#define POWER_MODE_NORMAL   0X00
 
#define POWER_MODE_LOWPOWER   0X01
 
#define POWER_MODE_SUSPEND   0X02
 
#define ACCEL_RANGE_2G   0X00
 
#define ACCEL_RANGE_4G   0X01
 
#define ACCEL_RANGE_8G   0X02
 
#define ACCEL_RANGE_16G   0X03
 
#define ACCEL_BW_7_81HZ   0x00
 
#define ACCEL_BW_15_63HZ   0x01
 
#define ACCEL_BW_31_25HZ   0x02
 
#define ACCEL_BW_62_5HZ   0X03
 
#define ACCEL_BW_125HZ   0X04
 
#define ACCEL_BW_250HZ   0X05
 
#define ACCEL_BW_500HZ   0X06
 
#define ACCEL_BW_1000HZ   0X07
 
#define ACCEL_NORMAL   0X00
 
#define ACCEL_SUSPEND   0X01
 
#define ACCEL_LOWPOWER_1   0X02
 
#define ACCEL_STANDBY   0X03
 
#define ACCEL_LOWPOWER_2   0X04
 
#define ACCEL_DEEPSUSPEND   0X05
 
#define MAG_DATA_OUTRATE_2HZ   0X00
 
#define MAG_DATA_OUTRATE_6HZ   0X01
 
#define MAG_DATA_OUTRATE_8HZ   0X02
 
#define MAG_DATA_OUTRATE_10HZ   0X03
 
#define MAG_DATA_OUTRATE_15HZ   0X04
 
#define MAG_DATA_OUTRATE_20HZ   0X05
 
#define MAG_DATA_OUTRATE_25HZ   0X06
 
#define MAG_DATA_OUTRATE_30HZ   0X07
 
#define MAG_OPERATION_MODE_LOWPOWER   0X00
 
#define MAG_OPERATION_MODE_REGULAR   0X01
 
#define MAG_OPERATION_MODE_ENHANCED_REGULAR   0X02
 
#define MAG_OPERATION_MODE_HIGH_ACCURACY   0X03
 
#define MAG_POWER_MODE_NORMAL   0X00
 
#define MAG_POWER_MODE_SLEEP   0X01
 
#define MAG_POWER_MODE_SUSPEND   0X02
 
#define MAG_POWER_MODE_FORCE_MODE   0X03
 
#define GYRO_RANGE_2000DPS   0x00
 
#define GYRO_RANGE_1000DPS   0x01
 
#define GYRO_RANGE_500DPS   0x02
 
#define GYRO_RANGE_250DPS   0x03
 
#define GYRO_RANGE_125DPS   0x04
 
#define GYRO_BW_523HZ   0x00
 
#define GYRO_BW_230HZ   0x01
 
#define GYRO_BW_116HZ   0x02
 
#define GYRO_BW_47HZ   0x03
 
#define GYRO_BW_23HZ   0x04
 
#define GYRO_BW_12HZ   0x05
 
#define GYRO_BW_64HZ   0x06
 
#define GYRO_BW_32HZ   0x07
 
#define GYRO_POWER_MODE_NORMAL   0X00
 
#define GYRO_POWER_MODE_FASTPOWERUP   0X01
 
#define GYRO_POWER_MODE_DEEPSUSPEND   0X02
 
#define GYRO_POWER_MODE_SUSPEND   0X03
 
#define GYRO_POWER_MODE_ADVANCE_POWERSAVE   0X04
 
#define BNO055_ACCEL_SLEEP_DURN_0_5MS   0x05
 
#define BNO055_ACCEL_SLEEP_DURN_1MS   0x06
 
#define BNO055_ACCEL_SLEEP_DURN_2MS   0x07
 
#define BNO055_ACCEL_SLEEP_DURN_4MS   0x08
 
#define BNO055_ACCEL_SLEEP_DURN_6MS   0x09
 
#define BNO055_ACCEL_SLEEP_DURN_10MS   0x0A
 
#define BNO055_ACCEL_SLEEP_DURN_25MS   0x0B
 
#define BNO055_ACCEL_SLEEP_DURN_50MS   0x0C
 
#define BNO055_ACCEL_SLEEP_DURN_100MS   0x0D
 
#define BNO055_ACCEL_SLEEP_DURN_500MS   0x0E
 
#define BNO055_ACCEL_SLEEP_DURN_1S   0x0F
 
#define BNO055_GYRO_No_AUTOSLPDUR   0x00
 
#define BNO055_GYRO_4MS_AUTOSLPDUR   0x01
 
#define BNO055_GYRO_5MS_AUTOSLPDUR   0x02
 
#define BNO055_GYRO_8MS_AUTOSLPDUR   0x03
 
#define BNO055_GYRO_10MS_AUTOSLPDUR   0x04
 
#define BNO055_GYRO_15MS_AUTOSLPDUR   0x05
 
#define BNO055_GYRO_20MS_AUTOSLPDUR   0x06
 
#define BNO055_GYRO_40MS_AUTOSLPDUR   0x07
 
#define BNO055_ACCEL_ANY_MOTION_NO_MOTION_X_AXIS   0
 
#define BNO055_ACCEL_ANY_MOTION_NO_MOTION_Y_AXIS   1
 
#define BNO055_ACCEL_ANY_MOTION_NO_MOTION_Z_AXIS   2
 
#define BNO055_ACCEL_HIGH_G_X_AXIS   0
 
#define BNO055_ACCEL_HIGH_G_Y_AXIS   1
 
#define BNO055_ACCEL_HIGH_G_Z_AXIS   2
 
#define BNO055_GYRO_ANY_MOTION_X_AXIS   0
 
#define BNO055_GYRO_ANY_MOTION_Y_AXIS   1
 
#define BNO055_GYRO_ANY_MOTION_Z_AXIS   2
 
#define BNO055_GYRO_HIGHRATE_X_AXIS   0
 
#define BNO055_GYRO_HIGHRATE_Y_AXIS   1
 
#define BNO055_GYRO_HIGHRATE_Z_AXIS   2
 
#define REMAP_X_Y   0X21
 
#define REMAP_Y_Z   0X18
 
#define REMAP_Z_X   0X06
 
#define REMAP_X_Y_Z_TYPE0   0X12
 
#define REMAP_X_Y_Z_TYPE1   0X09
 
#define DEFAULT_AXIS   0X24
 
#define REMAP_AXIS_POSITIVE   0X00
 
#define REMAP_AXIS_NEGATIVE   0X01
 
#define FILTERED   0x00
 
#define UNFILTERED   0x01
 
#define BNO055_SIC_HEX_0_0_F_F_DATA   0x00FF
 
ARRAY SIZE DEFINITIONS
#define ARRAY_SIZE_TWO   2
 
#define ARRAY_SIZE_THREE   3
 
#define ARRAY_SIZE_SIX   6
 
#define ARRAY_SIZE_FIVE   5
 
#define ARRAY_SIZE_EIGHT   8
 
#define ARRAY_SIZE_TWELVE   12
 
#define ARRAY_SIZE_FOURTEEN   14
 
#define ARRAY_SIZE_EIGHTEEN   18
 
#define ARRAY_SIZE_TWENTY_SIX   26
 
#define INDEX_ZERO   0
 
#define INDEX_ONE   1
 
#define INDEX_TWO   2
 
#define INDEX_THREE   3
 
#define INDEX_FOUR   4
 
#define INDEX_FIVE   5
 
#define INDEX_SIX   6
 
#define INDEX_SEVEN   7
 
#define INDEX_EIGHT   8
 
#define INDEX_NINE   9
 
#define INDEX_TEN   10
 
#define INDEX_ELEVEN   11
 
#define INDEX_TWELVE   12
 
#define INDEX_THIRTEEN   13
 
#define INDEX_FOURTEEN   14
 
#define INDEX_FIVETEEN   15
 
#define INDEX_SIXTEEN   16
 
#define INDEX_SEVENTEEN   17
 
#define INDEX_EIGHTEEN   18
 
#define INDEX_NINETEEN   19
 
#define INDEX_TWENTY   20
 
#define INDEX_TWENTY_ONE   21
 
#define INDEX_TWENTY_TWO   22
 
#define INDEX_TWENTY_THREE   23
 
#define INDEX_TWENTY_FIVE   25
 
ARRAY PARAMETERS
#define LSB_ZERO   0
 
#define MSB_ONE   1
 
#define LSB_TWO   2
 
#define MSB_THREE   3
 
#define LSB_FOUR   4
 
#define MSB_FIVE   5
 
#define LSB_SIX   6
 
#define MSB_SEVEN   7
 
PAGE0 DATA REGISTERS DEFINITION
#define BNO055_CHIP_ID__POS   0
 
#define BNO055_CHIP_ID__MSK   0xFF
 
#define BNO055_CHIP_ID__LEN   8
 
#define BNO055_CHIP_ID__REG   BNO055_CHIP_ID_ADDR
 
#define BNO055_ACCEL_REV_ID__POS   0
 
#define BNO055_ACCEL_REV_ID__MSK   0xFF
 
#define BNO055_ACCEL_REV_ID__LEN   8
 
#define BNO055_ACCEL_REV_ID__REG   BNO055_ACCEL_REV_ID_ADDR
 
#define BNO055_MAG_REV_ID__POS   0
 
#define BNO055_MAG_REV_ID__MSK   0xFF
 
#define BNO055_MAG_REV_ID__LEN   8
 
#define BNO055_MAG_REV_ID__REG   BNO055_MAG_REV_ID_ADDR
 
#define BNO055_GYRO_REV_ID__POS   0
 
#define BNO055_GYRO_REV_ID__MSK   0xFF
 
#define BNO055_GYRO_REV_ID__LEN   8
 
#define BNO055_GYRO_REV_ID__REG   BNO055_GYRO_REV_ID_ADDR
 
#define BNO055_SW_REV_ID_LSB__POS   0
 
#define BNO055_SW_REV_ID_LSB__MSK   0xFF
 
#define BNO055_SW_REV_ID_LSB__LEN   8
 
#define BNO055_SW_REV_ID_LSB__REG   BNO055_SW_REV_ID_LSB_ADDR
 
#define BNO055_SW_REV_ID_MSB__POS   0
 
#define BNO055_SW_REV_ID_MSB__MSK   0xFF
 
#define BNO055_SW_REV_ID_MSB__LEN   8
 
#define BNO055_SW_REV_ID_MSB__REG   BNO055_SW_REV_ID_MSB_ADDR
 
#define BNO055_BL_REV_ID__POS   0
 
#define BNO055_BL_REV_ID__MSK   0xFF
 
#define BNO055_BL_REV_ID__LEN   8
 
#define BNO055_BL_REV_ID__REG   BNO055_BL_REV_ID_ADDR
 
#define BNO055_PAGE_ID__POS   0
 
#define BNO055_PAGE_ID__MSK   0xFF
 
#define BNO055_PAGE_ID__LEN   8
 
#define BNO055_PAGE_ID__REG   BNO055_PAGE_ID_ADDR
 
#define BNO055_ACCEL_DATA_X_LSB_VALUEX__POS   0
 
#define BNO055_ACCEL_DATA_X_LSB_VALUEX__MSK   0xFF
 
#define BNO055_ACCEL_DATA_X_LSB_VALUEX__LEN   8
 
#define BNO055_ACCEL_DATA_X_LSB_VALUEX__REG   BNO055_ACCEL_DATA_X_LSB_ADDR
 
#define BNO055_ACCEL_DATA_X_MSB_VALUEX__POS   0
 
#define BNO055_ACCEL_DATA_X_MSB_VALUEX__MSK   0xFF
 
#define BNO055_ACCEL_DATA_X_MSB_VALUEX__LEN   8
 
#define BNO055_ACCEL_DATA_X_MSB_VALUEX__REG   BNO055_ACCEL_DATA_X_MSB_ADDR
 
#define BNO055_ACCEL_DATA_Y_LSB_VALUEY__POS   0
 
#define BNO055_ACCEL_DATA_Y_LSB_VALUEY__MSK   0xFF
 
#define BNO055_ACCEL_DATA_Y_LSB_VALUEY__LEN   8
 
#define BNO055_ACCEL_DATA_Y_LSB_VALUEY__REG   BNO055_ACCEL_DATA_Y_LSB_ADDR
 
#define BNO055_ACCEL_DATA_Y_MSB_VALUEY__POS   0
 
#define BNO055_ACCEL_DATA_Y_MSB_VALUEY__MSK   0xFF
 
#define BNO055_ACCEL_DATA_Y_MSB_VALUEY__LEN   8
 
#define BNO055_ACCEL_DATA_Y_MSB_VALUEY__REG   BNO055_ACCEL_DATA_Y_MSB_ADDR
 
#define BNO055_ACCEL_DATA_Z_LSB_VALUEZ__POS   0
 
#define BNO055_ACCEL_DATA_Z_LSB_VALUEZ__MSK   0xFF
 
#define BNO055_ACCEL_DATA_Z_LSB_VALUEZ__LEN   8
 
#define BNO055_ACCEL_DATA_Z_LSB_VALUEZ__REG   BNO055_ACCEL_DATA_Z_LSB_ADDR
 
#define BNO055_ACCEL_DATA_Z_MSB_VALUEZ__POS   0
 
#define BNO055_ACCEL_DATA_Z_MSB_VALUEZ__MSK   0xFF
 
#define BNO055_ACCEL_DATA_Z_MSB_VALUEZ__LEN   8
 
#define BNO055_ACCEL_DATA_Z_MSB_VALUEZ__REG   BNO055_ACCEL_DATA_Z_MSB_ADDR
 
#define BNO055_MAG_DATA_X_LSB_VALUEX__POS   0
 
#define BNO055_MAG_DATA_X_LSB_VALUEX__MSK   0xFF
 
#define BNO055_MAG_DATA_X_LSB_VALUEX__LEN   8
 
#define BNO055_MAG_DATA_X_LSB_VALUEX__REG   BNO055_MAG_DATA_X_LSB_ADDR
 
#define BNO055_MAG_DATA_X_MSB_VALUEX__POS   0
 
#define BNO055_MAG_DATA_X_MSB_VALUEX__MSK   0xFF
 
#define BNO055_MAG_DATA_X_MSB_VALUEX__LEN   8
 
#define BNO055_MAG_DATA_X_MSB_VALUEX__REG   BNO055_MAG_DATA_X_MSB_ADDR
 
#define BNO055_MAG_DATA_Y_LSB_VALUEY__POS   0
 
#define BNO055_MAG_DATA_Y_LSB_VALUEY__MSK   0xFF
 
#define BNO055_MAG_DATA_Y_LSB_VALUEY__LEN   8
 
#define BNO055_MAG_DATA_Y_LSB_VALUEY__REG   BNO055_MAG_DATA_Y_LSB_ADDR
 
#define BNO055_MAG_DATA_Y_MSB_VALUEY__POS   0
 
#define BNO055_MAG_DATA_Y_MSB_VALUEY__MSK   0xFF
 
#define BNO055_MAG_DATA_Y_MSB_VALUEY__LEN   8
 
#define BNO055_MAG_DATA_Y_MSB_VALUEY__REG   BNO055_MAG_DATA_Y_MSB_ADDR
 
#define BNO055_MAG_DATA_Z_LSB_VALUEZ__POS   0
 
#define BNO055_MAG_DATA_Z_LSB_VALUEZ__MSK   0xFF
 
#define BNO055_MAG_DATA_Z_LSB_VALUEZ__LEN   8
 
#define BNO055_MAG_DATA_Z_LSB_VALUEZ__REG   BNO055_MAG_DATA_Z_LSB_ADDR
 
#define BNO055_MAG_DATA_Z_MSB_VALUEZ__POS   0
 
#define BNO055_MAG_DATA_Z_MSB_VALUEZ__MSK   0xFF
 
#define BNO055_MAG_DATA_Z_MSB_VALUEZ__LEN   8
 
#define BNO055_MAG_DATA_Z_MSB_VALUEZ__REG   BNO055_MAG_DATA_Z_MSB_ADDR
 
#define BNO055_GYRO_DATA_X_LSB_VALUEX__POS   0
 
#define BNO055_GYRO_DATA_X_LSB_VALUEX__MSK   0xFF
 
#define BNO055_GYRO_DATA_X_LSB_VALUEX__LEN   8
 
#define BNO055_GYRO_DATA_X_LSB_VALUEX__REG   BNO055_GYRO_DATA_X_LSB_ADDR
 
#define BNO055_GYRO_DATA_X_MSB_VALUEX__POS   0
 
#define BNO055_GYRO_DATA_X_MSB_VALUEX__MSK   0xFF
 
#define BNO055_GYRO_DATA_X_MSB_VALUEX__LEN   8
 
#define BNO055_GYRO_DATA_X_MSB_VALUEX__REG   BNO055_GYRO_DATA_X_MSB_ADDR
 
#define BNO055_GYRO_DATA_Y_LSB_VALUEY__POS   0
 
#define BNO055_GYRO_DATA_Y_LSB_VALUEY__MSK   0xFF
 
#define BNO055_GYRO_DATA_Y_LSB_VALUEY__LEN   8
 
#define BNO055_GYRO_DATA_Y_LSB_VALUEY__REG   BNO055_GYRO_DATA_Y_LSB_ADDR
 
#define BNO055_GYRO_DATA_Y_MSB_VALUEY__POS   0
 
#define BNO055_GYRO_DATA_Y_MSB_VALUEY__MSK   0xFF
 
#define BNO055_GYRO_DATA_Y_MSB_VALUEY__LEN   8
 
#define BNO055_GYRO_DATA_Y_MSB_VALUEY__REG   BNO055_GYRO_DATA_Y_MSB_ADDR
 
#define BNO055_GYRO_DATA_Z_LSB_VALUEZ__POS   0
 
#define BNO055_GYRO_DATA_Z_LSB_VALUEZ__MSK   0xFF
 
#define BNO055_GYRO_DATA_Z_LSB_VALUEZ__LEN   8
 
#define BNO055_GYRO_DATA_Z_LSB_VALUEZ__REG   BNO055_GYRO_DATA_Z_LSB_ADDR
 
#define BNO055_GYRO_DATA_Z_MSB_VALUEZ__POS   0
 
#define BNO055_GYRO_DATA_Z_MSB_VALUEZ__MSK   0xFF
 
#define BNO055_GYRO_DATA_Z_MSB_VALUEZ__LEN   8
 
#define BNO055_GYRO_DATA_Z_MSB_VALUEZ__REG   BNO055_GYRO_DATA_Z_MSB_ADDR
 
#define BNO055_EULER_H_LSB_VALUEH__POS   0
 
#define BNO055_EULER_H_LSB_VALUEH__MSK   0xFF
 
#define BNO055_EULER_H_LSB_VALUEH__LEN   8
 
#define BNO055_EULER_H_LSB_VALUEH__REG   BNO055_EULER_H_LSB_ADDR
 
#define BNO055_EULER_H_MSB_VALUEH__POS   0
 
#define BNO055_EULER_H_MSB_VALUEH__MSK   0xFF
 
#define BNO055_EULER_H_MSB_VALUEH__LEN   8
 
#define BNO055_EULER_H_MSB_VALUEH__REG   BNO055_EULER_H_MSB_ADDR
 
#define BNO055_EULER_R_LSB_VALUER__POS   0
 
#define BNO055_EULER_R_LSB_VALUER__MSK   0xFF
 
#define BNO055_EULER_R_LSB_VALUER__LEN   8
 
#define BNO055_EULER_R_LSB_VALUER__REG   BNO055_EULER_R_LSB_ADDR
 
#define BNO055_EULER_R_MSB_VALUER__POS   0
 
#define BNO055_EULER_R_MSB_VALUER__MSK   0xFF
 
#define BNO055_EULER_R_MSB_VALUER__LEN   8
 
#define BNO055_EULER_R_MSB_VALUER__REG   BNO055_EULER_R_MSB_ADDR
 
#define BNO055_EULER_P_LSB_VALUEP__POS   0
 
#define BNO055_EULER_P_LSB_VALUEP__MSK   0xFF
 
#define BNO055_EULER_P_LSB_VALUEP__LEN   8
 
#define BNO055_EULER_P_LSB_VALUEP__REG   BNO055_EULER_P_LSB_ADDR
 
#define BNO055_EULER_P_MSB_VALUEP__POS   0
 
#define BNO055_EULER_P_MSB_VALUEP__MSK   0xFF
 
#define BNO055_EULER_P_MSB_VALUEP__LEN   8
 
#define BNO055_EULER_P_MSB_VALUEP__REG   BNO055_EULER_P_MSB_ADDR
 
#define BNO055_QUATERNION_DATA_W_LSB_VALUEW__POS   0
 
#define BNO055_QUATERNION_DATA_W_LSB_VALUEW__MSK   0xFF
 
#define BNO055_QUATERNION_DATA_W_LSB_VALUEW__LEN   8
 
#define BNO055_QUATERNION_DATA_W_LSB_VALUEW__REG   BNO055_QUATERNION_DATA_W_LSB_ADDR
 
#define BNO055_QUATERNION_DATA_W_MSB_VALUEW__POS   0
 
#define BNO055_QUATERNION_DATA_W_MSB_VALUEW__MSK   0xFF
 
#define BNO055_QUATERNION_DATA_W_MSB_VALUEW__LEN   8
 
#define BNO055_QUATERNION_DATA_W_MSB_VALUEW__REG   BNO055_QUATERNION_DATA_W_MSB_ADDR
 
#define BNO055_QUATERNION_DATA_X_LSB_VALUEX__POS   0
 
#define BNO055_QUATERNION_DATA_X_LSB_VALUEX__MSK   0xFF
 
#define BNO055_QUATERNION_DATA_X_LSB_VALUEX__LEN   8
 
#define BNO055_QUATERNION_DATA_X_LSB_VALUEX__REG   BNO055_QUATERNION_DATA_X_LSB_ADDR
 
#define BNO055_QUATERNION_DATA_X_MSB_VALUEX__POS   0
 
#define BNO055_QUATERNION_DATA_X_MSB_VALUEX__MSK   0xFF
 
#define BNO055_QUATERNION_DATA_X_MSB_VALUEX__LEN   8
 
#define BNO055_QUATERNION_DATA_X_MSB_VALUEX__REG   BNO055_QUATERNION_DATA_X_MSB_ADDR
 
#define BNO055_QUATERNION_DATA_Y_LSB_VALUEY__POS   0
 
#define BNO055_QUATERNION_DATA_Y_LSB_VALUEY__MSK   0xFF
 
#define BNO055_QUATERNION_DATA_Y_LSB_VALUEY__LEN   8
 
#define BNO055_QUATERNION_DATA_Y_LSB_VALUEY__REG   BNO055_QUATERNION_DATA_Y_LSB_ADDR
 
#define BNO055_QUATERNION_DATA_Y_MSB_VALUEY__POS   0
 
#define BNO055_QUATERNION_DATA_Y_MSB_VALUEY__MSK   0xFF
 
#define BNO055_QUATERNION_DATA_Y_MSB_VALUEY__LEN   8
 
#define BNO055_QUATERNION_DATA_Y_MSB_VALUEY__REG   NO055_QUATERNION_DATA_Y_MSB_ADDR
 
#define BNO055_QUATERNION_DATA_Z_LSB_VALUEZ__POS   0
 
#define BNO055_QUATERNION_DATA_Z_LSB_VALUEZ__MSK   0xFF
 
#define BNO055_QUATERNION_DATA_Z_LSB_VALUEZ__LEN   8
 
#define BNO055_QUATERNION_DATA_Z_LSB_VALUEZ__REG   BNO055_QUATERNION_DATA_Z_LSB_ADDR
 
#define BNO055_QUATERNION_DATA_Z_MSB_VALUEZ__POS   0
 
#define BNO055_QUATERNION_DATA_Z_MSB_VALUEZ__MSK   0xFF
 
#define BNO055_QUATERNION_DATA_Z_MSB_VALUEZ__LEN   8
 
#define BNO055_QUATERNION_DATA_Z_MSB_VALUEZ__REG   BNO055_QUATERNION_DATA_Z_MSB_ADDR
 
#define BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX__POS   0
 
#define BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX__MSK   0xFF
 
#define BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX__LEN   8
 
#define BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX__REG   BNO055_LINEAR_ACCEL_DATA_X_LSB_ADDR
 
#define BNO055_LINEAR_ACCEL_DATA_X_MSB_VALUEX__POS   0
 
#define BNO055_LINEAR_ACCEL_DATA_X_MSB_VALUEX__MSK   0xFF
 
#define BNO055_LINEAR_ACCEL_DATA_X_MSB_VALUEX__LEN   8
 
#define BNO055_LINEAR_ACCEL_DATA_X_MSB_VALUEX__REG   BNO055_LINEAR_ACCEL_DATA_X_MSB_ADDR
 
#define BNO055_LINEAR_ACCEL_DATA_Y_LSB_VALUEY__POS   0
 
#define BNO055_LINEAR_ACCEL_DATA_Y_LSB_VALUEY__MSK   0xFF
 
#define BNO055_LINEAR_ACCEL_DATA_Y_LSB_VALUEY__LEN   8
 
#define BNO055_LINEAR_ACCEL_DATA_Y_LSB_VALUEY__REG   BNO055_LINEAR_ACCEL_DATA_Y_LSB_ADDR
 
#define BNO055_LINEAR_ACCEL_DATA_Y_MSB_VALUEY__POS   0
 
#define BNO055_LINEAR_ACCEL_DATA_Y_MSB_VALUEY__MSK   0xFF
 
#define BNO055_LINEAR_ACCEL_DATA_Y_MSB_VALUEY__LEN   8
 
#define BNO055_LINEAR_ACCEL_DATA_Y_MSB_VALUEY__REG   BNO055_LINEAR_ACCEL_DATA_Y_MSB_ADDR
 
#define BNO055_LINEAR_ACCEL_DATA_Z_LSB_VALUEZ__POS   0
 
#define BNO055_LINEAR_ACCEL_DATA_Z_LSB_VALUEZ__MSK   0xFF
 
#define BNO055_LINEAR_ACCEL_DATA_Z_LSB_VALUEZ__LEN   8
 
#define BNO055_LINEAR_ACCEL_DATA_Z_LSB_VALUEZ__REG   BNO055_LINEAR_ACCEL_DATA_Z_LSB_ADDR
 
#define BNO055_LINEAR_ACCEL_DATA_Z_MSB_VALUEZ__POS   0
 
#define BNO055_LINEAR_ACCEL_DATA_Z_MSB_VALUEZ__MSK   0xFF
 
#define BNO055_LINEAR_ACCEL_DATA_Z_MSB_VALUEZ__LEN   8
 
#define BNO055_LINEAR_ACCEL_DATA_Z_MSB_VALUEZ__REG   BNO055_LINEAR_ACCEL_DATA_Z_MSB_ADDR
 
#define BNO055_GRAVITY_DATA_X_LSB_VALUEX__POS   0
 
#define BNO055_GRAVITY_DATA_X_LSB_VALUEX__MSK   0xFF
 
#define BNO055_GRAVITY_DATA_X_LSB_VALUEX__LEN   8
 
#define BNO055_GRAVITY_DATA_X_LSB_VALUEX__REG   BNO055_GRAVITY_DATA_X_LSB_ADDR
 
#define BNO055_GRAVITY_DATA_X_MSB_VALUEX__POS   0
 
#define BNO055_GRAVITY_DATA_X_MSB_VALUEX__MSK   0xFF
 
#define BNO055_GRAVITY_DATA_X_MSB_VALUEX__LEN   8
 
#define BNO055_GRAVITY_DATA_X_MSB_VALUEX__REG   BNO055_GRAVITY_DATA_X_MSB_ADDR
 
#define BNO055_GRAVITY_DATA_Y_LSB_VALUEY__POS   0
 
#define BNO055_GRAVITY_DATA_Y_LSB_VALUEY__MSK   0xFF
 
#define BNO055_GRAVITY_DATA_Y_LSB_VALUEY__LEN   8
 
#define BNO055_GRAVITY_DATA_Y_LSB_VALUEY__REG   BNO055_GRAVITY_DATA_Y_LSB_ADDR
 
#define BNO055_GRAVITY_DATA_Y_MSB_VALUEY__POS   0
 
#define BNO055_GRAVITY_DATA_Y_MSB_VALUEY__MSK   0xFF
 
#define BNO055_GRAVITY_DATA_Y_MSB_VALUEY__LEN   8
 
#define BNO055_GRAVITY_DATA_Y_MSB_VALUEY__REG   BNO055_GRAVITY_DATA_Y_MSB_ADDR
 
#define BNO055_GRAVITY_DATA_Z_LSB_VALUEZ__POS   0
 
#define BNO055_GRAVITY_DATA_Z_LSB_VALUEZ__MSK   0xFF
 
#define BNO055_GRAVITY_DATA_Z_LSB_VALUEZ__LEN   8
 
#define BNO055_GRAVITY_DATA_Z_LSB_VALUEZ__REG   BNO055_GRAVITY_DATA_Z_LSB_ADDR
 
#define BNO055_GRAVITY_DATA_Z_MSB_VALUEZ__POS   0
 
#define BNO055_GRAVITY_DATA_Z_MSB_VALUEZ__MSK   0xFF
 
#define BNO055_GRAVITY_DATA_Z_MSB_VALUEZ__LEN   8
 
#define BNO055_GRAVITY_DATA_Z_MSB_VALUEZ__REG   BNO055_GRAVITY_DATA_Z_MSB_ADDR
 
#define BNO055_TEMP__POS   0
 
#define BNO055_TEMP__MSK   0xFF
 
#define BNO055_TEMP__LEN   8
 
#define BNO055_TEMP__REG   BNO055_TEMP_ADDR
 
#define BNO055_MAG_CALIB_STAT__POS   0
 
#define BNO055_MAG_CALIB_STAT__MSK   0X03
 
#define BNO055_MAG_CALIB_STAT__LEN   2
 
#define BNO055_MAG_CALIB_STAT__REG   BNO055_CALIB_STAT_ADDR
 
#define BNO055_ACCEL_CALIB_STAT__POS   2
 
#define BNO055_ACCEL_CALIB_STAT__MSK   0X0C
 
#define BNO055_ACCEL_CALIB_STAT__LEN   2
 
#define BNO055_ACCEL_CALIB_STAT__REG   BNO055_CALIB_STAT_ADDR
 
#define BNO055_GYRO_CALIB_STAT__POS   4
 
#define BNO055_GYRO_CALIB_STAT__MSK   0X30
 
#define BNO055_GYRO_CALIB_STAT__LEN   2
 
#define BNO055_GYRO_CALIB_STAT__REG   BNO055_CALIB_STAT_ADDR
 
#define BNO055_SYS_CALIB_STAT__POS   6
 
#define BNO055_SYS_CALIB_STAT__MSK   0XC0
 
#define BNO055_SYS_CALIB_STAT__LEN   2
 
#define BNO055_SYS_CALIB_STAT__REG   BNO055_CALIB_STAT_ADDR
 
#define BNO055_SELFTEST_ACCEL__POS   0
 
#define BNO055_SELFTEST_ACCEL__MSK   0X01
 
#define BNO055_SELFTEST_ACCEL__LEN   1
 
#define BNO055_SELFTEST_ACCEL__REG   BNO055_SELFTEST_RESULT_ADDR
 
#define BNO055_SELFTEST_MAG__POS   1
 
#define BNO055_SELFTEST_MAG__MSK   0X02
 
#define BNO055_SELFTEST_MAG__LEN   1
 
#define BNO055_SELFTEST_MAG__REG   BNO055_SELFTEST_RESULT_ADDR
 
#define BNO055_SELFTEST_GYRO__POS   2
 
#define BNO055_SELFTEST_GYRO__MSK   0X04
 
#define BNO055_SELFTEST_GYRO__LEN   1
 
#define BNO055_SELFTEST_GYRO__REG   BNO055_SELFTEST_RESULT_ADDR
 
#define BNO055_SELFTEST_MCU__POS   3
 
#define BNO055_SELFTEST_MCU__MSK   0X08
 
#define BNO055_SELFTEST_MCU__LEN   1
 
#define BNO055_SELFTEST_MCU__REG   BNO055_SELFTEST_RESULT_ADDR
 
#define BNO055_INTR_STAT_GYRO_ANY_MOTION__POS   2
 
#define BNO055_INTR_STAT_GYRO_ANY_MOTION__MSK   0X04
 
#define BNO055_INTR_STAT_GYRO_ANY_MOTION__LEN   1
 
#define BNO055_INTR_STAT_GYRO_ANY_MOTION__REG   BNO055_INTR_STAT_ADDR
 
#define BNO055_INTR_STAT_GYRO_HIGHRATE__POS   3
 
#define BNO055_INTR_STAT_GYRO_HIGHRATE__MSK   0X08
 
#define BNO055_INTR_STAT_GYRO_HIGHRATE__LEN   1
 
#define BNO055_INTR_STAT_GYRO_HIGHRATE__REG   BNO055_INTR_STAT_ADDR
 
#define BNO055_INTR_STAT_ACCEL_HIGH_G__POS   5
 
#define BNO055_INTR_STAT_ACCEL_HIGH_G__MSK   0X20
 
#define BNO055_INTR_STAT_ACCEL_HIGH_G__LEN   1
 
#define BNO055_INTR_STAT_ACCEL_HIGH_G__REG   BNO055_INTR_STAT_ADDR
 
#define BNO055_INTR_STAT_ACCEL_ANY_MOTION__POS   6
 
#define BNO055_INTR_STAT_ACCEL_ANY_MOTION__MSK   0X40
 
#define BNO055_INTR_STAT_ACCEL_ANY_MOTION__LEN   1
 
#define BNO055_INTR_STAT_ACCEL_ANY_MOTION__REG   BNO055_INTR_STAT_ADDR
 
#define BNO055_INTR_STAT_ACCEL_NO_MOTION__POS   7
 
#define BNO055_INTR_STAT_ACCEL_NO_MOTION__MSK   0X80
 
#define BNO055_INTR_STAT_ACCEL_NO_MOTION__LEN   1
 
#define BNO055_INTR_STAT_ACCEL_NO_MOTION__REG   BNO055_INTR_STAT_ADDR
 
#define BNO055_SYS_MAIN_CLK__POS   0
 
#define BNO055_SYS_MAIN_CLK__MSK   0X10
 
#define BNO055_SYS_MAIN_CLK__LEN   1
 
#define BNO055_SYS_MAIN_CLK__REG   BNO055_SYS_CLK_STAT_ADDR
 
#define BNO055_SYS_STAT_CODE__POS   0
 
#define BNO055_SYS_STAT_CODE__MSK   0XFF
 
#define BNO055_SYS_STAT_CODE__LEN   8
 
#define BNO055_SYS_STAT_CODE__REG   BNO055_SYS_STAT_ADDR
 
#define BNO055_SYS_ERROR_CODE__POS   0
 
#define BNO055_SYS_ERROR_CODE__MSK   0XFF
 
#define BNO055_SYS_ERROR_CODE__LEN   8
 
#define BNO055_SYS_ERROR_CODE__REG   BNO055_SYS_ERR_ADDR
 
#define BNO055_ACCEL_UNIT__POS   0
 
#define BNO055_ACCEL_UNIT__MSK   0X01
 
#define BNO055_ACCEL_UNIT__LEN   1
 
#define BNO055_ACCEL_UNIT__REG   BNO055_UNIT_SEL_ADDR
 
#define BNO055_GYRO_UNIT__POS   1
 
#define BNO055_GYRO_UNIT__MSK   0X02
 
#define BNO055_GYRO_UNIT__LEN   1
 
#define BNO055_GYRO_UNIT__REG   BNO055_UNIT_SEL_ADDR
 
#define BNO055_EULER_UNIT__POS   2
 
#define BNO055_EULER_UNIT__MSK   0X04
 
#define BNO055_EULER_UNIT__LEN   1
 
#define BNO055_EULER_UNIT__REG   BNO055_UNIT_SEL_ADDR
 
#define BNO055_TILT_UNIT__POS   3
 
#define BNO055_TILT_UNIT__MSK   0X08
 
#define BNO055_TILT_UNIT__LEN   1
 
#define BNO055_TILT_UNIT__REG   BNO055_UNIT_SEL_ADDR
 
#define BNO055_TEMP_UNIT__POS   4
 
#define BNO055_TEMP_UNIT__MSK   0X10
 
#define BNO055_TEMP_UNIT__LEN   1
 
#define BNO055_TEMP_UNIT__REG   BNO055_UNIT_SEL_ADDR
 
#define BNO055_DATA_OUTPUT_FORMAT__POS   7
 
#define BNO055_DATA_OUTPUT_FORMAT__MSK   0X80
 
#define BNO055_DATA_OUTPUT_FORMAT__LEN   1
 
#define BNO055_DATA_OUTPUT_FORMAT__REG   BNO055_UNIT_SEL_ADDR
 
#define BNO055_OPERATION_MODE__POS   0
 
#define BNO055_OPERATION_MODE__MSK   0X0F
 
#define BNO055_OPERATION_MODE__LEN   4
 
#define BNO055_OPERATION_MODE__REG   BNO055_OPR_MODE_ADDR
 
#define BNO055_POWER_MODE__POS   0
 
#define BNO055_POWER_MODE__MSK   0X03
 
#define BNO055_POWER_MODE__LEN   2
 
#define BNO055_POWER_MODE__REG   BNO055_PWR_MODE_ADDR
 
#define BNO055_SELFTEST__POS   0
 
#define BNO055_SELFTEST__MSK   0X01
 
#define BNO055_SELFTEST__LEN   1
 
#define BNO055_SELFTEST__REG   BNO055_SYS_TRIGGER_ADDR
 
#define BNO055_SYS_RST__POS   5
 
#define BNO055_SYS_RST__MSK   0X20
 
#define BNO055_SYS_RST__LEN   1
 
#define BNO055_SYS_RST__REG   BNO055_SYS_TRIGGER_ADDR
 
#define BNO055_INTR_RST__POS   6
 
#define BNO055_INTR_RST__MSK   0X40
 
#define BNO055_INTR_RST__LEN   1
 
#define BNO055_INTR_RST__REG   BNO055_SYS_TRIGGER_ADDR
 
#define BNO055_CLK_SRC__POS   7
 
#define BNO055_CLK_SRC__MSK   0X80
 
#define BNO055_CLK_SRC__LEN   1
 
#define BNO055_CLK_SRC__REG   BNO055_SYS_TRIGGER_ADDR
 
#define BNO055_TEMP_SOURCE__POS   0
 
#define BNO055_TEMP_SOURCE__MSK   0X03
 
#define BNO055_TEMP_SOURCE__LEN   2
 
#define BNO055_TEMP_SOURCE__REG   BNO055_TEMP_SOURCE_ADDR
 
#define BNO055_REMAP_AXIS_VALUE__POS   0
 
#define BNO055_REMAP_AXIS_VALUE__MSK   0X3F
 
#define BNO055_REMAP_AXIS_VALUE__LEN   6
 
#define BNO055_REMAP_AXIS_VALUE__REG   BNO055_AXIS_MAP_CONFIG_ADDR
 
#define BNO055_REMAP_Z_SIGN__POS   0
 
#define BNO055_REMAP_Z_SIGN__MSK   0X01
 
#define BNO055_REMAP_Z_SIGN__LEN   1
 
#define BNO055_REMAP_Z_SIGN__REG   BNO055_AXIS_MAP_SIGN_ADDR
 
#define BNO055_REMAP_Y_SIGN__POS   1
 
#define BNO055_REMAP_Y_SIGN__MSK   0X02
 
#define BNO055_REMAP_Y_SIGN__LEN   1
 
#define BNO055_REMAP_Y_SIGN__REG   BNO055_AXIS_MAP_SIGN_ADDR
 
#define BNO055_REMAP_X_SIGN__POS   2
 
#define BNO055_REMAP_X_SIGN__MSK   0X04
 
#define BNO055_REMAP_X_SIGN__LEN   1
 
#define BNO055_REMAP_X_SIGN__REG   BNO055_AXIS_MAP_SIGN_ADDR
 
#define BNO055_SIC_MATRIX_0_LSB__POS   0
 
#define BNO055_SIC_MATRIX_0_LSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_0_LSB__LEN   8
 
#define BNO055_SIC_MATRIX_0_LSB__REG   BNO055_SIC_MATRIX_0_LSB_ADDR
 
#define BNO055_SIC_MATRIX_0_MSB__POS   0
 
#define BNO055_SIC_MATRIX_0_MSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_0_MSB__LEN   8
 
#define BNO055_SIC_MATRIX_0_MSB__REG   BNO055_SIC_MATRIX_0_MSB_ADDR
 
#define BNO055_SIC_MATRIX_1_LSB__POS   0
 
#define BNO055_SIC_MATRIX_1_LSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_1_LSB__LEN   8
 
#define BNO055_SIC_MATRIX_1_LSB__REG   BNO055_SIC_MATRIX_1_LSB_ADDR
 
#define BNO055_SIC_MATRIX_1_MSB__POS   0
 
#define BNO055_SIC_MATRIX_1_MSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_1_MSB__LEN   8
 
#define BNO055_SIC_MATRIX_1_MSB__REG   BNO055_SIC_MATRIX_1_MSB_ADDR
 
#define BNO055_SIC_MATRIX_2_LSB__POS   0
 
#define BNO055_SIC_MATRIX_2_LSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_2_LSB__LEN   8
 
#define BNO055_SIC_MATRIX_2_LSB__REG   BNO055_SIC_MATRIX_2_LSB_ADDR
 
#define BNO055_SIC_MATRIX_2_MSB__POS   0
 
#define BNO055_SIC_MATRIX_2_MSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_2_MSB__LEN   8
 
#define BNO055_SIC_MATRIX_2_MSB__REG   BNO055_SIC_MATRIX_2_MSB_ADDR
 
#define BNO055_SIC_MATRIX_3_LSB__POS   0
 
#define BNO055_SIC_MATRIX_3_LSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_3_LSB__LEN   8
 
#define BNO055_SIC_MATRIX_3_LSB__REG   BNO055_SIC_MATRIX_3_LSB_ADDR
 
#define BNO055_SIC_MATRIX_3_MSB__POS   0
 
#define BNO055_SIC_MATRIX_3_MSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_3_MSB__LEN   8
 
#define BNO055_SIC_MATRIX_3_MSB__REG   BNO055_SIC_MATRIX_3_MSB_ADDR
 
#define BNO055_SIC_MATRIX_4_LSB__POS   0
 
#define BNO055_SIC_MATRIX_4_LSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_4_LSB__LEN   8
 
#define BNO055_SIC_MATRIX_4_LSB__REG   BNO055_SIC_MATRIX_4_LSB_ADDR
 
#define BNO055_SIC_MATRIX_4_MSB__POS   0
 
#define BNO055_SIC_MATRIX_4_MSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_4_MSB__LEN   8
 
#define BNO055_SIC_MATRIX_4_MSB__REG   BNO055_SIC_MATRIX_4_MSB_ADDR
 
#define BNO055_SIC_MATRIX_5_LSB__POS   0
 
#define BNO055_SIC_MATRIX_5_LSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_5_LSB__LEN   8
 
#define BNO055_SIC_MATRIX_5_LSB__REG   BNO055_SIC_MATRIX_5_LSB_ADDR
 
#define BNO055_SIC_MATRIX_5_MSB__POS   0
 
#define BNO055_SIC_MATRIX_5_MSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_5_MSB__LEN   8
 
#define BNO055_SIC_MATRIX_5_MSB__REG   BNO055_SIC_MATRIX_5_MSB_ADDR
 
#define BNO055_SIC_MATRIX_6_LSB__POS   0
 
#define BNO055_SIC_MATRIX_6_LSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_6_LSB__LEN   8
 
#define BNO055_SIC_MATRIX_6_LSB__REG   BNO055_SIC_MATRIX_6_LSB_ADDR
 
#define BNO055_SIC_MATRIX_6_MSB__POS   0
 
#define BNO055_SIC_MATRIX_6_MSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_6_MSB__LEN   8
 
#define BNO055_SIC_MATRIX_6_MSB__REG   BNO055_SIC_MATRIX_6_MSB_ADDR
 
#define BNO055_SIC_MATRIX_7_LSB__POS   0
 
#define BNO055_SIC_MATRIX_7_LSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_7_LSB__LEN   8
 
#define BNO055_SIC_MATRIX_7_LSB__REG   BNO055_SIC_MATRIX_7_LSB_ADDR
 
#define BNO055_SIC_MATRIX_7_MSB__POS   0
 
#define BNO055_SIC_MATRIX_7_MSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_7_MSB__LEN   8
 
#define BNO055_SIC_MATRIX_7_MSB__REG   BNO055_SIC_MATRIX_7_MSB_ADDR
 
#define BNO055_SIC_MATRIX_8_LSB__POS   0
 
#define BNO055_SIC_MATRIX_8_LSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_8_LSB__LEN   8
 
#define BNO055_SIC_MATRIX_8_LSB__REG   BNO055_SIC_MATRIX_8_LSB_ADDR
 
#define BNO055_SIC_MATRIX_8_MSB__POS   0
 
#define BNO055_SIC_MATRIX_8_MSB__MSK   0XFF
 
#define BNO055_SIC_MATRIX_8_MSB__LEN   8
 
#define BNO055_SIC_MATRIX_8_MSB__REG   BNO055_SIC_MATRIX_8_MSB_ADDR
 
#define BNO055_ACCEL_OFFSET_X_LSB__POS   0
 
#define BNO055_ACCEL_OFFSET_X_LSB__MSK   0XFF
 
#define BNO055_ACCEL_OFFSET_X_LSB__LEN   8
 
#define BNO055_ACCEL_OFFSET_X_LSB__REG   ACCEL_OFFSET_X_LSB_ADDR
 
#define BNO055_ACCEL_OFFSET_X_MSB__POS   0
 
#define BNO055_ACCEL_OFFSET_X_MSB__MSK   0XFF
 
#define BNO055_ACCEL_OFFSET_X_MSB__LEN   8
 
#define BNO055_ACCEL_OFFSET_X_MSB__REG   ACCEL_OFFSET_X_MSB_ADDR
 
#define BNO055_ACCEL_OFFSET_Y_LSB__POS   0
 
#define BNO055_ACCEL_OFFSET_Y_LSB__MSK   0XFF
 
#define BNO055_ACCEL_OFFSET_Y_LSB__LEN   8
 
#define BNO055_ACCEL_OFFSET_Y_LSB__REG   ACCEL_OFFSET_Y_LSB_ADDR
 
#define BNO055_ACCEL_OFFSET_Y_MSB__POS   0
 
#define BNO055_ACCEL_OFFSET_Y_MSB__MSK   0XFF
 
#define BNO055_ACCEL_OFFSET_Y_MSB__LEN   8
 
#define BNO055_ACCEL_OFFSET_Y_MSB__REG   ACCEL_OFFSET_Y_MSB_ADDR
 
#define BNO055_ACCEL_OFFSET_Z_LSB__POS   0
 
#define BNO055_ACCEL_OFFSET_Z_LSB__MSK   0XFF
 
#define BNO055_ACCEL_OFFSET_Z_LSB__LEN   8
 
#define BNO055_ACCEL_OFFSET_Z_LSB__REG   ACCEL_OFFSET_Z_LSB_ADDR
 
#define BNO055_ACCEL_OFFSET_Z_MSB__POS   0
 
#define BNO055_ACCEL_OFFSET_Z_MSB__MSK   0XFF
 
#define BNO055_ACCEL_OFFSET_Z_MSB__LEN   8
 
#define BNO055_ACCEL_OFFSET_Z_MSB__REG   ACCEL_OFFSET_Z_MSB_ADDR
 
#define BNO055_MAG_OFFSET_X_LSB__POS   0
 
#define BNO055_MAG_OFFSET_X_LSB__MSK   0XFF
 
#define BNO055_MAG_OFFSET_X_LSB__LEN   8
 
#define BNO055_MAG_OFFSET_X_LSB__REG   MAG_OFFSET_X_LSB_ADDR
 
#define BNO055_MAG_OFFSET_X_MSB__POS   0
 
#define BNO055_MAG_OFFSET_X_MSB__MSK   0XFF
 
#define BNO055_MAG_OFFSET_X_MSB__LEN   8
 
#define BNO055_MAG_OFFSET_X_MSB__REG   MAG_OFFSET_X_MSB_ADDR
 
#define BNO055_MAG_OFFSET_Y_LSB__POS   0
 
#define BNO055_MAG_OFFSET_Y_LSB__MSK   0XFF
 
#define BNO055_MAG_OFFSET_Y_LSB__LEN   8
 
#define BNO055_MAG_OFFSET_Y_LSB__REG   MAG_OFFSET_Y_LSB_ADDR
 
#define BNO055_MAG_OFFSET_Y_MSB__POS   0
 
#define BNO055_MAG_OFFSET_Y_MSB__MSK   0XFF
 
#define BNO055_MAG_OFFSET_Y_MSB__LEN   8
 
#define BNO055_MAG_OFFSET_Y_MSB__REG   MAG_OFFSET_Y_MSB_ADDR
 
#define BNO055_MAG_OFFSET_Z_LSB__POS   0
 
#define BNO055_MAG_OFFSET_Z_LSB__MSK   0XFF
 
#define BNO055_MAG_OFFSET_Z_LSB__LEN   8
 
#define BNO055_MAG_OFFSET_Z_LSB__REG   MAG_OFFSET_Z_LSB_ADDR
 
#define BNO055_MAG_OFFSET_Z_MSB__POS   0
 
#define BNO055_MAG_OFFSET_Z_MSB__MSK   0XFF
 
#define BNO055_MAG_OFFSET_Z_MSB__LEN   8
 
#define BNO055_MAG_OFFSET_Z_MSB__REG   MAG_OFFSET_Z_MSB_ADDR
 
#define BNO055_GYRO_OFFSET_X_LSB__POS   0
 
#define BNO055_GYRO_OFFSET_X_LSB__MSK   0XFF
 
#define BNO055_GYRO_OFFSET_X_LSB__LEN   8
 
#define BNO055_GYRO_OFFSET_X_LSB__REG   GYRO_OFFSET_X_LSB_ADDR
 
#define BNO055_GYRO_OFFSET_X_MSB__POS   0
 
#define BNO055_GYRO_OFFSET_X_MSB__MSK   0XFF
 
#define BNO055_GYRO_OFFSET_X_MSB__LEN   8
 
#define BNO055_GYRO_OFFSET_X_MSB__REG   GYRO_OFFSET_X_MSB_ADDR
 
#define BNO055_GYRO_OFFSET_Y_LSB__POS   0
 
#define BNO055_GYRO_OFFSET_Y_LSB__MSK   0XFF
 
#define BNO055_GYRO_OFFSET_Y_LSB__LEN   8
 
#define BNO055_GYRO_OFFSET_Y_LSB__REG   GYRO_OFFSET_Y_LSB_ADDR
 
#define BNO055_GYRO_OFFSET_Y_MSB__POS   0
 
#define BNO055_GYRO_OFFSET_Y_MSB__MSK   0XFF
 
#define BNO055_GYRO_OFFSET_Y_MSB__LEN   8
 
#define BNO055_GYRO_OFFSET_Y_MSB__REG   GYRO_OFFSET_Y_MSB_ADDR
 
#define BNO055_GYRO_OFFSET_Z_LSB__POS   0
 
#define BNO055_GYRO_OFFSET_Z_LSB__MSK   0XFF
 
#define BNO055_GYRO_OFFSET_Z_LSB__LEN   8
 
#define BNO055_GYRO_OFFSET_Z_LSB__REG   GYRO_OFFSET_Z_LSB_ADDR
 
#define BNO055_GYRO_OFFSET_Z_MSB__POS   0
 
#define BNO055_GYRO_OFFSET_Z_MSB__MSK   0XFF
 
#define BNO055_GYRO_OFFSET_Z_MSB__LEN   8
 
#define BNO055_GYRO_OFFSET_Z_MSB__REG   GYRO_OFFSET_Z_MSB_ADDR
 
#define BNO055_ACCEL_RADIUS_LSB__POS   0
 
#define BNO055_ACCEL_RADIUS_LSB__MSK   0XFF
 
#define BNO055_ACCEL_RADIUS_LSB__LEN   8
 
#define BNO055_ACCEL_RADIUS_LSB__REG   ACCEL_RADIUS_LSB_ADDR
 
#define BNO055_ACCEL_RADIUS_MSB__POS   0
 
#define BNO055_ACCEL_RADIUS_MSB__MSK   0XFF
 
#define BNO055_ACCEL_RADIUS_MSB__LEN   8
 
#define BNO055_ACCEL_RADIUS_MSB__REG   ACCEL_RADIUS_MSB_ADDR
 
#define BNO055_MAG_RADIUS_LSB__POS   0
 
#define BNO055_MAG_RADIUS_LSB__MSK   0XFF
 
#define BNO055_MAG_RADIUS_LSB__LEN   8
 
#define BNO055_MAG_RADIUS_LSB__REG   MAG_RADIUS_LSB_ADDR
 
#define BNO055_MAG_RADIUS_MSB__POS   0
 
#define BNO055_MAG_RADIUS_MSB__MSK   0XFF
 
#define BNO055_MAG_RADIUS_MSB__LEN   8
 
#define BNO055_MAG_RADIUS_MSB__REG   MAG_RADIUS_MSB_ADDR
 
PAGE1 DATA REGISTERS DEFINITION
#define BNO055_ACCEL_RANGE__POS   0
 
#define BNO055_ACCEL_RANGE__MSK   0X03
 
#define BNO055_ACCEL_RANGE__LEN   2
 
#define BNO055_ACCEL_RANGE__REG   ACCEL_CONFIG_ADDR
 
#define BNO055_ACCEL_BW__POS   2
 
#define BNO055_ACCEL_BW__MSK   0X1C
 
#define BNO055_ACCEL_BW__LEN   3
 
#define BNO055_ACCEL_BW__REG   ACCEL_CONFIG_ADDR
 
#define BNO055_ACCEL_POWER_MODE__POS   5
 
#define BNO055_ACCEL_POWER_MODE__MSK   0XE0
 
#define BNO055_ACCEL_POWER_MODE__LEN   3
 
#define BNO055_ACCEL_POWER_MODE__REG   ACCEL_CONFIG_ADDR
 
#define BNO055_MAG_DATA_OUTPUT_RATE__POS   0
 
#define BNO055_MAG_DATA_OUTPUT_RATE__MSK   0X07
 
#define BNO055_MAG_DATA_OUTPUT_RATE__LEN   3
 
#define BNO055_MAG_DATA_OUTPUT_RATE__REG   MAG_CONFIG_ADDR
 
#define BNO055_MAG_OPERATION_MODE__POS   3
 
#define BNO055_MAG_OPERATION_MODE__MSK   0X18
 
#define BNO055_MAG_OPERATION_MODE__LEN   2
 
#define BNO055_MAG_OPERATION_MODE__REG   MAG_CONFIG_ADDR
 
#define BNO055_MAG_POWER_MODE__POS   5
 
#define BNO055_MAG_POWER_MODE__MSK   0X60
 
#define BNO055_MAG_POWER_MODE__LEN   2
 
#define BNO055_MAG_POWER_MODE__REG   MAG_CONFIG_ADDR
 
#define BNO055_GYRO_RANGE__POS   0
 
#define BNO055_GYRO_RANGE__MSK   0X07
 
#define BNO055_GYRO_RANGE__LEN   3
 
#define BNO055_GYRO_RANGE__REG   GYRO_CONFIG_ADDR
 
#define BNO055_GYRO_BW__POS   3
 
#define BNO055_GYRO_BW__MSK   0X38
 
#define BNO055_GYRO_BW__LEN   3
 
#define BNO055_GYRO_BW__REG   GYRO_CONFIG_ADDR
 
#define BNO055_GYRO_POWER_MODE__POS   0
 
#define BNO055_GYRO_POWER_MODE__MSK   0X07
 
#define BNO055_GYRO_POWER_MODE__LEN   3
 
#define BNO055_GYRO_POWER_MODE__REG   GYRO_MODE_CONFIG_ADDR
 
#define BNO055_ACCEL_SLEEP_MODE__POS   0
 
#define BNO055_ACCEL_SLEEP_MODE__MSK   0X01
 
#define BNO055_ACCEL_SLEEP_MODE__LEN   1
 
#define BNO055_ACCEL_SLEEP_MODE__REG   ACCEL_SLEEP_CONFIG_ADDR
 
#define BNO055_ACCEL_SLEEP_DURN__POS   1
 
#define BNO055_ACCEL_SLEEP_DURN__MSK   0X1E
 
#define BNO055_ACCEL_SLEEP_DURN__LEN   4
 
#define BNO055_ACCEL_SLEEP_DURN__REG   ACCEL_SLEEP_CONFIG_ADDR
 
#define BNO055_GYRO_SLEEP_DURN__POS   0
 
#define BNO055_GYRO_SLEEP_DURN__MSK   0X07
 
#define BNO055_GYRO_SLEEP_DURN__LEN   3
 
#define BNO055_GYRO_SLEEP_DURN__REG   GYRO_SLEEP_CONFIG_ADDR
 
#define BNO055_GYRO_AUTO_SLEEP_DURN__POS   3
 
#define BNO055_GYRO_AUTO_SLEEP_DURN__MSK   0X38
 
#define BNO055_GYRO_AUTO_SLEEP_DURN__LEN   3
 
#define BNO055_GYRO_AUTO_SLEEP_DURN__REG   GYRO_SLEEP_CONFIG_ADDR
 
#define BNO055_MAG_SLEEP_MODE__POS   0
 
#define BNO055_MAG_SLEEP_MODE__MSK   0X01
 
#define BNO055_MAG_SLEEP_MODE__LEN   1
 
#define BNO055_MAG_SLEEP_MODE__REG   MAG_SLEEP_CONFIG_ADDR
 
#define BNO055_MAG_SLEEP_DURN__POS   1
 
#define BNO055_MAG_SLEEP_DURN__MSK   0X1E
 
#define BNO055_MAG_SLEEP_DURN__LEN   4
 
#define BNO055_MAG_SLEEP_DURN__REG   MAG_SLEEP_CONFIG_ADDR
 
#define BNO055_GYRO_ANY_MOTION_INTR_MASK__POS   2
 
#define BNO055_GYRO_ANY_MOTION_INTR_MASK__MSK   0X04
 
#define BNO055_GYRO_ANY_MOTION_INTR_MASK__LEN   1
 
#define BNO055_GYRO_ANY_MOTION_INTR_MASK__REG   INT_MASK_ADDR
 
#define BNO055_GYRO_HIGHRATE_INTR_MASK__POS   3
 
#define BNO055_GYRO_HIGHRATE_INTR_MASK__MSK   0X08
 
#define BNO055_GYRO_HIGHRATE_INTR_MASK__LEN   1
 
#define BNO055_GYRO_HIGHRATE_INTR_MASK__REG   INT_MASK_ADDR
 
#define BNO055_ACCEL_HIGH_G_INTR_MASK__POS   5
 
#define BNO055_ACCEL_HIGH_G_INTR_MASK__MSK   0X20
 
#define BNO055_ACCEL_HIGH_G_INTR_MASK__LEN   1
 
#define BNO055_ACCEL_HIGH_G_INTR_MASK__REG   INT_MASK_ADDR
 
#define BNO055_ACCEL_ANY_MOTION_INTR_MASK__POS   6
 
#define BNO055_ACCEL_ANY_MOTION_INTR_MASK__MSK   0X40
 
#define BNO055_ACCEL_ANY_MOTION_INTR_MASK__LEN   1
 
#define BNO055_ACCEL_ANY_MOTION_INTR_MASK__REG   INT_MASK_ADDR
 
#define BNO055_ACCEL_NO_MOTION_INTR_MASK__POS   7
 
#define BNO055_ACCEL_NO_MOTION_INTR_MASK__MSK   0X80
 
#define BNO055_ACCEL_NO_MOTION_INTR_MASK__LEN   1
 
#define BNO055_ACCEL_NO_MOTION_INTR_MASK__REG   INT_MASK_ADDR
 
#define BNO055_GYRO_ANY_MOTION_INTR__POS   2
 
#define BNO055_GYRO_ANY_MOTION_INTR__MSK   0X04
 
#define BNO055_GYRO_ANY_MOTION_INTR__LEN   1
 
#define BNO055_GYRO_ANY_MOTION_INTR__REG   INT_ADDR
 
#define BNO055_GYRO_HIGHRATE_INTR__POS   3
 
#define BNO055_GYRO_HIGHRATE_INTR__MSK   0X08
 
#define BNO055_GYRO_HIGHRATE_INTR__LEN   1
 
#define BNO055_GYRO_HIGHRATE_INTR__REG   INT_ADDR
 
#define BNO055_ACCEL_HIGH_G_INTR__POS   5
 
#define BNO055_ACCEL_HIGH_G_INTR__MSK   0X20
 
#define BNO055_ACCEL_HIGH_G_INTR__LEN   1
 
#define BNO055_ACCEL_HIGH_G_INTR__REG   INT_ADDR
 
#define BNO055_ACCEL_ANY_MOTION_INTR__POS   6
 
#define BNO055_ACCEL_ANY_MOTION_INTR__MSK   0X40
 
#define BNO055_ACCEL_ANY_MOTION_INTR__LEN   1
 
#define BNO055_ACCEL_ANY_MOTION_INTR__REG   INT_ADDR
 
#define BNO055_ACCEL_NO_MOTION_INTR__POS   7
 
#define BNO055_ACCEL_NO_MOTION_INTR__MSK   0X80
 
#define BNO055_ACCEL_NO_MOTION_INTR__LEN   1
 
#define BNO055_ACCEL_NO_MOTION_INTR__REG   INT_ADDR
 
#define BNO055_ACCEL_ANY_MOTION_THRES__POS   0
 
#define BNO055_ACCEL_ANY_MOTION_THRES__MSK   0XFF
 
#define BNO055_ACCEL_ANY_MOTION_THRES__LEN   8
 
#define BNO055_ACCEL_ANY_MOTION_THRES__REG   ACCEL_ANY_MOTION_THRES_ADDR
 
#define BNO055_ACCEL_ANY_MOTION_DURN_SET__POS   0
 
#define BNO055_ACCEL_ANY_MOTION_DURN_SET__MSK   0X03
 
#define BNO055_ACCEL_ANY_MOTION_DURN_SET__LEN   2
 
#define BNO055_ACCEL_ANY_MOTION_DURN_SET__REG   ACCEL_INTR_SETTINGS_ADDR
 
#define BNO055_ACCEL_ANY_MOTION_X_AXIS__POS   2
 
#define BNO055_ACCEL_ANY_MOTION_X_AXIS__MSK   0X04
 
#define BNO055_ACCEL_ANY_MOTION_X_AXIS__LEN   1
 
#define BNO055_ACCEL_ANY_MOTION_X_AXIS__REG   ACCEL_INTR_SETTINGS_ADDR
 
#define BNO055_ACCEL_ANY_MOTION_Y_AXIS__POS   3
 
#define BNO055_ACCEL_ANY_MOTION_Y_AXIS__MSK   0X08
 
#define BNO055_ACCEL_ANY_MOTION_Y_AXIS__LEN   1
 
#define BNO055_ACCEL_ANY_MOTION_Y_AXIS__REG   ACCEL_INTR_SETTINGS_ADDR
 
#define BNO055_ACCEL_ANY_MOTION_Z_AXIS__POS   4
 
#define BNO055_ACCEL_ANY_MOTION_Z_AXIS__MSK   0X10
 
#define BNO055_ACCEL_ANY_MOTION_Z_AXIS__LEN   1
 
#define BNO055_ACCEL_ANY_MOTION_Z_AXIS__REG   ACCEL_INTR_SETTINGS_ADDR
 
#define BNO055_ACCEL_HIGH_G_X_AXIS__POS   5
 
#define BNO055_ACCEL_HIGH_G_X_AXIS__MSK   0X20
 
#define BNO055_ACCEL_HIGH_G_X_AXIS__LEN   1
 
#define BNO055_ACCEL_HIGH_G_X_AXIS__REG   ACCEL_INTR_SETTINGS_ADDR
 
#define BNO055_ACCEL_HIGH_G_Y_AXIS__POS   6
 
#define BNO055_ACCEL_HIGH_G_Y_AXIS__MSK   0X40
 
#define BNO055_ACCEL_HIGH_G_Y_AXIS__LEN   1
 
#define BNO055_ACCEL_HIGH_G_Y_AXIS__REG   ACCEL_INTR_SETTINGS_ADDR
 
#define BNO055_ACCEL_HIGH_G_Z_AXIS__POS   7
 
#define BNO055_ACCEL_HIGH_G_Z_AXIS__MSK   0X80
 
#define BNO055_ACCEL_HIGH_G_Z_AXIS__LEN   1
 
#define BNO055_ACCEL_HIGH_G_Z_AXIS__REG   ACCEL_INTR_SETTINGS_ADDR
 
#define BNO055_ACCEL_HIGH_G_DURN__POS   0
 
#define BNO055_ACCEL_HIGH_G_DURN__MSK   0XFF
 
#define BNO055_ACCEL_HIGH_G_DURN__LEN   8
 
#define BNO055_ACCEL_HIGH_G_DURN__REG   ACCEL_HIGH_G_DURN_ADDR
 
#define BNO055_ACCEL_HIGH_G_THRES__POS   0
 
#define BNO055_ACCEL_HIGH_G_THRES__MSK   0XFF
 
#define BNO055_ACCEL_HIGH_G_THRES__LEN   8
 
#define BNO055_ACCEL_HIGH_G_THRES__REG   ACCEL_HIGH_G_THRES_ADDR
 
#define BNO055_ACCEL_SLOW_NO_MOTION_THRES__POS   0
 
#define BNO055_ACCEL_SLOW_NO_MOTION_THRES__MSK   0XFF
 
#define BNO055_ACCEL_SLOW_NO_MOTION_THRES__LEN   8
 
#define BNO055_ACCEL_SLOW_NO_MOTION_THRES__REG   ACCEL_NO_MOTION_THRES_ADDR
 
#define BNO055_ACCEL_SLOW_NO_MOTION_ENABLE__POS   0
 
#define BNO055_ACCEL_SLOW_NO_MOTION_ENABLE__MSK   0X01
 
#define BNO055_ACCEL_SLOW_NO_MOTION_ENABLE__LEN   1
 
#define BNO055_ACCEL_SLOW_NO_MOTION_ENABLE__REG   ACCEL_NO_MOTION_SET_ADDR
 
#define BNO055_ACCEL_SLOW_NO_MOTION_DURN__POS   1
 
#define BNO055_ACCEL_SLOW_NO_MOTION_DURN__MSK   0X7E
 
#define BNO055_ACCEL_SLOW_NO_MOTION_DURN__LEN   6
 
#define BNO055_ACCEL_SLOW_NO_MOTION_DURN__REG   ACCEL_NO_MOTION_SET_ADDR
 
#define BNO055_GYRO_ANY_MOTION_X_AXIS__POS   0
 
#define BNO055_GYRO_ANY_MOTION_X_AXIS__MSK   0X01
 
#define BNO055_GYRO_ANY_MOTION_X_AXIS__LEN   1
 
#define BNO055_GYRO_ANY_MOTION_X_AXIS__REG   GYRO_INTR_SETING_ADDR
 
#define BNO055_GYRO_ANY_MOTION_Y_AXIS__POS   1
 
#define BNO055_GYRO_ANY_MOTION_Y_AXIS__MSK   0X02
 
#define BNO055_GYRO_ANY_MOTION_Y_AXIS__LEN   1
 
#define BNO055_GYRO_ANY_MOTION_Y_AXIS__REG   GYRO_INTR_SETING_ADDR
 
#define BNO055_GYRO_ANY_MOTION_Z_AXIS__POS   2
 
#define BNO055_GYRO_ANY_MOTION_Z_AXIS__MSK   0X04
 
#define BNO055_GYRO_ANY_MOTION_Z_AXIS__LEN   1
 
#define BNO055_GYRO_ANY_MOTION_Z_AXIS__REG   GYRO_INTR_SETING_ADDR
 
#define BNO055_GYRO_HIGHRATE_X_AXIS__POS   3
 
#define BNO055_GYRO_HIGHRATE_X_AXIS__MSK   0X08
 
#define BNO055_GYRO_HIGHRATE_X_AXIS__LEN   1
 
#define BNO055_GYRO_HIGHRATE_X_AXIS__REG   GYRO_INTR_SETING_ADDR
 
#define BNO055_GYRO_HIGHRATE_Y_AXIS__POS   4
 
#define BNO055_GYRO_HIGHRATE_Y_AXIS__MSK   0X10
 
#define BNO055_GYRO_HIGHRATE_Y_AXIS__LEN   1
 
#define BNO055_GYRO_HIGHRATE_Y_AXIS__REG   GYRO_INTR_SETING_ADDR
 
#define BNO055_GYRO_HIGHRATE_Z_AXIS__POS   5
 
#define BNO055_GYRO_HIGHRATE_Z_AXIS__MSK   0X20
 
#define BNO055_GYRO_HIGHRATE_Z_AXIS__LEN   1
 
#define BNO055_GYRO_HIGHRATE_Z_AXIS__REG   GYRO_INTR_SETING_ADDR
 
#define BNO055_GYRO_ANY_MOTION_FILTER__POS   6
 
#define BNO055_GYRO_ANY_MOTION_FILTER__MSK   0X40
 
#define BNO055_GYRO_ANY_MOTION_FILTER__LEN   1
 
#define BNO055_GYRO_ANY_MOTION_FILTER__REG   GYRO_INTR_SETING_ADDR
 
#define BNO055_GYRO_HIGHRATE_FILTER__POS   7
 
#define BNO055_GYRO_HIGHRATE_FILTER__MSK   0X80
 
#define BNO055_GYRO_HIGHRATE_FILTER__LEN   1
 
#define BNO055_GYRO_HIGHRATE_FILTER__REG   GYRO_INTR_SETING_ADDR
 
#define BNO055_GYRO_HIGHRATE_X_THRES__POS   0
 
#define BNO055_GYRO_HIGHRATE_X_THRES__MSK   0X1F
 
#define BNO055_GYRO_HIGHRATE_X_THRES__LEN   5
 
#define BNO055_GYRO_HIGHRATE_X_THRES__REG   GYRO_HIGHRATE_X_SET_ADDR
 
#define BNO055_GYRO_HIGHRATE_X_HYST__POS   5
 
#define BNO055_GYRO_HIGHRATE_X_HYST__MSK   0X60
 
#define BNO055_GYRO_HIGHRATE_X_HYST__LEN   2
 
#define BNO055_GYRO_HIGHRATE_X_HYST__REG   GYRO_HIGHRATE_X_SET_ADDR
 
#define BNO055_GYRO_HIGHRATE_X_DURN__POS   0
 
#define BNO055_GYRO_HIGHRATE_X_DURN__MSK   0XFF
 
#define BNO055_GYRO_HIGHRATE_X_DURN__LEN   8
 
#define BNO055_GYRO_HIGHRATE_X_DURN__REG   GYRO_DURN_X_ADDR
 
#define BNO055_GYRO_HIGHRATE_Y_THRES__POS   0
 
#define BNO055_GYRO_HIGHRATE_Y_THRES__MSK   0X1F
 
#define BNO055_GYRO_HIGHRATE_Y_THRES__LEN   5
 
#define BNO055_GYRO_HIGHRATE_Y_THRES__REG   GYRO_HIGHRATE_Y_SET_ADDR
 
#define BNO055_GYRO_HIGHRATE_Y_HYST__POS   5
 
#define BNO055_GYRO_HIGHRATE_Y_HYST__MSK   0X60
 
#define BNO055_GYRO_HIGHRATE_Y_HYST__LEN   2
 
#define BNO055_GYRO_HIGHRATE_Y_HYST__REG   GYRO_HIGHRATE_Y_SET_ADDR
 
#define BNO055_GYRO_HIGHRATE_Y_DURN__POS   0
 
#define BNO055_GYRO_HIGHRATE_Y_DURN__MSK   0XFF
 
#define BNO055_GYRO_HIGHRATE_Y_DURN__LEN   8
 
#define BNO055_GYRO_HIGHRATE_Y_DURN__REG   GYRO_DURN_Y_ADDR
 
#define BNO055_GYRO_HIGHRATE_Z_THRES__POS   0
 
#define BNO055_GYRO_HIGHRATE_Z_THRES__MSK   0X1F
 
#define BNO055_GYRO_HIGHRATE_Z_THRES__LEN   5
 
#define BNO055_GYRO_HIGHRATE_Z_THRES__REG   GYRO_HIGHRATE_Z_SET_ADDR
 
#define BNO055_GYRO_HIGHRATE_Z_HYST__POS   5
 
#define BNO055_GYRO_HIGHRATE_Z_HYST__MSK   0X60
 
#define BNO055_GYRO_HIGHRATE_Z_HYST__LEN   2
 
#define BNO055_GYRO_HIGHRATE_Z_HYST__REG   GYRO_HIGHRATE_Z_SET_ADDR
 
#define BNO055_GYRO_HIGHRATE_Z_DURN__POS   0
 
#define BNO055_GYRO_HIGHRATE_Z_DURN__MSK   0XFF
 
#define BNO055_GYRO_HIGHRATE_Z_DURN__LEN   8
 
#define BNO055_GYRO_HIGHRATE_Z_DURN__REG   GYRO_DURN_Z_ADDR
 
#define BNO055_GYRO_ANY_MOTION_THRES__POS   0
 
#define BNO055_GYRO_ANY_MOTION_THRES__MSK   0X7F
 
#define BNO055_GYRO_ANY_MOTION_THRES__LEN   7
 
#define BNO055_GYRO_ANY_MOTION_THRES__REG   GYRO_ANY_MOTION_THRES_ADDR
 
#define BNO055_GYRO_SLOPE_SAMPLES__POS   0
 
#define BNO055_GYRO_SLOPE_SAMPLES__MSK   0X03
 
#define BNO055_GYRO_SLOPE_SAMPLES__LEN   2
 
#define BNO055_GYRO_SLOPE_SAMPLES__REG   GYRO_ANY_MOTION_SET_ADDR
 
#define BNO055_GYRO_AWAKE_DURN__POS   2
 
#define BNO055_GYRO_AWAKE_DURN__MSK   0X0C
 
#define BNO055_GYRO_AWAKE_DURN__LEN   2
 
#define BNO055_GYRO_AWAKE_DURN__REG   GYRO_ANY_MOTION_SET_ADDR
 
GET AND SET BITSLICE FUNCTIONS
#define BNO055_GET_BITSLICE(regvar, bitname)   ((regvar & bitname##__MSK) >> bitname##__POS)
 
#define BNO055_SET_BITSLICE(regvar, bitname, val)   ((regvar & ~bitname##__MSK) | ((val<<bitname##__POS)&bitname##__MSK))
 

Functions

BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_x_mg (double *v_accel_x_d)
 This API is used to convert the accel x raw data to millig output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_x_msq (double *v_accel_x_d)
 This API is used to convert the accel x raw data to meterpersecseq output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_xyz_mg (struct bno055_accel_double_t *accel_xyz)
 This API is used to convert the accel xyz raw data to millig output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_xyz_msq (struct bno055_accel_double_t *accel_xyz)
 This API is used to convert the accel xyz raw data to meterpersecseq output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_y_mg (double *v_accel_y_d)
 This API is used to convert the accel y raw data to millig output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_y_msq (double *v_accel_y_d)
 This API is used to convert the accel y raw data to meterpersecseq output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_z_mg (double *v_accel_z_d)
 This API is used to convert the accel z raw data to millig output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_z_msq (double *v_accel_z_d)
 This API is used to convert the accel z raw data to meterpersecseq output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_h_deg (double *v_euler_h_d)
 This API is used to convert the Euler h raw data to degree output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_h_rad (double *v_euler_h_d)
 This API is used to convert the Euler h raw data to radians output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_hpr_deg (struct bno055_euler_double_t *euler_hpr)
 This API is used to convert the Euler hpr raw data to degree output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_hpr_rad (struct bno055_euler_double_t *euler_hpr)
 This API is used to convert the Euler hpr raw data to radians output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_p_deg (double *v_euler_p_d)
 This API is used to convert the Euler p raw data to degree output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_p_rad (double *v_euler_p_d)
 This API is used to convert the Euler p raw data to radians output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_r_deg (double *v_euler_r_d)
 This API is used to convert the Euler r raw data to degree output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_r_rad (double *v_euler_r_d)
 This API is used to convert the Euler r raw data to radians output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gravity_xyz_msq (struct bno055_gravity_double_t *gravity_xyz)
 This API is used to convert the gravity xyz raw data to meterpersecseq output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_x_dps (double *v_gyro_x_d)
 This API is used to convert the gyro x raw data to dps output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_x_rps (double *v_gyro_x_d)
 This API is used to convert the gyro x raw data to rps output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_xyz_dps (struct bno055_gyro_double_t *gyro_xyz)
 This API is used to convert the gyro xyz raw data to dps output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_xyz_rps (struct bno055_gyro_double_t *gyro_xyz)
 This API is used to convert the gyro xyz raw data to rps output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_y_dps (double *v_gyro_y_d)
 This API is used to convert the gyro y raw data to dps output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_y_rps (double *v_gyro_y_d)
 This API is used to convert the gyro y raw data to rps output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_z_dps (double *v_gyro_z_d)
 This API is used to convert the gyro z raw data to dps output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_z_rps (double *v_gyro_z_d)
 This API is used to convert the gyro z raw data to rps output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_linear_accel_x_msq (double *v_linear_accel_x_d)
 This API is used to convert the linear accel x raw data to meterpersecseq output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_linear_accel_xyz_msq (struct bno055_linear_accel_double_t *linear_accel_xyz)
 This API is used to convert the linear accel xyz raw data to meterpersecseq output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_linear_accel_y_msq (double *v_linear_accel_y_d)
 This API is used to convert the linear accel y raw data to meterpersecseq output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_linear_accel_z_msq (double *v_linear_accel_z_d)
 This API is used to convert the linear accel z raw data to meterpersecseq output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_mag_x_uT (double *v_mag_x_d)
 This API is used to convert the mag x raw data to microTesla output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_mag_xyz_uT (struct bno055_mag_double_t *mag_xyz)
 This API is used to convert the mag yz raw data to microTesla output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_mag_y_uT (double *v_mag_y_d)
 This API is used to convert the mag y raw data to microTesla output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_mag_z_uT (double *v_mag_z_d)
 This API is used to convert the mag z raw data to microTesla output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_temp_celsius (double *v_temp_d)
 This API is used to convert the temperature data to Celsius output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_temp_fahrenheit (double *v_temp_d)
 This API is used to convert the temperature data to Fahrenheit output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_x_mg (float *v_accel_x_f)
 This API is used to convert the accel x raw data to millig output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_x_msq (float *v_accel_x_f)
 This API is used to convert the accel x raw data to meterpersecseq output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_xyz_mg (struct bno055_accel_float_t *accel_xyz)
 This API is used to convert the accel xyz raw data to millig output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_xyz_msq (struct bno055_accel_float_t *accel_xyz)
 This API is used to convert the accel xyz raw data to meterpersecseq output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_y_mg (float *v_accel_y_f)
 This API is used to convert the accel y raw data to millig output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_y_msq (float *v_accel_y_f)
 This API is used to convert the accel x raw data to meterpersecseq output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_z_mg (float *v_accel_z_f)
 This API is used to convert the accel z raw data to millig output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_z_msq (float *v_accel_z_f)
 This API is used to convert the accel z raw data to meterpersecseq output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_h_deg (float *v_euler_h_f)
 This API is used to convert the Euler h raw data to degree output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_h_rad (float *v_euler_h_f)
 This API is used to convert the Euler h raw data to radians output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_hpr_deg (struct bno055_euler_float_t *euler_hpr)
 This API is used to convert the Euler hrp raw data to degree output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_hpr_rad (struct bno055_euler_float_t *euler_hpr)
 This API is used to convert the Euler xyz raw data to radians output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_p_deg (float *v_euler_p_f)
 This API is used to convert the Euler p raw data to degree output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_p_rad (float *v_euler_p_f)
 This API is used to convert the Euler p raw data to radians output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_r_deg (float *v_euler_r_f)
 This API is used to convert the Euler r raw data to degree output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_r_rad (float *v_euler_r_f)
 This API is used to convert the Euler r raw data to radians output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gravity_xyz_msq (struct bno055_gravity_float_t *gravity_xyz)
 This API is used to convert the gravity xyz raw data to meterpersecseq output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_x_dps (float *v_gyro_x_f)
 This API is used to convert the gyro x raw data to dps output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_x_rps (float *v_gyro_x_f)
 This API is used to convert the gyro x raw data to rps output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_xyz_dps (struct bno055_gyro_float_t *gyro_xyz_data)
 This API is used to convert the gyro xyz raw data to dps output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_xyz_rps (struct bno055_gyro_float_t *gyro_xyz_data)
 This API is used to convert the gyro xyz raw data to rps output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_y_dps (float *v_gyro_y_f)
 This API is used to convert the gyro y raw data to dps output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_y_rps (float *v_gyro_y_f)
 This API is used to convert the gyro y raw data to rps output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_z_dps (float *v_gyro_z_f)
 This API is used to convert the gyro z raw data to dps output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_z_rps (float *v_gyro_z_f)
 This API is used to convert the gyro z raw data to rps output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_linear_accel_x_msq (float *v_linear_accel_x_f)
 This API is used to convert the linear accel x raw data to meterpersecseq output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_linear_accel_xyz_msq (struct bno055_linear_accel_float_t *linear_accel_xyz)
 This API is used to convert the linear accel xyz raw data to meterpersecseq output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_linear_accel_y_msq (float *v_linear_accel_y_f)
 This API is used to convert the linear accel y raw data to meterpersecseq output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_linear_accel_z_msq (float *v_linear_accel_z_f)
 This API is used to convert the linear accel z raw data to meterpersecseq output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_mag_x_uT (float *v_mag_x_f)
 This API is used to convert the mag x raw data to microTesla output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_mag_xyz_uT (struct bno055_mag_float_t *mag_xyz_data)
 This API is used to convert the mag yz raw data to microTesla output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_mag_y_uT (float *v_mag_y_f)
 This API is used to convert the mag y raw data to microTesla output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_mag_z_uT (float *v_mag_z_f)
 This API is used to convert the mag z raw data to microTesla output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_temp_celsius (float *v_temp_f)
 This API is used to convert the temperature data to Celsius output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_temp_fahrenheit (float *v_temp_f)
 This API is used to convert the temperature data to Fahrenheit output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_double_x_msq (double *v_gravity_x_d)
 This API is used to convert the gravity x raw data to meterpersecseq output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_double_y_msq (double *v_gravity_y_d)
 This API is used to convert the gravity y raw data to meterpersecseq output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_double_z_msq (double *v_gravity_z_d)
 This API is used to convert the gravity z raw data to meterpersecseq output as double. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_float_x_msq (float *v_gravity_x_f)
 This API is used to convert the gravity x raw data to meterpersecseq output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_float_y_msq (float *v_gravity_y_f)
 This API is used to convert the gravity y raw data to meterpersecseq output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_float_z_msq (float *v_gravity_z_f)
 This API is used to convert the gravity z raw data to meterpersecseq output as float. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_any_motion_durn (u8 *v_accel_any_motion_durn_u8)
 This API used to read the accel anymotion duration from page one register from 0x12 bit 0 to 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_any_motion_no_motion_axis_enable (u8 v_channel_u8, u8 *v_data_u8)
 This API used to read the accel anymotion enable from page one register from 0x12 bit 2 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_any_motion_thres (u8 *v_accel_any_motion_thres_u8)
 This API used to read the accel any motion threshold from page one register from 0x11 bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_bw (u8 *v_accel_bw_u8)
 This API used to read the accel bandwidth from page one register from 0x08 bit 2 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_calib_stat (u8 *v_accel_calib_u8)
 This API used to read accel calibration status from register from 0x35 bit 2 and 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_high_g_axis_enable (u8 v_channel_u8, u8 *v_data_u8)
 This API used to read the accel highg enable from page one register from 0x12 bit 5 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_high_g_durn (u8 *v_accel_high_g_durn_u8)
 This API used to read the accel highg duration from page one register from 0x13 bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_high_g_thres (u8 *v_accel_high_g_thres_u8)
 This API used to read the accel highg threshold from page one register from 0x14 bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_power_mode (u8 *v_accel_power_mode_u8)
 This API used to read the accel power mode from page one register from 0x08 bit 5 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_range (u8 *v_accel_range_u8)
 This API used to read the accel range from page one register from 0x08 bit 0 and 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_sleep_durn (u8 *v_sleep_durn_u8)
 This API used to read the accel sleep duration from page one register from 0x0C bit 1 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_sleep_tmr_mode (u8 *v_sleep_tmr_u8)
 This API used to read the accel sleep mode from page one register from 0x0C bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_slow_no_motion_durn (u8 *v_accel_slow_no_motion_durn_u8)
 This API used to read accel slownomotion duration from page one register from 0x16 bit 1 to 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_slow_no_motion_enable (u8 *v_accel_slow_no_motion_en_u8)
 This API used to read accel slownomotion enable from page one register from 0x16 bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_slow_no_motion_thres (u8 *v_accel_slow_no_motion_thres_u8)
 This API used to read the accel slownomotion threshold from page one register from 0x15 bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_unit (u8 *v_accel_unit_u8)
 This API used to read the accel unit from register from 0x3B bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_axis_remap_value (u8 *v_remap_axis_u8)
 This API used to read the axis remap value from register from 0x41 bit 0 and 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_clk_src (u8 *v_clk_src_u8)
 This API used to read the clk source from register from 0x3F bit 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_data_output_format (u8 *v_data_output_format_u8)
 This API used to read the current selected orientation mode from register from 0x3B bit 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_euler_unit (u8 *v_euler_unit_u8)
 This API used to read the Euler unit from register from 0x3B bit 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_any_motion_awake_durn (u8 *v_gyro_awake_durn_u8)
 This API used to read gyro anymotion awake duration from page one register from 0x1F bit 2 to 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_any_motion_axis_enable (u8 v_channel_u8, u8 *v_data_u8)
 This API used to read the gyro anymotion enable from page one register from 0x17 bit 0 to 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_any_motion_filter (u8 *v_gyro_any_motion_filter_u8)
 This API used to read gyro anymotion filter from page one register from 0x17 bit 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_any_motion_slope_samples (u8 *v_gyro_any_motion_slope_samples_u8)
 This API used to read gyro anymotion slope samples from page one register from 0x1F bit 0 to 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_any_motion_thres (u8 *v_gyro_any_motion_thres_u8)
 This API used to read gyro anymotion threshold from page one register from 0x1E bit 0 to 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_auto_sleep_durn (u8 *v_auto_sleep_durn_u8)
 This API used to read the gyro auto sleep duration from page one register from 0x0D bit 3 to 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_bw (u8 *v_gyro_bw_u8)
 This API used to read the gyro bandwidth from page one register from 0x0A bit 3 to 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_calib_stat (u8 *v_gyro_calib_u8)
 This API used to read gyro calibration status from register from 0x35 bit 4 and 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_axis_enable (u8 v_channel_u8, u8 *v_data_u8)
 This API used to read the gyro highrate enable from page one register from 0x17 bit 3 to 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_filter (u8 *v_gyro_highrate_filter_u8)
 This API used to read gyro highrate filter from page one register from 0x17 bit 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_x_durn (u8 *v_gyro_highrate_x_durn_u8)
 This API used to read gyro highrate x duration from page one register from 0x19 bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_x_hyst (u8 *v_gyro_highrate_x_hyst_u8)
 This API used to read gyro highrate x hysteresis from page one register from 0x18 bit 5 to 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_x_thres (u8 *v_gyro_highrate_x_thres_u8)
 This API used to read gyro highrate x threshold from page one register from 0x18 bit 0 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_y_durn (u8 *v_gyro_highrate_y_durn_u8)
 This API used to read gyro highrate y duration from page one register from 0x1B bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_y_hyst (u8 *v_gyro_highrate_y_hyst_u8)
 This API used to read gyro highrate y hysteresis from page one register from 0x1A bit 5 to 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_y_thres (u8 *v_gyro_highrate_y_thres_u8)
 This API used to read gyro highrate y threshold from page one register from 0x1A bit 0 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_z_durn (u8 *v_gyro_highrate_z_durn_u8)
 This API used to read gyro highrate z duration from page one register from 0x1D bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_z_hyst (u8 *v_gyro_highrate_z_hyst_u8)
 This API used to read gyro highrate z hysteresis from page one register from 0x1C bit 5 to 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_z_thres (u8 *v_gyro_highrate_z_thres_u8)
 This API used to read gyro highrate z threshold from page one register from 0x1C bit 0 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_power_mode (u8 *v_gyro_power_mode_u8)
 This API used to read the gyro power mode from page one register from 0x0B bit 0 to 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_range (u8 *v_gyro_range_u8)
 This API used to read the gyro range from page one register from 0x0A bit 0 to 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_sleep_durn (u8 *v_sleep_durn_u8)
 This API used to write the gyro sleep duration from page one register from 0x0D bit 0 to 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_unit (u8 *v_gyro_unit_u8)
 This API used to read the gyro unit from register from 0x3B bit 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_accel_any_motion (u8 *v_accel_any_motion_u8)
 This API used to read the accel anymotion interrupt from page one register from 0x10 bit 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_accel_high_g (u8 *v_accel_high_g_u8)
 This API used to read the accel highg interrupt from page one register from 0x10 bit 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_accel_no_motion (u8 *v_accel_nomotion_u8)
 This API used to read the accel nomotion interrupt from page one register from 0x10 bit 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_gyro_any_motion (u8 *v_gyro_any_motion_u8)
 This API used to read the gyro anymotion interrupt from page one register from 0x10 bit 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_gyro_highrate (u8 *v_gyro_highrate_u8)
 This API used to read the gyro highrate interrupt from page one register from 0x10 bit 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_mask_accel_any_motion (u8 *v_accel_any_motion_u8)
 This API used to read the accel anymotion interrupt mask from page one register from 0x0F bit 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_mask_accel_high_g (u8 *v_accel_high_g_u8)
 This API used to read the accel highg interrupt mask from page one register from 0x0F bit 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_mask_accel_no_motion (u8 *v_accel_nomotion_u8)
 This API used to read the accel nomotion interrupt mask from page one register from 0x0F bit 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_mask_gyro_any_motion (u8 *v_gyro_any_motion_u8)
 This API used to read the gyro anymotion interrupt mask from page one register from 0x0F bit 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_mask_gyro_highrate (u8 *v_gyro_highrate_u8)
 This API used to read the gyro highrate interrupt mask from page one register from 0x0F bit 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_rst (u8 *v_intr_rst_u8)
 This API used to read the reset interrupt from register from 0x3F bit 6 It resets all the interrupt bit and interrupt output. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_accel_any_motion (u8 *v_accel_any_motion_u8)
 This API used to read the v_stat_s8 of accel anymotion interrupt from register from 0x37 bit 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_accel_high_g (u8 *v_accel_high_g_u8)
 This API used to read the v_stat_s8 of accel highg interrupt from register from 0x37 bit 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_accel_no_motion (u8 *v_accel_no_motion_u8)
 This API used to read the v_stat_s8 of accel nomotion/slowmotion interrupt from register from 0x37 bit 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_gyro_any_motion (u8 *v_gyro_any_motion_u8)
 This API used to read the v_stat_s8 of gyro anymotion interrupt from register from 0x37 bit 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_gyro_highrate (u8 *v_gyro_highrate_u8)
 This API used to read the v_stat_s8 of gyro highrate interrupt from register from 0x37 bit 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_mag_calib_stat (u8 *v_mag_calib_u8)
 This API used to read mag calibration status from register from 0x35 bit 0 and 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_mag_data_output_rate (u8 *v_mag_data_output_rate_u8)
 This API used to read the mag output data rate from page one register from 0x09 bit 0 to 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_mag_operation_mode (u8 *v_mag_operation_mode_u8)
 This API used to read the mag operation mode from page one register from 0x09 bit 3 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_mag_power_mode (u8 *v_mag_power_mode_u8)
 This API used to read the mag power mode from page one register from 0x09 bit 4 to 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_mag_sleep_durn (u8 *v_sleep_durn_u8)
 This API used to read the mag sleep duration from page one register from 0x0E bit 1 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_mag_sleep_mode (u8 *v_sleep_mode_u8)
 This API used to read the mag sleep mode from page one register from 0x0E bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_operation_mode (u8 *v_operation_mode_u8)
 This API used to read the operation mode from register from 0x3D bit 0 to 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_power_mode (u8 *v_power_mode_u8)
 This API used to read the power mode from register from 0x3E bit 0 to 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_remap_x_sign (u8 *v_remap_x_sign_u8)
 This API used to read the x-axis remap sign from register from 0x42 bit 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_remap_y_sign (u8 *v_remap_y_sign_u8)
 This API used to read the y-axis remap sign from register from 0x42 bit 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_remap_z_sign (u8 *v_remap_z_sign_u8)
 This API used to read the z-axis remap sign from register from 0x42 bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_selftest (u8 *v_selftest_u8)
 This API used to read the self test from register from 0x3F bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_selftest_accel (u8 *v_selftest_accel_u8)
 This API used to read self test of accel from register from 0x36 bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_selftest_gyro (u8 *v_selftest_gyro_u8)
 This API used to read self test of gyro from register from 0x36 bit 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_selftest_mag (u8 *v_selftest_mag_u8)
 This API used to read self test of mag from register from 0x36 bit 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_selftest_mcu (u8 *v_selftest_mcu_u8)
 This API used to read self test of micro controller from register from 0x36 bit 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_stat_main_clk (u8 *v_stat_main_clk_u8)
 This API is used to read status of main clock from the register 0x38 bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_sys_calib_stat (u8 *v_sys_calib_u8)
 This API used to read system calibration status from register from 0x35 bit 6 and 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_sys_error_code (u8 *v_sys_error_u8)
 This API is used to read system error code from the register 0x3A it is a byte of data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_sys_rst (u8 *v_sys_rst_u8)
 This API used to read the reset system from register from 0x3F bit 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_sys_stat_code (u8 *v_sys_stat_u8)
 This API is used to read system status code from the register 0x39 it is a byte of data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_temp_source (u8 *v_temp_source_u8)
 This API used to read the temperature source from register from 0x40 bit 0 and 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_temp_unit (u8 *v_temp_unit_u8)
 This API used to read the temperature unit from register from 0x3B bit 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_get_tilt_unit (u8 *v_tilt_unit_u8)
 This API used to write the tilt unit from register from 0x3B bit 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_gyro_set_auto_sleep_durn (u8 v_auto_sleep_durn_u8, u8 bw)
 This API used to write the gyro auto sleep duration from page one register from 0x0D bit 3 to 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_init (struct bno055_t *bno055)
 This function is used for initialize bus read, bus write function pointers,device address,accel revision id, gyro revision id mag revision id, software revision id, boot loader revision id and page id. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_accel_offset (struct bno055_accel_offset_t *accel_offset)
 This API is used to read accel offset and accel radius offset form register 0x55 to 0x5A and radius form 0x67 and 0x68. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_accel_rev_id (u8 *v_accel_rev_id_u8)
 This API reads accel revision id from register 0x01 it is a byte of value. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_accel_x (s16 *v_accel_x_s16)
 This API reads acceleration data X values from register 0x08 and 0x09 it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_accel_xyz (struct bno055_accel_t *accel)
 This API reads acceleration data xyz values from register 0x08 to 0x0D it is a six byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_accel_y (s16 *v_accel_y_s16)
 This API reads acceleration data Y values from register 0x0A and 0x0B it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_accel_z (s16 *v_accel_z_s16)
 This API reads acceleration data z values from register 0x0C and 0x0D it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_bl_rev_id (u8 *v_bl_rev_id_u8)
 This API used to read boot loader revision id from register 0x06 it is a byte of value. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_chip_id (u8 *v_chip_id_u8)
 This API reads chip id from register 0x00 it is a byte of data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_euler_h (s16 *v_euler_h_s16)
 This API reads gyro data z values from register 0x1A and 0x1B it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_euler_hrp (struct bno055_euler_t *euler)
 This API reads Euler data hrp values from register 0x1A to 0x1F it is a six byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_euler_p (s16 *v_euler_p_s16)
 This API reads Euler data p values from register 0x1E and 0x1F it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_euler_r (s16 *v_euler_r_s16)
 This API reads Euler data r values from register 0x1C and 0x1D it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_gravity_x (s16 *v_gravity_x_s16)
 This API reads gravity data x values from register 0x2E and 0x2F it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_gravity_xyz (struct bno055_gravity_t *gravity)
 This API reads gravity data xyz values from register 0x2E to 0x33 it is a six byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_gravity_y (s16 *v_gravity_y_s16)
 This API reads gravity data y values from register 0x30 and 0x31 it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_gravity_z (s16 *v_gravity_z_s16)
 This API reads gravity data z values from register 0x32 and 0x33 it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_gyro_offset (struct bno055_gyro_offset_t *gyro_offset)
 This API is used to read gyro offset offset form register 0x61 to 0x66. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_gyro_rev_id (u8 *v_gyro_rev_id_u8)
 This API reads gyro revision id from register 0x03 it is a byte of value. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_gyro_x (s16 *v_gyro_x_s16)
 This API reads gyro data x values from register 0x14 and 0x15 it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_gyro_xyz (struct bno055_gyro_t *gyro)
 This API reads gyro data xyz values from register 0x14 to 0x19 it is a six byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_gyro_y (s16 *v_gyro_y_s16)
 This API reads gyro data y values from register 0x16 and 0x17 it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_gyro_z (s16 *v_gyro_z_s16)
 This API reads gyro data z values from register 0x18 and 0x19 it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_linear_accel_x (s16 *v_linear_accel_x_s16)
 This API reads Linear accel data x values from register 0x29 and 0x2A it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_linear_accel_xyz (struct bno055_linear_accel_t *linear_accel)
 This API reads Linear accel data xyz values from register 0x28 to 0x2D it is a six byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_linear_accel_y (s16 *v_linear_accel_y_s16)
 This API reads Linear accel data x values from register 0x2B and 0x2C it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_linear_accel_z (s16 *v_linear_accel_z_s16)
 This API reads Linear accel data x values from register 0x2C and 0x2D it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_mag_offset (struct bno055_mag_offset_t *mag_offset)
 This API is used to read mag offset offset form register 0x69 to 0x6A. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_mag_rev_id (u8 *v_mag_rev_id_u8)
 This API reads mag revision id from register 0x02 it is a byte of value. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_mag_x (s16 *v_mag_x_s16)
 This API reads mag data x values from register 0x0E and 0x0F it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_mag_xyz (struct bno055_mag_t *mag)
 This API reads mag data xyz values from register 0x0E to 0x13 it is a six byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_mag_y (s16 *v_mag_y_s16)
 This API reads mag data y values from register 0x10 and 0x11 it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_mag_z (s16 *v_mag_z_s16)
 This API reads mag data z values from register 0x12 and 0x13 it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_page_id (u8 *v_page_id_u8)
 This API reads page id from register 0x07 it is a byte of data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_quaternion_w (s16 *v_quaternion_w_s16)
 This API reads quaternion data w values from register 0x20 and 0x21 it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_quaternion_wxyz (struct bno055_quaternion_t *quaternion)
 This API reads Quaternion data wxyz values from register 0x20 to 0x27 it is a six byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_quaternion_x (s16 *v_quaternion_x_s16)
 This API reads quaternion data x values from register 0x22 and 0x23 it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_quaternion_y (s16 *v_quaternion_y_s16)
 This API reads quaternion data y values from register 0x24 and 0x25 it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_quaternion_z (s16 *v_quaternion_z_s16)
 This API reads quaternion data z values from register 0x26 and 0x27 it is a two byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_register (u8 v_addr_u8, u8 *p_data_u8, u8 v_len_u8)
 This API reads the data from the given register address. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_sic_matrix (struct bno055_sic_matrix_t *sic_matrix)
 This API is used to read soft iron calibration matrix from the register 0x43 to 0x53 it is a 18 bytes of data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_sw_rev_id (u16 *v_sw_id_u8)
 This API reads software revision id from register 0x04 and 0x05 it is a two byte of data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_read_temp_data (s8 *v_temp_s8)
 This API reads temperature values from register 0x33 it is a byte data. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_any_motion_durn (u8 v_accel_any_motion_durn_u8)
 This API used to write the accel anymotion duration from page one register from 0x12 bit 0 to 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_any_motion_no_motion_axis_enable (u8 v_channel_u8, u8 v_data_u8)
 This API used to write the accel anymotion enable from page one register from 0x12 bit 2 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_any_motion_thres (u8 v_accel_any_motion_thres_u8)
 This API used to write the accel any motion threshold from page one register from 0x11 bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_bw (u8 v_accel_bw_u8)
 This API used to write the accel bandwidth from page one register from 0x08 bit 2 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_high_g_axis_enable (u8 v_channel_u8, u8 v_data_u8)
 This API used to write the accel highg enable from page one register from 0x12 bit 5 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_high_g_durn (u8 v_accel_high_g_durn_u8)
 This API used to write the accel highg duration from page one register from 0x13 bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_high_g_thres (u8 v_accel_high_g_thres_u8)
 This API used to write the accel highg threshold from page one register from 0x14 bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_power_mode (u8 v_accel_power_mode_u8)
 This API used to write the accel power mode from page one register from 0x08 bit 5 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_range (u8 v_accel_range_u8)
 This API used to write the accel range from page one register from 0x08 bit 0 and 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_sleep_durn (u8 v_sleep_durn_u8)
 This API used to write the accel sleep duration from page one register from 0x0C bit 1 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_sleep_tmr_mode (u8 v_sleep_tmr_u8)
 This API used to write the accel sleep mode from page one register from 0x0C bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_slow_no_motion_durn (u8 v_accel_slow_no_motion_durn_u8)
 This API used to write accel slownomotion duration from page one register from 0x16 bit 1 to 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_slow_no_motion_enable (u8 v_accel_slow_no_motion_en_u8)
 This API used to write accel slownomotion enable from page one register from 0x16 bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_slow_no_motion_thres (u8 v_accel_slow_no_motion_thres_u8)
 This API used to write the accel slownomotion threshold from page one register from 0x15 bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_unit (u8 v_accel_unit_u8)
 This API used to write the accel unit from register from 0x3B bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_axis_remap_value (u8 v_remap_axis_u8)
 This API used to write the axis remap value from register from 0x41 bit 0 and 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_clk_src (u8 v_clk_src_u8)
 This API used to write the clk source from register from 0x3F bit 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_data_output_format (u8 v_data_output_format_u8)
 This API used to write the current selected orientation mode from register from 0x3B bit 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_euler_unit (u8 v_euler_unit_u8)
 This API used to write the Euler unit from register from 0x3B bit 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_any_motion_awake_durn (u8 v_gyro_awake_durn_u8)
 This API used to write gyro anymotion awake duration from page one register from 0x1F bit 2 to 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_any_motion_axis_enable (u8 v_channel_u8, u8 v_data_u8)
 This API used to write the gyro anymotion enable from page one register from 0x17 bit 0 to 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_any_motion_filter (u8 v_gyro_any_motion_filter_u8)
 This API used to write gyro anymotion filter from page one register from 0x17 bit 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_any_motion_slope_samples (u8 v_gyro_any_motion_slope_samples_u8)
 This API used to write gyro anymotion slope samples from page one register from 0x1F bit 0 to 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_any_motion_thres (u8 v_gyro_any_motion_thres_u8)
 This API used to write gyro anymotion threshold from page one register from 0x1E bit 0 to 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_bw (u8 v_gyro_bw_u8)
 This API used to write the gyro bandwidth from page one register from 0x0A bit 3 to 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_axis_enable (u8 v_channel_u8, u8 v_data_u8)
 This API used to write the gyro highrate enable from page one register from 0x17 bit 3 to 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_filter (u8 v_gyro_highrate_filter_u8)
 This API used to write gyro highrate filter from page one register from 0x17 bit 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_x_durn (u8 v_gyro_highrate_x_durn_u8)
 This API used to write gyro highrate x duration from page one register from 0x19 bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_x_hyst (u8 v_gyro_highrate_x_hyst_u8)
 This API used to write gyro highrate x hysteresis from page one register from 0x18 bit 5 to 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_x_thres (u8 v_gyro_highrate_x_thres_u8)
 This API used to write gyro highrate x threshold from page one register from 0x18 bit 0 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_y_durn (u8 v_gyro_highrate_y_durn_u8)
 This API used to write gyro highrate y duration from page one register from 0x1B bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_y_hyst (u8 v_gyro_highrate_y_hyst_u8)
 This API used to write gyro highrate y hysteresis from page one register from 0x1A bit 5 to 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_y_thres (u8 v_gyro_highrate_y_thres_u8)
 This API used to write gyro highrate y threshold from page one register from 0x1A bit 0 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_z_durn (u8 v_gyro_highrate_z_durn_u8)
 This API used to write gyro highrate z duration from page one register from 0x1D bit 0 to 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_z_hyst (u8 v_gyro_highrate_z_hyst_u8)
 This API used to write gyro highrate z hysteresis from page one register from 0x1C bit 5 to 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_z_thres (u8 v_gyro_highrate_z_thres_u8)
 This API used to write gyro highrate z threshold from page one register from 0x1C bit 0 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_power_mode (u8 v_gyro_power_mode_u8)
 This API used to write the gyro power mode from page one register from 0x0B bit 0 to 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_range (u8 v_gyro_range_u8)
 This API used to write the gyro range from page one register from 0x0A bit 0 to 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_sleep_durn (u8 v_sleep_durn_u8)
 This API used to write the gyro sleep duration from page one register from 0x0D bit 0 to 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_unit (u8 v_gyro_unit_u8)
 This API used to write the gyro unit from register from 0x3B bit 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_accel_any_motion (u8 v_accel_any_motion_u8)
 This API used to write the accel anymotion interrupt from page one register from 0x10 bit 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_accel_high_g (u8 v_accel_high_g_u8)
 This API used to write the accel highg interrupt from page one register from 0x10 bit 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_accel_no_motion (u8 v_accel_nomotion_u8)
 This API used to write the accel nomotion interrupt from page one register from 0x10 bit 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_gyro_any_motion (u8 v_gyro_any_motion_u8)
 This API used to write the gyro anymotion interrupt from page one register from 0x10 bit 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_gyro_highrate (u8 v_gyro_highrate_u8)
 This API used to write the gyro highrate interrupt from page one register from 0x10 bit 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_mask_accel_any_motion (u8 v_accel_any_motion_u8)
 This API used to write the accel anymotion interrupt mask from page one register from 0x0F bit 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_mask_accel_high_g (u8 v_accel_high_g_u8)
 This API used to write the accel highg interrupt mask from page one register from 0x0F bit 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_mask_accel_no_motion (u8 v_accel_nomotion_u8)
 This API used to write the accel nomotion interrupt mask from page one register from 0x0F bit 7. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_mask_gyro_any_motion (u8 v_gyro_any_motion_u8)
 This API used to write the gyro anymotion interrupt mask from page one register from 0x0F bit 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_mask_gyro_highrate (u8 v_gyro_highrate_u8)
 This API used to write the gyro highrate interrupt mask from page one register from 0x0F bit 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_rst (u8 v_intr_rst_u8)
 This API used to write the reset interrupt from register from 0x3F bit 6 It resets all the interrupt bit and interrupt output. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_mag_data_output_rate (u8 v_mag_data_output_rate_u8)
 This API used to write the mag output data rate from page one register from 0x09 bit 0 to 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_mag_operation_mode (u8 v_mag_operation_mode_u8)
 This API used to write the mag operation mode from page one register from 0x09 bit 3 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_mag_power_mode (u8 v_mag_power_mode_u8)
 This API used to write the mag power mode from page one register from 0x09 bit 4 to 6. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_mag_sleep_durn (u8 v_sleep_durn_u8)
 This API used to write the mag sleep duration from page one register from 0x0E bit 1 to 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_mag_sleep_mode (u8 v_sleep_mode_u8)
 This API used to write the mag sleep mode from page one register from 0x0E bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_operation_mode (u8 v_operation_mode_u8)
 This API used to write the operation mode from register from 0x3D bit 0 to 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_power_mode (u8 v_power_mode_u8)
 This API used to write the power mode from register from 0x3E bit 0 to 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_remap_x_sign (u8 v_remap_x_sign_u8)
 This API used to write the x-axis remap sign from register from 0x42 bit 2. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_remap_y_sign (u8 v_remap_y_sign_u8)
 This API used to write the y-axis remap sign from register from 0x42 bit 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_remap_z_sign (u8 v_remap_z_sign_u8)
 This API used to write the z-axis remap sign from register from 0x42 bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_selftest (u8 v_selftest_u8)
 This API used to write the self test from register from 0x3F bit 0. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_sys_rst (u8 v_sys_rst_u8)
 This API used to write the reset system from register from 0x3F bit 5. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_temp_source (u8 v_temp_source_u8)
 This API used to write the temperature source from register from 0x40 bit 0 and 1. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_temp_unit (u8 v_temp_unit_u8)
 This API used to write the temperature unit from register from 0x3B bit 4. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_set_tilt_unit (u8 v_tilt_unit_u8)
 This API used to write the tilt unit from register from 0x3B bit 3. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_write_accel_offset (struct bno055_accel_offset_t *accel_offset)
 This API is used to write accel offset and accel radius offset form register 0x55 to 0x5A and radius form 0x67 and 0x68. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_write_gyro_offset (struct bno055_gyro_offset_t *gyro_offset)
 This API is used to read gyro offset offset form register 0x61 to 0x66. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_write_mag_offset (struct bno055_mag_offset_t *mag_offset)
 This API is used to read mag offset offset form register 0x69 to 0x6A. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_write_page_id (u8 v_page_id_u8)
 This API used to write the page id register 0x07. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_write_register (u8 v_addr_u8, u8 *p_data_u8, u8 v_len_u8)
 This API gives data to the given register and the data is written in the corresponding register address. More...
 
BNO055_RETURN_FUNCTION_TYPE bno055_write_sic_matrix (struct bno055_sic_matrix_t *sic_matrix)
 This API is used to write soft iron calibration matrix from the register 0x43 to 0x53 it is a 18 bytes of data. More...
 

Variables

static struct bno055_tp_bno055
 

DATA TYPES INCLUDES

#define MACHINE_32_BIT
 The following definition uses for define the data types. More...
 
typedef signed char s8
 If your machine support 16 bit define the MACHINE_16_BIT. More...
 
typedef signed short int s16
 used for signed 16bit More...
 
typedef signed int s32
 used for signed 32bit More...
 
typedef signed long long int s64
 used for signed 64bit More...
 
typedef unsigned char u8
 used for unsigned 8bit More...
 
typedef unsigned short int u16
 used for unsigned 16bit More...
 
typedef unsigned int u32
 used for unsigned 32bit More...
 
typedef unsigned long long int u64
 used for unsigned 64bit More...
 

#define ACCEL_ANY_MOTION_THRES_ADDR   0X11
#define ACCEL_BW_1000HZ   0X07
#define ACCEL_BW_125HZ   0X04
#define ACCEL_BW_15_63HZ   0x01
#define ACCEL_BW_250HZ   0X05
#define ACCEL_BW_31_25HZ   0x02
#define ACCEL_BW_500HZ   0X06
#define ACCEL_BW_62_5HZ   0X03
#define ACCEL_BW_7_81HZ   0x00
#define ACCEL_CONFIG_ADDR   0X08
#define ACCEL_DEEPSUSPEND   0X05
#define ACCEL_DIV_MG   1
#define ACCEL_DIV_MSQ   100.0
#define ACCEL_HIGH_G_DURN_ADDR   0X13
#define ACCEL_HIGH_G_THRES_ADDR   0X14
#define ACCEL_INTR_SETTINGS_ADDR   0X12
#define ACCEL_LOWPOWER_1   0X02
#define ACCEL_LOWPOWER_2   0X04
#define ACCEL_NO_MOTION_SET_ADDR   0X16
#define ACCEL_NO_MOTION_THRES_ADDR   0X15
#define ACCEL_NORMAL   0X00
#define ACCEL_OFFSET_X_LSB_ADDR   0X55
#define ACCEL_OFFSET_X_MSB_ADDR   0X56
#define ACCEL_OFFSET_Y_LSB_ADDR   0X57
#define ACCEL_OFFSET_Y_MSB_ADDR   0X58
#define ACCEL_OFFSET_Z_LSB_ADDR   0X59
#define ACCEL_OFFSET_Z_MSB_ADDR   0X5A
#define ACCEL_RADIUS_LSB_ADDR   0X67
#define ACCEL_RADIUS_MSB_ADDR   0X68
#define ACCEL_RANGE_16G   0X03
#define ACCEL_RANGE_2G   0X00
#define ACCEL_RANGE_4G   0X01
#define ACCEL_RANGE_8G   0X02
#define ACCEL_SLEEP_CONFIG_ADDR   0X0C
#define ACCEL_STANDBY   0X03
#define ACCEL_SUSPEND   0X01
#define ACCEL_TEMP_EN   0x00
#define ACCEL_UNIT_MG   0x01
#define ACCEL_UNIT_MSQ   0x00
#define ARRAY_SIZE_EIGHT   8
#define ARRAY_SIZE_EIGHTEEN   18
#define ARRAY_SIZE_FIVE   5
#define ARRAY_SIZE_FOURTEEN   14
#define ARRAY_SIZE_SIX   6
#define ARRAY_SIZE_THREE   3
#define ARRAY_SIZE_TWELVE   12
#define ARRAY_SIZE_TWENTY_SIX   26
#define ARRAY_SIZE_TWO   2
#define BNO055_ACCEL_ANY_MOTION_DURN_SET__LEN   2
#define BNO055_ACCEL_ANY_MOTION_DURN_SET__MSK   0X03
#define BNO055_ACCEL_ANY_MOTION_DURN_SET__POS   0
#define BNO055_ACCEL_ANY_MOTION_DURN_SET__REG   ACCEL_INTR_SETTINGS_ADDR
#define BNO055_ACCEL_ANY_MOTION_INTR__LEN   1
#define BNO055_ACCEL_ANY_MOTION_INTR__MSK   0X40
#define BNO055_ACCEL_ANY_MOTION_INTR__POS   6
#define BNO055_ACCEL_ANY_MOTION_INTR__REG   INT_ADDR
#define BNO055_ACCEL_ANY_MOTION_INTR_MASK__LEN   1
#define BNO055_ACCEL_ANY_MOTION_INTR_MASK__MSK   0X40
#define BNO055_ACCEL_ANY_MOTION_INTR_MASK__POS   6
#define BNO055_ACCEL_ANY_MOTION_INTR_MASK__REG   INT_MASK_ADDR
#define BNO055_ACCEL_ANY_MOTION_NO_MOTION_X_AXIS   0
#define BNO055_ACCEL_ANY_MOTION_NO_MOTION_Y_AXIS   1
#define BNO055_ACCEL_ANY_MOTION_NO_MOTION_Z_AXIS   2
#define BNO055_ACCEL_ANY_MOTION_THRES__LEN   8
#define BNO055_ACCEL_ANY_MOTION_THRES__MSK   0XFF
#define BNO055_ACCEL_ANY_MOTION_THRES__POS   0
#define BNO055_ACCEL_ANY_MOTION_THRES__REG   ACCEL_ANY_MOTION_THRES_ADDR
#define BNO055_ACCEL_ANY_MOTION_X_AXIS__LEN   1
#define BNO055_ACCEL_ANY_MOTION_X_AXIS__MSK   0X04
#define BNO055_ACCEL_ANY_MOTION_X_AXIS__POS   2
#define BNO055_ACCEL_ANY_MOTION_X_AXIS__REG   ACCEL_INTR_SETTINGS_ADDR
#define BNO055_ACCEL_ANY_MOTION_Y_AXIS__LEN   1
#define BNO055_ACCEL_ANY_MOTION_Y_AXIS__MSK   0X08
#define BNO055_ACCEL_ANY_MOTION_Y_AXIS__POS   3
#define BNO055_ACCEL_ANY_MOTION_Y_AXIS__REG   ACCEL_INTR_SETTINGS_ADDR
#define BNO055_ACCEL_ANY_MOTION_Z_AXIS__LEN   1
#define BNO055_ACCEL_ANY_MOTION_Z_AXIS__MSK   0X10
#define BNO055_ACCEL_ANY_MOTION_Z_AXIS__POS   4
#define BNO055_ACCEL_ANY_MOTION_Z_AXIS__REG   ACCEL_INTR_SETTINGS_ADDR
#define BNO055_ACCEL_BW__LEN   3
#define BNO055_ACCEL_BW__MSK   0X1C
#define BNO055_ACCEL_BW__POS   2
#define BNO055_ACCEL_BW__REG   ACCEL_CONFIG_ADDR
#define BNO055_ACCEL_CALIB_STAT__LEN   2
#define BNO055_ACCEL_CALIB_STAT__MSK   0X0C
#define BNO055_ACCEL_CALIB_STAT__POS   2
#define BNO055_ACCEL_CALIB_STAT__REG   BNO055_CALIB_STAT_ADDR
#define BNO055_ACCEL_DATA_X_LSB_ADDR   0X08
#define BNO055_ACCEL_DATA_X_LSB_VALUEX__LEN   8
#define BNO055_ACCEL_DATA_X_LSB_VALUEX__MSK   0xFF
#define BNO055_ACCEL_DATA_X_LSB_VALUEX__POS   0
#define BNO055_ACCEL_DATA_X_LSB_VALUEX__REG   BNO055_ACCEL_DATA_X_LSB_ADDR
#define BNO055_ACCEL_DATA_X_MSB_ADDR   0X09
#define BNO055_ACCEL_DATA_X_MSB_VALUEX__LEN   8
#define BNO055_ACCEL_DATA_X_MSB_VALUEX__MSK   0xFF
#define BNO055_ACCEL_DATA_X_MSB_VALUEX__POS   0
#define BNO055_ACCEL_DATA_X_MSB_VALUEX__REG   BNO055_ACCEL_DATA_X_MSB_ADDR
#define BNO055_ACCEL_DATA_Y_LSB_ADDR   0X0A
#define BNO055_ACCEL_DATA_Y_LSB_VALUEY__LEN   8
#define BNO055_ACCEL_DATA_Y_LSB_VALUEY__MSK   0xFF
#define BNO055_ACCEL_DATA_Y_LSB_VALUEY__POS   0
#define BNO055_ACCEL_DATA_Y_LSB_VALUEY__REG   BNO055_ACCEL_DATA_Y_LSB_ADDR
#define BNO055_ACCEL_DATA_Y_MSB_ADDR   0X0B
#define BNO055_ACCEL_DATA_Y_MSB_VALUEY__LEN   8
#define BNO055_ACCEL_DATA_Y_MSB_VALUEY__MSK   0xFF
#define BNO055_ACCEL_DATA_Y_MSB_VALUEY__POS   0
#define BNO055_ACCEL_DATA_Y_MSB_VALUEY__REG   BNO055_ACCEL_DATA_Y_MSB_ADDR
#define BNO055_ACCEL_DATA_Z_LSB_ADDR   0X0C
#define BNO055_ACCEL_DATA_Z_LSB_VALUEZ__LEN   8
#define BNO055_ACCEL_DATA_Z_LSB_VALUEZ__MSK   0xFF
#define BNO055_ACCEL_DATA_Z_LSB_VALUEZ__POS   0
#define BNO055_ACCEL_DATA_Z_LSB_VALUEZ__REG   BNO055_ACCEL_DATA_Z_LSB_ADDR
#define BNO055_ACCEL_DATA_Z_MSB_ADDR   0X0D
#define BNO055_ACCEL_DATA_Z_MSB_VALUEZ__LEN   8
#define BNO055_ACCEL_DATA_Z_MSB_VALUEZ__MSK   0xFF
#define BNO055_ACCEL_DATA_Z_MSB_VALUEZ__POS   0
#define BNO055_ACCEL_DATA_Z_MSB_VALUEZ__REG   BNO055_ACCEL_DATA_Z_MSB_ADDR
#define BNO055_ACCEL_HIGH_G_DURN__LEN   8
#define BNO055_ACCEL_HIGH_G_DURN__MSK   0XFF
#define BNO055_ACCEL_HIGH_G_DURN__POS   0
#define BNO055_ACCEL_HIGH_G_DURN__REG   ACCEL_HIGH_G_DURN_ADDR
#define BNO055_ACCEL_HIGH_G_INTR__LEN   1
#define BNO055_ACCEL_HIGH_G_INTR__MSK   0X20
#define BNO055_ACCEL_HIGH_G_INTR__POS   5
#define BNO055_ACCEL_HIGH_G_INTR__REG   INT_ADDR
#define BNO055_ACCEL_HIGH_G_INTR_MASK__LEN   1
#define BNO055_ACCEL_HIGH_G_INTR_MASK__MSK   0X20
#define BNO055_ACCEL_HIGH_G_INTR_MASK__POS   5
#define BNO055_ACCEL_HIGH_G_INTR_MASK__REG   INT_MASK_ADDR
#define BNO055_ACCEL_HIGH_G_THRES__LEN   8
#define BNO055_ACCEL_HIGH_G_THRES__MSK   0XFF
#define BNO055_ACCEL_HIGH_G_THRES__POS   0
#define BNO055_ACCEL_HIGH_G_THRES__REG   ACCEL_HIGH_G_THRES_ADDR
#define BNO055_ACCEL_HIGH_G_X_AXIS   0
#define BNO055_ACCEL_HIGH_G_X_AXIS__LEN   1
#define BNO055_ACCEL_HIGH_G_X_AXIS__MSK   0X20
#define BNO055_ACCEL_HIGH_G_X_AXIS__POS   5
#define BNO055_ACCEL_HIGH_G_X_AXIS__REG   ACCEL_INTR_SETTINGS_ADDR
#define BNO055_ACCEL_HIGH_G_Y_AXIS   1
#define BNO055_ACCEL_HIGH_G_Y_AXIS__LEN   1
#define BNO055_ACCEL_HIGH_G_Y_AXIS__MSK   0X40
#define BNO055_ACCEL_HIGH_G_Y_AXIS__POS   6
#define BNO055_ACCEL_HIGH_G_Y_AXIS__REG   ACCEL_INTR_SETTINGS_ADDR
#define BNO055_ACCEL_HIGH_G_Z_AXIS   2
#define BNO055_ACCEL_HIGH_G_Z_AXIS__LEN   1
#define BNO055_ACCEL_HIGH_G_Z_AXIS__MSK   0X80
#define BNO055_ACCEL_HIGH_G_Z_AXIS__POS   7
#define BNO055_ACCEL_HIGH_G_Z_AXIS__REG   ACCEL_INTR_SETTINGS_ADDR
#define BNO055_ACCEL_NO_MOTION_INTR__LEN   1
#define BNO055_ACCEL_NO_MOTION_INTR__MSK   0X80
#define BNO055_ACCEL_NO_MOTION_INTR__POS   7
#define BNO055_ACCEL_NO_MOTION_INTR__REG   INT_ADDR
#define BNO055_ACCEL_NO_MOTION_INTR_MASK__LEN   1
#define BNO055_ACCEL_NO_MOTION_INTR_MASK__MSK   0X80
#define BNO055_ACCEL_NO_MOTION_INTR_MASK__POS   7
#define BNO055_ACCEL_NO_MOTION_INTR_MASK__REG   INT_MASK_ADDR
#define BNO055_ACCEL_OFFSET_X_LSB__LEN   8
#define BNO055_ACCEL_OFFSET_X_LSB__MSK   0XFF
#define BNO055_ACCEL_OFFSET_X_LSB__POS   0
#define BNO055_ACCEL_OFFSET_X_LSB__REG   ACCEL_OFFSET_X_LSB_ADDR
#define BNO055_ACCEL_OFFSET_X_MSB__LEN   8
#define BNO055_ACCEL_OFFSET_X_MSB__MSK   0XFF
#define BNO055_ACCEL_OFFSET_X_MSB__POS   0
#define BNO055_ACCEL_OFFSET_X_MSB__REG   ACCEL_OFFSET_X_MSB_ADDR
#define BNO055_ACCEL_OFFSET_Y_LSB__LEN   8
#define BNO055_ACCEL_OFFSET_Y_LSB__MSK   0XFF
#define BNO055_ACCEL_OFFSET_Y_LSB__POS   0
#define BNO055_ACCEL_OFFSET_Y_LSB__REG   ACCEL_OFFSET_Y_LSB_ADDR
#define BNO055_ACCEL_OFFSET_Y_MSB__LEN   8
#define BNO055_ACCEL_OFFSET_Y_MSB__MSK   0XFF
#define BNO055_ACCEL_OFFSET_Y_MSB__POS   0
#define BNO055_ACCEL_OFFSET_Y_MSB__REG   ACCEL_OFFSET_Y_MSB_ADDR
#define BNO055_ACCEL_OFFSET_Z_LSB__LEN   8
#define BNO055_ACCEL_OFFSET_Z_LSB__MSK   0XFF
#define BNO055_ACCEL_OFFSET_Z_LSB__POS   0
#define BNO055_ACCEL_OFFSET_Z_LSB__REG   ACCEL_OFFSET_Z_LSB_ADDR
#define BNO055_ACCEL_OFFSET_Z_MSB__LEN   8
#define BNO055_ACCEL_OFFSET_Z_MSB__MSK   0XFF
#define BNO055_ACCEL_OFFSET_Z_MSB__POS   0
#define BNO055_ACCEL_OFFSET_Z_MSB__REG   ACCEL_OFFSET_Z_MSB_ADDR
#define BNO055_ACCEL_POWER_MODE__LEN   3
#define BNO055_ACCEL_POWER_MODE__MSK   0XE0
#define BNO055_ACCEL_POWER_MODE__POS   5
#define BNO055_ACCEL_POWER_MODE__REG   ACCEL_CONFIG_ADDR
#define BNO055_ACCEL_RADIUS_LSB__LEN   8
#define BNO055_ACCEL_RADIUS_LSB__MSK   0XFF
#define BNO055_ACCEL_RADIUS_LSB__POS   0
#define BNO055_ACCEL_RADIUS_LSB__REG   ACCEL_RADIUS_LSB_ADDR
#define BNO055_ACCEL_RADIUS_MSB__LEN   8
#define BNO055_ACCEL_RADIUS_MSB__MSK   0XFF
#define BNO055_ACCEL_RADIUS_MSB__POS   0
#define BNO055_ACCEL_RADIUS_MSB__REG   ACCEL_RADIUS_MSB_ADDR
#define BNO055_ACCEL_RANGE__LEN   2
#define BNO055_ACCEL_RANGE__MSK   0X03
#define BNO055_ACCEL_RANGE__POS   0
#define BNO055_ACCEL_RANGE__REG   ACCEL_CONFIG_ADDR
#define BNO055_ACCEL_REV_ID__LEN   8
#define BNO055_ACCEL_REV_ID__MSK   0xFF
#define BNO055_ACCEL_REV_ID__POS   0
#define BNO055_ACCEL_REV_ID__REG   BNO055_ACCEL_REV_ID_ADDR
#define BNO055_ACCEL_REV_ID_ADDR   0x01
#define BNO055_ACCEL_SLEEP_DURN_0_5MS   0x05
#define BNO055_ACCEL_SLEEP_DURN_100MS   0x0D
#define BNO055_ACCEL_SLEEP_DURN_10MS   0x0A
#define BNO055_ACCEL_SLEEP_DURN_1MS   0x06
#define BNO055_ACCEL_SLEEP_DURN_1S   0x0F
#define BNO055_ACCEL_SLEEP_DURN_25MS   0x0B
#define BNO055_ACCEL_SLEEP_DURN_2MS   0x07
#define BNO055_ACCEL_SLEEP_DURN_4MS   0x08
#define BNO055_ACCEL_SLEEP_DURN_500MS   0x0E
#define BNO055_ACCEL_SLEEP_DURN_50MS   0x0C
#define BNO055_ACCEL_SLEEP_DURN_6MS   0x09
#define BNO055_ACCEL_SLEEP_DURN__LEN   4
#define BNO055_ACCEL_SLEEP_DURN__MSK   0X1E
#define BNO055_ACCEL_SLEEP_DURN__POS   1
#define BNO055_ACCEL_SLEEP_DURN__REG   ACCEL_SLEEP_CONFIG_ADDR
#define BNO055_ACCEL_SLEEP_MODE__LEN   1
#define BNO055_ACCEL_SLEEP_MODE__MSK   0X01
#define BNO055_ACCEL_SLEEP_MODE__POS   0
#define BNO055_ACCEL_SLEEP_MODE__REG   ACCEL_SLEEP_CONFIG_ADDR
#define BNO055_ACCEL_SLOW_NO_MOTION_DURN__LEN   6
#define BNO055_ACCEL_SLOW_NO_MOTION_DURN__MSK   0X7E
#define BNO055_ACCEL_SLOW_NO_MOTION_DURN__POS   1
#define BNO055_ACCEL_SLOW_NO_MOTION_DURN__REG   ACCEL_NO_MOTION_SET_ADDR
#define BNO055_ACCEL_SLOW_NO_MOTION_ENABLE__LEN   1
#define BNO055_ACCEL_SLOW_NO_MOTION_ENABLE__MSK   0X01
#define BNO055_ACCEL_SLOW_NO_MOTION_ENABLE__POS   0
#define BNO055_ACCEL_SLOW_NO_MOTION_ENABLE__REG   ACCEL_NO_MOTION_SET_ADDR
#define BNO055_ACCEL_SLOW_NO_MOTION_THRES__LEN   8
#define BNO055_ACCEL_SLOW_NO_MOTION_THRES__MSK   0XFF
#define BNO055_ACCEL_SLOW_NO_MOTION_THRES__POS   0
#define BNO055_ACCEL_SLOW_NO_MOTION_THRES__REG   ACCEL_NO_MOTION_THRES_ADDR
#define BNO055_ACCEL_UNIT__LEN   1
#define BNO055_ACCEL_UNIT__MSK   0X01
#define BNO055_ACCEL_UNIT__POS   0
#define BNO055_ACCEL_UNIT__REG   BNO055_UNIT_SEL_ADDR
#define BNO055_AXIS_MAP_CONFIG_ADDR   0X41
#define BNO055_AXIS_MAP_SIGN_ADDR   0X42
#define BNO055_BL_REV_ID__LEN   8
#define BNO055_BL_REV_ID__MSK   0xFF
#define BNO055_BL_REV_ID__POS   0
#define BNO055_BL_REV_ID__REG   BNO055_BL_REV_ID_ADDR
#define BNO055_BL_REV_ID_ADDR   0X06
#define BNO055_BUS_READ_FUNC (   dev_addr,
  reg_addr,
  reg_data,
  r_len 
)    bus_read(dev_addr, reg_addr, reg_data, r_len)
#define BNO055_BUS_WRITE_FUNC (   dev_addr,
  reg_addr,
  reg_data,
  wr_len 
)    bus_write(dev_addr, reg_addr, reg_data, wr_len)
#define BNO055_CALIB_STAT_ADDR   0X35
#define BNO055_CHIP_ID__LEN   8
#define BNO055_CHIP_ID__MSK   0xFF
#define BNO055_CHIP_ID__POS   0
#define BNO055_CHIP_ID__REG   BNO055_CHIP_ID_ADDR
#define BNO055_CHIP_ID_ADDR   0x00
#define BNO055_CLK_SRC__LEN   1
#define BNO055_CLK_SRC__MSK   0X80
#define BNO055_CLK_SRC__POS   7
#define BNO055_CLK_SRC__REG   BNO055_SYS_TRIGGER_ADDR
#define BNO055_DATA_OUTPUT_FORMAT__LEN   1
#define BNO055_DATA_OUTPUT_FORMAT__MSK   0X80
#define BNO055_DATA_OUTPUT_FORMAT__POS   7
#define BNO055_DATA_OUTPUT_FORMAT__REG   BNO055_UNIT_SEL_ADDR
#define BNO055_DATA_SELECT_ADDR   0X3C
#define BNO055_DELAY_FUNC (   delay_in_msec)    delay_func(delay_in_msec)
#define BNO055_DELAY_PARAM_TYPES   u32
#define BNO055_DELAY_RETURN_TYPE   void
#define BNO055_DOUBLE_ENABLE
#define BNO055_EIGHT_U8X   ((u8)8)
#define BNO055_EIGHTEEN_U8X   ((u8)18)
#define BNO055_ELEVEN_U8X   ((u8)11)
#define BNO055_EULER_H_LSB_ADDR   0X1A
#define BNO055_EULER_H_LSB_VALUEH__LEN   8
#define BNO055_EULER_H_LSB_VALUEH__MSK   0xFF
#define BNO055_EULER_H_LSB_VALUEH__POS   0
#define BNO055_EULER_H_LSB_VALUEH__REG   BNO055_EULER_H_LSB_ADDR
#define BNO055_EULER_H_MSB_ADDR   0X1B
#define BNO055_EULER_H_MSB_VALUEH__LEN   8
#define BNO055_EULER_H_MSB_VALUEH__MSK   0xFF
#define BNO055_EULER_H_MSB_VALUEH__POS   0
#define BNO055_EULER_H_MSB_VALUEH__REG   BNO055_EULER_H_MSB_ADDR
#define BNO055_EULER_P_LSB_ADDR   0X1E
#define BNO055_EULER_P_LSB_VALUEP__LEN   8
#define BNO055_EULER_P_LSB_VALUEP__MSK   0xFF
#define BNO055_EULER_P_LSB_VALUEP__POS   0
#define BNO055_EULER_P_LSB_VALUEP__REG   BNO055_EULER_P_LSB_ADDR
#define BNO055_EULER_P_MSB_ADDR   0X1F
#define BNO055_EULER_P_MSB_VALUEP__LEN   8
#define BNO055_EULER_P_MSB_VALUEP__MSK   0xFF
#define BNO055_EULER_P_MSB_VALUEP__POS   0
#define BNO055_EULER_P_MSB_VALUEP__REG   BNO055_EULER_P_MSB_ADDR
#define BNO055_EULER_R_LSB_ADDR   0X1C
#define BNO055_EULER_R_LSB_VALUER__LEN   8
#define BNO055_EULER_R_LSB_VALUER__MSK   0xFF
#define BNO055_EULER_R_LSB_VALUER__POS   0
#define BNO055_EULER_R_LSB_VALUER__REG   BNO055_EULER_R_LSB_ADDR
#define BNO055_EULER_R_MSB_ADDR   0X1D
#define BNO055_EULER_R_MSB_VALUER__LEN   8
#define BNO055_EULER_R_MSB_VALUER__MSK   0xFF
#define BNO055_EULER_R_MSB_VALUER__POS   0
#define BNO055_EULER_R_MSB_VALUER__REG   BNO055_EULER_R_MSB_ADDR
#define BNO055_EULER_UNIT__LEN   1
#define BNO055_EULER_UNIT__MSK   0X04
#define BNO055_EULER_UNIT__POS   2
#define BNO055_EULER_UNIT__REG   BNO055_UNIT_SEL_ADDR
#define BNO055_FIVE_U8X   ((u8)5)
#define BNO055_FLOAT_ENABLE
#define BNO055_FOUR_U8X   ((u8)4)
#define BNO055_GET_BITSLICE (   regvar,
  bitname 
)    ((regvar & bitname##__MSK) >> bitname##__POS)
#define BNO055_GRAVITY_DATA_X_LSB_ADDR   0X2E
#define BNO055_GRAVITY_DATA_X_LSB_VALUEX__LEN   8
#define BNO055_GRAVITY_DATA_X_LSB_VALUEX__MSK   0xFF
#define BNO055_GRAVITY_DATA_X_LSB_VALUEX__POS   0
#define BNO055_GRAVITY_DATA_X_LSB_VALUEX__REG   BNO055_GRAVITY_DATA_X_LSB_ADDR
#define BNO055_GRAVITY_DATA_X_MSB_ADDR   0X2F
#define BNO055_GRAVITY_DATA_X_MSB_VALUEX__LEN   8
#define BNO055_GRAVITY_DATA_X_MSB_VALUEX__MSK   0xFF
#define BNO055_GRAVITY_DATA_X_MSB_VALUEX__POS   0
#define BNO055_GRAVITY_DATA_X_MSB_VALUEX__REG   BNO055_GRAVITY_DATA_X_MSB_ADDR
#define BNO055_GRAVITY_DATA_Y_LSB_ADDR   0X30
#define BNO055_GRAVITY_DATA_Y_LSB_VALUEY__LEN   8
#define BNO055_GRAVITY_DATA_Y_LSB_VALUEY__MSK   0xFF
#define BNO055_GRAVITY_DATA_Y_LSB_VALUEY__POS   0
#define BNO055_GRAVITY_DATA_Y_LSB_VALUEY__REG   BNO055_GRAVITY_DATA_Y_LSB_ADDR
#define BNO055_GRAVITY_DATA_Y_MSB_ADDR   0X31
#define BNO055_GRAVITY_DATA_Y_MSB_VALUEY__LEN   8
#define BNO055_GRAVITY_DATA_Y_MSB_VALUEY__MSK   0xFF
#define BNO055_GRAVITY_DATA_Y_MSB_VALUEY__POS   0
#define BNO055_GRAVITY_DATA_Y_MSB_VALUEY__REG   BNO055_GRAVITY_DATA_Y_MSB_ADDR
#define BNO055_GRAVITY_DATA_Z_LSB_ADDR   0X32
#define BNO055_GRAVITY_DATA_Z_LSB_VALUEZ__LEN   8
#define BNO055_GRAVITY_DATA_Z_LSB_VALUEZ__MSK   0xFF
#define BNO055_GRAVITY_DATA_Z_LSB_VALUEZ__POS   0
#define BNO055_GRAVITY_DATA_Z_LSB_VALUEZ__REG   BNO055_GRAVITY_DATA_Z_LSB_ADDR
#define BNO055_GRAVITY_DATA_Z_MSB_ADDR   0X33
#define BNO055_GRAVITY_DATA_Z_MSB_VALUEZ__LEN   8
#define BNO055_GRAVITY_DATA_Z_MSB_VALUEZ__MSK   0xFF
#define BNO055_GRAVITY_DATA_Z_MSB_VALUEZ__POS   0
#define BNO055_GRAVITY_DATA_Z_MSB_VALUEZ__REG   BNO055_GRAVITY_DATA_Z_MSB_ADDR
#define BNO055_GYRO_10MS_AUTOSLPDUR   0x04
#define BNO055_GYRO_15MS_AUTOSLPDUR   0x05
#define BNO055_GYRO_20MS_AUTOSLPDUR   0x06
#define BNO055_GYRO_40MS_AUTOSLPDUR   0x07
#define BNO055_GYRO_4MS_AUTOSLPDUR   0x01
#define BNO055_GYRO_5MS_AUTOSLPDUR   0x02
#define BNO055_GYRO_8MS_AUTOSLPDUR   0x03
#define BNO055_GYRO_ANY_MOTION_FILTER__LEN   1
#define BNO055_GYRO_ANY_MOTION_FILTER__MSK   0X40
#define BNO055_GYRO_ANY_MOTION_FILTER__POS   6
#define BNO055_GYRO_ANY_MOTION_FILTER__REG   GYRO_INTR_SETING_ADDR
#define BNO055_GYRO_ANY_MOTION_INTR__LEN   1
#define BNO055_GYRO_ANY_MOTION_INTR__MSK   0X04
#define BNO055_GYRO_ANY_MOTION_INTR__POS   2
#define BNO055_GYRO_ANY_MOTION_INTR__REG   INT_ADDR
#define BNO055_GYRO_ANY_MOTION_INTR_MASK__LEN   1
#define BNO055_GYRO_ANY_MOTION_INTR_MASK__MSK   0X04
#define BNO055_GYRO_ANY_MOTION_INTR_MASK__POS   2
#define BNO055_GYRO_ANY_MOTION_INTR_MASK__REG   INT_MASK_ADDR
#define BNO055_GYRO_ANY_MOTION_THRES__LEN   7
#define BNO055_GYRO_ANY_MOTION_THRES__MSK   0X7F
#define BNO055_GYRO_ANY_MOTION_THRES__POS   0
#define BNO055_GYRO_ANY_MOTION_THRES__REG   GYRO_ANY_MOTION_THRES_ADDR
#define BNO055_GYRO_ANY_MOTION_X_AXIS   0
#define BNO055_GYRO_ANY_MOTION_X_AXIS__LEN   1
#define BNO055_GYRO_ANY_MOTION_X_AXIS__MSK   0X01
#define BNO055_GYRO_ANY_MOTION_X_AXIS__POS   0
#define BNO055_GYRO_ANY_MOTION_X_AXIS__REG   GYRO_INTR_SETING_ADDR
#define BNO055_GYRO_ANY_MOTION_Y_AXIS   1
#define BNO055_GYRO_ANY_MOTION_Y_AXIS__LEN   1
#define BNO055_GYRO_ANY_MOTION_Y_AXIS__MSK   0X02
#define BNO055_GYRO_ANY_MOTION_Y_AXIS__POS   1
#define BNO055_GYRO_ANY_MOTION_Y_AXIS__REG   GYRO_INTR_SETING_ADDR
#define BNO055_GYRO_ANY_MOTION_Z_AXIS   2
#define BNO055_GYRO_ANY_MOTION_Z_AXIS__LEN   1
#define BNO055_GYRO_ANY_MOTION_Z_AXIS__MSK   0X04
#define BNO055_GYRO_ANY_MOTION_Z_AXIS__POS   2
#define BNO055_GYRO_ANY_MOTION_Z_AXIS__REG   GYRO_INTR_SETING_ADDR
#define BNO055_GYRO_AUTO_SLEEP_DURN__LEN   3
#define BNO055_GYRO_AUTO_SLEEP_DURN__MSK   0X38
#define BNO055_GYRO_AUTO_SLEEP_DURN__POS   3
#define BNO055_GYRO_AUTO_SLEEP_DURN__REG   GYRO_SLEEP_CONFIG_ADDR
#define BNO055_GYRO_AWAKE_DURN__LEN   2
#define BNO055_GYRO_AWAKE_DURN__MSK   0X0C
#define BNO055_GYRO_AWAKE_DURN__POS   2
#define BNO055_GYRO_AWAKE_DURN__REG   GYRO_ANY_MOTION_SET_ADDR
#define BNO055_GYRO_BW__LEN   3
#define BNO055_GYRO_BW__MSK   0X38
#define BNO055_GYRO_BW__POS   3
#define BNO055_GYRO_BW__REG   GYRO_CONFIG_ADDR
#define BNO055_GYRO_CALIB_STAT__LEN   2
#define BNO055_GYRO_CALIB_STAT__MSK   0X30
#define BNO055_GYRO_CALIB_STAT__POS   4
#define BNO055_GYRO_CALIB_STAT__REG   BNO055_CALIB_STAT_ADDR
#define BNO055_GYRO_DATA_X_LSB_ADDR   0X14
#define BNO055_GYRO_DATA_X_LSB_VALUEX__LEN   8
#define BNO055_GYRO_DATA_X_LSB_VALUEX__MSK   0xFF
#define BNO055_GYRO_DATA_X_LSB_VALUEX__POS   0
#define BNO055_GYRO_DATA_X_LSB_VALUEX__REG   BNO055_GYRO_DATA_X_LSB_ADDR
#define BNO055_GYRO_DATA_X_MSB_ADDR   0X15
#define BNO055_GYRO_DATA_X_MSB_VALUEX__LEN   8
#define BNO055_GYRO_DATA_X_MSB_VALUEX__MSK   0xFF
#define BNO055_GYRO_DATA_X_MSB_VALUEX__POS   0
#define BNO055_GYRO_DATA_X_MSB_VALUEX__REG   BNO055_GYRO_DATA_X_MSB_ADDR
#define BNO055_GYRO_DATA_Y_LSB_ADDR   0X16
#define BNO055_GYRO_DATA_Y_LSB_VALUEY__LEN   8
#define BNO055_GYRO_DATA_Y_LSB_VALUEY__MSK   0xFF
#define BNO055_GYRO_DATA_Y_LSB_VALUEY__POS   0
#define BNO055_GYRO_DATA_Y_LSB_VALUEY__REG   BNO055_GYRO_DATA_Y_LSB_ADDR
#define BNO055_GYRO_DATA_Y_MSB_ADDR   0X17
#define BNO055_GYRO_DATA_Y_MSB_VALUEY__LEN   8
#define BNO055_GYRO_DATA_Y_MSB_VALUEY__MSK   0xFF
#define BNO055_GYRO_DATA_Y_MSB_VALUEY__POS   0
#define BNO055_GYRO_DATA_Y_MSB_VALUEY__REG   BNO055_GYRO_DATA_Y_MSB_ADDR
#define BNO055_GYRO_DATA_Z_LSB_ADDR   0X18
#define BNO055_GYRO_DATA_Z_LSB_VALUEZ__LEN   8
#define BNO055_GYRO_DATA_Z_LSB_VALUEZ__MSK   0xFF
#define BNO055_GYRO_DATA_Z_LSB_VALUEZ__POS   0
#define BNO055_GYRO_DATA_Z_LSB_VALUEZ__REG   BNO055_GYRO_DATA_Z_LSB_ADDR
#define BNO055_GYRO_DATA_Z_MSB_ADDR   0X19
#define BNO055_GYRO_DATA_Z_MSB_VALUEZ__LEN   8
#define BNO055_GYRO_DATA_Z_MSB_VALUEZ__MSK   0xFF
#define BNO055_GYRO_DATA_Z_MSB_VALUEZ__POS   0
#define BNO055_GYRO_DATA_Z_MSB_VALUEZ__REG   BNO055_GYRO_DATA_Z_MSB_ADDR
#define BNO055_GYRO_HIGHRATE_FILTER__LEN   1
#define BNO055_GYRO_HIGHRATE_FILTER__MSK   0X80
#define BNO055_GYRO_HIGHRATE_FILTER__POS   7
#define BNO055_GYRO_HIGHRATE_FILTER__REG   GYRO_INTR_SETING_ADDR
#define BNO055_GYRO_HIGHRATE_INTR__LEN   1
#define BNO055_GYRO_HIGHRATE_INTR__MSK   0X08
#define BNO055_GYRO_HIGHRATE_INTR__POS   3
#define BNO055_GYRO_HIGHRATE_INTR__REG   INT_ADDR
#define BNO055_GYRO_HIGHRATE_INTR_MASK__LEN   1
#define BNO055_GYRO_HIGHRATE_INTR_MASK__MSK   0X08
#define BNO055_GYRO_HIGHRATE_INTR_MASK__POS   3
#define BNO055_GYRO_HIGHRATE_INTR_MASK__REG   INT_MASK_ADDR
#define BNO055_GYRO_HIGHRATE_X_AXIS   0
#define BNO055_GYRO_HIGHRATE_X_AXIS__LEN   1
#define BNO055_GYRO_HIGHRATE_X_AXIS__MSK   0X08
#define BNO055_GYRO_HIGHRATE_X_AXIS__POS   3
#define BNO055_GYRO_HIGHRATE_X_AXIS__REG   GYRO_INTR_SETING_ADDR
#define BNO055_GYRO_HIGHRATE_X_DURN__LEN   8
#define BNO055_GYRO_HIGHRATE_X_DURN__MSK   0XFF
#define BNO055_GYRO_HIGHRATE_X_DURN__POS   0
#define BNO055_GYRO_HIGHRATE_X_DURN__REG   GYRO_DURN_X_ADDR
#define BNO055_GYRO_HIGHRATE_X_HYST__LEN   2
#define BNO055_GYRO_HIGHRATE_X_HYST__MSK   0X60
#define BNO055_GYRO_HIGHRATE_X_HYST__POS   5
#define BNO055_GYRO_HIGHRATE_X_HYST__REG   GYRO_HIGHRATE_X_SET_ADDR
#define BNO055_GYRO_HIGHRATE_X_THRES__LEN   5
#define BNO055_GYRO_HIGHRATE_X_THRES__MSK   0X1F
#define BNO055_GYRO_HIGHRATE_X_THRES__POS   0
#define BNO055_GYRO_HIGHRATE_X_THRES__REG   GYRO_HIGHRATE_X_SET_ADDR
#define BNO055_GYRO_HIGHRATE_Y_AXIS   1
#define BNO055_GYRO_HIGHRATE_Y_AXIS__LEN   1
#define BNO055_GYRO_HIGHRATE_Y_AXIS__MSK   0X10
#define BNO055_GYRO_HIGHRATE_Y_AXIS__POS   4
#define BNO055_GYRO_HIGHRATE_Y_AXIS__REG   GYRO_INTR_SETING_ADDR
#define BNO055_GYRO_HIGHRATE_Y_DURN__LEN   8
#define BNO055_GYRO_HIGHRATE_Y_DURN__MSK   0XFF
#define BNO055_GYRO_HIGHRATE_Y_DURN__POS   0
#define BNO055_GYRO_HIGHRATE_Y_DURN__REG   GYRO_DURN_Y_ADDR
#define BNO055_GYRO_HIGHRATE_Y_HYST__LEN   2
#define BNO055_GYRO_HIGHRATE_Y_HYST__MSK   0X60
#define BNO055_GYRO_HIGHRATE_Y_HYST__POS   5
#define BNO055_GYRO_HIGHRATE_Y_HYST__REG   GYRO_HIGHRATE_Y_SET_ADDR
#define BNO055_GYRO_HIGHRATE_Y_THRES__LEN   5
#define BNO055_GYRO_HIGHRATE_Y_THRES__MSK   0X1F
#define BNO055_GYRO_HIGHRATE_Y_THRES__POS   0
#define BNO055_GYRO_HIGHRATE_Y_THRES__REG   GYRO_HIGHRATE_Y_SET_ADDR
#define BNO055_GYRO_HIGHRATE_Z_AXIS   2
#define BNO055_GYRO_HIGHRATE_Z_AXIS__LEN   1
#define BNO055_GYRO_HIGHRATE_Z_AXIS__MSK   0X20
#define BNO055_GYRO_HIGHRATE_Z_AXIS__POS   5
#define BNO055_GYRO_HIGHRATE_Z_AXIS__REG   GYRO_INTR_SETING_ADDR
#define BNO055_GYRO_HIGHRATE_Z_DURN__LEN   8
#define BNO055_GYRO_HIGHRATE_Z_DURN__MSK   0XFF
#define BNO055_GYRO_HIGHRATE_Z_DURN__POS   0
#define BNO055_GYRO_HIGHRATE_Z_DURN__REG   GYRO_DURN_Z_ADDR
#define BNO055_GYRO_HIGHRATE_Z_HYST__LEN   2
#define BNO055_GYRO_HIGHRATE_Z_HYST__MSK   0X60
#define BNO055_GYRO_HIGHRATE_Z_HYST__POS   5
#define BNO055_GYRO_HIGHRATE_Z_HYST__REG   GYRO_HIGHRATE_Z_SET_ADDR
#define BNO055_GYRO_HIGHRATE_Z_THRES__LEN   5
#define BNO055_GYRO_HIGHRATE_Z_THRES__MSK   0X1F
#define BNO055_GYRO_HIGHRATE_Z_THRES__POS   0
#define BNO055_GYRO_HIGHRATE_Z_THRES__REG   GYRO_HIGHRATE_Z_SET_ADDR
#define BNO055_GYRO_No_AUTOSLPDUR   0x00
#define BNO055_GYRO_OFFSET_X_LSB__LEN   8
#define BNO055_GYRO_OFFSET_X_LSB__MSK   0XFF
#define BNO055_GYRO_OFFSET_X_LSB__POS   0
#define BNO055_GYRO_OFFSET_X_LSB__REG   GYRO_OFFSET_X_LSB_ADDR
#define BNO055_GYRO_OFFSET_X_MSB__LEN   8
#define BNO055_GYRO_OFFSET_X_MSB__MSK   0XFF
#define BNO055_GYRO_OFFSET_X_MSB__POS   0
#define BNO055_GYRO_OFFSET_X_MSB__REG   GYRO_OFFSET_X_MSB_ADDR
#define BNO055_GYRO_OFFSET_Y_LSB__LEN   8
#define BNO055_GYRO_OFFSET_Y_LSB__MSK   0XFF
#define BNO055_GYRO_OFFSET_Y_LSB__POS   0
#define BNO055_GYRO_OFFSET_Y_LSB__REG   GYRO_OFFSET_Y_LSB_ADDR
#define BNO055_GYRO_OFFSET_Y_MSB__LEN   8
#define BNO055_GYRO_OFFSET_Y_MSB__MSK   0XFF
#define BNO055_GYRO_OFFSET_Y_MSB__POS   0
#define BNO055_GYRO_OFFSET_Y_MSB__REG   GYRO_OFFSET_Y_MSB_ADDR
#define BNO055_GYRO_OFFSET_Z_LSB__LEN   8
#define BNO055_GYRO_OFFSET_Z_LSB__MSK   0XFF
#define BNO055_GYRO_OFFSET_Z_LSB__POS   0
#define BNO055_GYRO_OFFSET_Z_LSB__REG   GYRO_OFFSET_Z_LSB_ADDR
#define BNO055_GYRO_OFFSET_Z_MSB__LEN   8
#define BNO055_GYRO_OFFSET_Z_MSB__MSK   0XFF
#define BNO055_GYRO_OFFSET_Z_MSB__POS   0
#define BNO055_GYRO_OFFSET_Z_MSB__REG   GYRO_OFFSET_Z_MSB_ADDR
#define BNO055_GYRO_POWER_MODE__LEN   3
#define BNO055_GYRO_POWER_MODE__MSK   0X07
#define BNO055_GYRO_POWER_MODE__POS   0
#define BNO055_GYRO_POWER_MODE__REG   GYRO_MODE_CONFIG_ADDR
#define BNO055_GYRO_RANGE__LEN   3
#define BNO055_GYRO_RANGE__MSK   0X07
#define BNO055_GYRO_RANGE__POS   0
#define BNO055_GYRO_RANGE__REG   GYRO_CONFIG_ADDR
#define BNO055_GYRO_REV_ID__LEN   8
#define BNO055_GYRO_REV_ID__MSK   0xFF
#define BNO055_GYRO_REV_ID__POS   0
#define BNO055_GYRO_REV_ID__REG   BNO055_GYRO_REV_ID_ADDR
#define BNO055_GYRO_REV_ID_ADDR   0x03
#define BNO055_GYRO_SLEEP_DURN__LEN   3
#define BNO055_GYRO_SLEEP_DURN__MSK   0X07
#define BNO055_GYRO_SLEEP_DURN__POS   0
#define BNO055_GYRO_SLEEP_DURN__REG   GYRO_SLEEP_CONFIG_ADDR
#define BNO055_GYRO_SLOPE_SAMPLES__LEN   2
#define BNO055_GYRO_SLOPE_SAMPLES__MSK   0X03
#define BNO055_GYRO_SLOPE_SAMPLES__POS   0
#define BNO055_GYRO_SLOPE_SAMPLES__REG   GYRO_ANY_MOTION_SET_ADDR
#define BNO055_GYRO_UNIT__LEN   1
#define BNO055_GYRO_UNIT__MSK   0X02
#define BNO055_GYRO_UNIT__POS   1
#define BNO055_GYRO_UNIT__REG   BNO055_UNIT_SEL_ADDR
#define BNO055_I2C_ADDR1   0x28
#define BNO055_I2C_ADDR2   0x29
#define BNO055_INTR_RST__LEN   1
#define BNO055_INTR_RST__MSK   0X40
#define BNO055_INTR_RST__POS   6
#define BNO055_INTR_RST__REG   BNO055_SYS_TRIGGER_ADDR
#define BNO055_INTR_STAT_ACCEL_ANY_MOTION__LEN   1
#define BNO055_INTR_STAT_ACCEL_ANY_MOTION__MSK   0X40
#define BNO055_INTR_STAT_ACCEL_ANY_MOTION__POS   6
#define BNO055_INTR_STAT_ACCEL_ANY_MOTION__REG   BNO055_INTR_STAT_ADDR
#define BNO055_INTR_STAT_ACCEL_HIGH_G__LEN   1
#define BNO055_INTR_STAT_ACCEL_HIGH_G__MSK   0X20
#define BNO055_INTR_STAT_ACCEL_HIGH_G__POS   5
#define BNO055_INTR_STAT_ACCEL_HIGH_G__REG   BNO055_INTR_STAT_ADDR
#define BNO055_INTR_STAT_ACCEL_NO_MOTION__LEN   1
#define BNO055_INTR_STAT_ACCEL_NO_MOTION__MSK   0X80
#define BNO055_INTR_STAT_ACCEL_NO_MOTION__POS   7
#define BNO055_INTR_STAT_ACCEL_NO_MOTION__REG   BNO055_INTR_STAT_ADDR
#define BNO055_INTR_STAT_ADDR   0X37
#define BNO055_INTR_STAT_GYRO_ANY_MOTION__LEN   1
#define BNO055_INTR_STAT_GYRO_ANY_MOTION__MSK   0X04
#define BNO055_INTR_STAT_GYRO_ANY_MOTION__POS   2
#define BNO055_INTR_STAT_GYRO_ANY_MOTION__REG   BNO055_INTR_STAT_ADDR
#define BNO055_INTR_STAT_GYRO_HIGHRATE__LEN   1
#define BNO055_INTR_STAT_GYRO_HIGHRATE__MSK   0X08
#define BNO055_INTR_STAT_GYRO_HIGHRATE__POS   3
#define BNO055_INTR_STAT_GYRO_HIGHRATE__REG   BNO055_INTR_STAT_ADDR
#define BNO055_LINEAR_ACCEL_DATA_X_LSB_ADDR   0X28
#define BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX__LEN   8
#define BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX__MSK   0xFF
#define BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX__POS   0
#define BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX__REG   BNO055_LINEAR_ACCEL_DATA_X_LSB_ADDR
#define BNO055_LINEAR_ACCEL_DATA_X_MSB_ADDR   0X29
#define BNO055_LINEAR_ACCEL_DATA_X_MSB_VALUEX__LEN   8
#define BNO055_LINEAR_ACCEL_DATA_X_MSB_VALUEX__MSK   0xFF
#define BNO055_LINEAR_ACCEL_DATA_X_MSB_VALUEX__POS   0
#define BNO055_LINEAR_ACCEL_DATA_X_MSB_VALUEX__REG   BNO055_LINEAR_ACCEL_DATA_X_MSB_ADDR
#define BNO055_LINEAR_ACCEL_DATA_Y_LSB_ADDR   0X2A
#define BNO055_LINEAR_ACCEL_DATA_Y_LSB_VALUEY__LEN   8
#define BNO055_LINEAR_ACCEL_DATA_Y_LSB_VALUEY__MSK   0xFF
#define BNO055_LINEAR_ACCEL_DATA_Y_LSB_VALUEY__POS   0
#define BNO055_LINEAR_ACCEL_DATA_Y_LSB_VALUEY__REG   BNO055_LINEAR_ACCEL_DATA_Y_LSB_ADDR
#define BNO055_LINEAR_ACCEL_DATA_Y_MSB_ADDR   0X2B
#define BNO055_LINEAR_ACCEL_DATA_Y_MSB_VALUEY__LEN   8
#define BNO055_LINEAR_ACCEL_DATA_Y_MSB_VALUEY__MSK   0xFF
#define BNO055_LINEAR_ACCEL_DATA_Y_MSB_VALUEY__POS   0
#define BNO055_LINEAR_ACCEL_DATA_Y_MSB_VALUEY__REG   BNO055_LINEAR_ACCEL_DATA_Y_MSB_ADDR
#define BNO055_LINEAR_ACCEL_DATA_Z_LSB_ADDR   0X2C
#define BNO055_LINEAR_ACCEL_DATA_Z_LSB_VALUEZ__LEN   8
#define BNO055_LINEAR_ACCEL_DATA_Z_LSB_VALUEZ__MSK   0xFF
#define BNO055_LINEAR_ACCEL_DATA_Z_LSB_VALUEZ__POS   0
#define BNO055_LINEAR_ACCEL_DATA_Z_LSB_VALUEZ__REG   BNO055_LINEAR_ACCEL_DATA_Z_LSB_ADDR
#define BNO055_LINEAR_ACCEL_DATA_Z_MSB_ADDR   0X2D
#define BNO055_LINEAR_ACCEL_DATA_Z_MSB_VALUEZ__LEN   8
#define BNO055_LINEAR_ACCEL_DATA_Z_MSB_VALUEZ__MSK   0xFF
#define BNO055_LINEAR_ACCEL_DATA_Z_MSB_VALUEZ__POS   0
#define BNO055_LINEAR_ACCEL_DATA_Z_MSB_VALUEZ__REG   BNO055_LINEAR_ACCEL_DATA_Z_MSB_ADDR
#define BNO055_MAG_CALIB_STAT__LEN   2
#define BNO055_MAG_CALIB_STAT__MSK   0X03
#define BNO055_MAG_CALIB_STAT__POS   0
#define BNO055_MAG_CALIB_STAT__REG   BNO055_CALIB_STAT_ADDR
#define BNO055_MAG_DATA_OUTPUT_RATE__LEN   3
#define BNO055_MAG_DATA_OUTPUT_RATE__MSK   0X07
#define BNO055_MAG_DATA_OUTPUT_RATE__POS   0
#define BNO055_MAG_DATA_OUTPUT_RATE__REG   MAG_CONFIG_ADDR
#define BNO055_MAG_DATA_X_LSB_ADDR   0X0E
#define BNO055_MAG_DATA_X_LSB_VALUEX__LEN   8
#define BNO055_MAG_DATA_X_LSB_VALUEX__MSK   0xFF
#define BNO055_MAG_DATA_X_LSB_VALUEX__POS   0
#define BNO055_MAG_DATA_X_LSB_VALUEX__REG   BNO055_MAG_DATA_X_LSB_ADDR
#define BNO055_MAG_DATA_X_MSB_ADDR   0X0F
#define BNO055_MAG_DATA_X_MSB_VALUEX__LEN   8
#define BNO055_MAG_DATA_X_MSB_VALUEX__MSK   0xFF
#define BNO055_MAG_DATA_X_MSB_VALUEX__POS   0
#define BNO055_MAG_DATA_X_MSB_VALUEX__REG   BNO055_MAG_DATA_X_MSB_ADDR
#define BNO055_MAG_DATA_Y_LSB_ADDR   0X10
#define BNO055_MAG_DATA_Y_LSB_VALUEY__LEN   8
#define BNO055_MAG_DATA_Y_LSB_VALUEY__MSK   0xFF
#define BNO055_MAG_DATA_Y_LSB_VALUEY__POS   0
#define BNO055_MAG_DATA_Y_LSB_VALUEY__REG   BNO055_MAG_DATA_Y_LSB_ADDR
#define BNO055_MAG_DATA_Y_MSB_ADDR   0X11
#define BNO055_MAG_DATA_Y_MSB_VALUEY__LEN   8
#define BNO055_MAG_DATA_Y_MSB_VALUEY__MSK   0xFF
#define BNO055_MAG_DATA_Y_MSB_VALUEY__POS   0
#define BNO055_MAG_DATA_Y_MSB_VALUEY__REG   BNO055_MAG_DATA_Y_MSB_ADDR
#define BNO055_MAG_DATA_Z_LSB_ADDR   0X12
#define BNO055_MAG_DATA_Z_LSB_VALUEZ__LEN   8
#define BNO055_MAG_DATA_Z_LSB_VALUEZ__MSK   0xFF
#define BNO055_MAG_DATA_Z_LSB_VALUEZ__POS   0
#define BNO055_MAG_DATA_Z_LSB_VALUEZ__REG   BNO055_MAG_DATA_Z_LSB_ADDR
#define BNO055_MAG_DATA_Z_MSB_ADDR   0X13
#define BNO055_MAG_DATA_Z_MSB_VALUEZ__LEN   8
#define BNO055_MAG_DATA_Z_MSB_VALUEZ__MSK   0xFF
#define BNO055_MAG_DATA_Z_MSB_VALUEZ__POS   0
#define BNO055_MAG_DATA_Z_MSB_VALUEZ__REG   BNO055_MAG_DATA_Z_MSB_ADDR
#define BNO055_MAG_OFFSET_X_LSB__LEN   8
#define BNO055_MAG_OFFSET_X_LSB__MSK   0XFF
#define BNO055_MAG_OFFSET_X_LSB__POS   0
#define BNO055_MAG_OFFSET_X_LSB__REG   MAG_OFFSET_X_LSB_ADDR
#define BNO055_MAG_OFFSET_X_MSB__LEN   8
#define BNO055_MAG_OFFSET_X_MSB__MSK   0XFF
#define BNO055_MAG_OFFSET_X_MSB__POS   0
#define BNO055_MAG_OFFSET_X_MSB__REG   MAG_OFFSET_X_MSB_ADDR
#define BNO055_MAG_OFFSET_Y_LSB__LEN   8
#define BNO055_MAG_OFFSET_Y_LSB__MSK   0XFF
#define BNO055_MAG_OFFSET_Y_LSB__POS   0
#define BNO055_MAG_OFFSET_Y_LSB__REG   MAG_OFFSET_Y_LSB_ADDR
#define BNO055_MAG_OFFSET_Y_MSB__LEN   8
#define BNO055_MAG_OFFSET_Y_MSB__MSK   0XFF
#define BNO055_MAG_OFFSET_Y_MSB__POS   0
#define BNO055_MAG_OFFSET_Y_MSB__REG   MAG_OFFSET_Y_MSB_ADDR
#define BNO055_MAG_OFFSET_Z_LSB__LEN   8
#define BNO055_MAG_OFFSET_Z_LSB__MSK   0XFF
#define BNO055_MAG_OFFSET_Z_LSB__POS   0
#define BNO055_MAG_OFFSET_Z_LSB__REG   MAG_OFFSET_Z_LSB_ADDR
#define BNO055_MAG_OFFSET_Z_MSB__LEN   8
#define BNO055_MAG_OFFSET_Z_MSB__MSK   0XFF
#define BNO055_MAG_OFFSET_Z_MSB__POS   0
#define BNO055_MAG_OFFSET_Z_MSB__REG   MAG_OFFSET_Z_MSB_ADDR
#define BNO055_MAG_OPERATION_MODE__LEN   2
#define BNO055_MAG_OPERATION_MODE__MSK   0X18
#define BNO055_MAG_OPERATION_MODE__POS   3
#define BNO055_MAG_OPERATION_MODE__REG   MAG_CONFIG_ADDR
#define BNO055_MAG_POWER_MODE__LEN   2
#define BNO055_MAG_POWER_MODE__MSK   0X60
#define BNO055_MAG_POWER_MODE__POS   5
#define BNO055_MAG_POWER_MODE__REG   MAG_CONFIG_ADDR
#define BNO055_MAG_RADIUS_LSB__LEN   8
#define BNO055_MAG_RADIUS_LSB__MSK   0XFF
#define BNO055_MAG_RADIUS_LSB__POS   0
#define BNO055_MAG_RADIUS_LSB__REG   MAG_RADIUS_LSB_ADDR
#define BNO055_MAG_RADIUS_MSB__LEN   8
#define BNO055_MAG_RADIUS_MSB__MSK   0XFF
#define BNO055_MAG_RADIUS_MSB__POS   0
#define BNO055_MAG_RADIUS_MSB__REG   MAG_RADIUS_MSB_ADDR
#define BNO055_MAG_REV_ID__LEN   8
#define BNO055_MAG_REV_ID__MSK   0xFF
#define BNO055_MAG_REV_ID__POS   0
#define BNO055_MAG_REV_ID__REG   BNO055_MAG_REV_ID_ADDR
#define BNO055_MAG_REV_ID_ADDR   0x02
#define BNO055_MAG_SLEEP_DURN__LEN   4
#define BNO055_MAG_SLEEP_DURN__MSK   0X1E
#define BNO055_MAG_SLEEP_DURN__POS   1
#define BNO055_MAG_SLEEP_DURN__REG   MAG_SLEEP_CONFIG_ADDR
#define BNO055_MAG_SLEEP_MODE__LEN   1
#define BNO055_MAG_SLEEP_MODE__MSK   0X01
#define BNO055_MAG_SLEEP_MODE__POS   0
#define BNO055_MAG_SLEEP_MODE__REG   MAG_SLEEP_CONFIG_ADDR
#define BNO055_MDELAY_DATA_TYPE   u32
#define BNO055_ONE_U8X   ((u8)1)
#define BNO055_OPERATION_MODE__LEN   4
#define BNO055_OPERATION_MODE__MSK   0X0F
#define BNO055_OPERATION_MODE__POS   0
#define BNO055_OPERATION_MODE__REG   BNO055_OPR_MODE_ADDR
#define BNO055_OPR_MODE_ADDR   0X3D
#define BNO055_PAGE_ID__LEN   8
#define BNO055_PAGE_ID__MSK   0xFF
#define BNO055_PAGE_ID__POS   0
#define BNO055_PAGE_ID__REG   BNO055_PAGE_ID_ADDR
#define BNO055_PAGE_ID_ADDR   0X07
#define BNO055_POWER_MODE__LEN   2
#define BNO055_POWER_MODE__MSK   0X03
#define BNO055_POWER_MODE__POS   0
#define BNO055_POWER_MODE__REG   BNO055_PWR_MODE_ADDR
#define BNO055_PWR_MODE_ADDR   0X3E
#define BNO055_QUATERNION_DATA_W_LSB_ADDR   0X20
#define BNO055_QUATERNION_DATA_W_LSB_VALUEW__LEN   8
#define BNO055_QUATERNION_DATA_W_LSB_VALUEW__MSK   0xFF
#define BNO055_QUATERNION_DATA_W_LSB_VALUEW__POS   0
#define BNO055_QUATERNION_DATA_W_LSB_VALUEW__REG   BNO055_QUATERNION_DATA_W_LSB_ADDR
#define BNO055_QUATERNION_DATA_W_MSB_ADDR   0X21
#define BNO055_QUATERNION_DATA_W_MSB_VALUEW__LEN   8
#define BNO055_QUATERNION_DATA_W_MSB_VALUEW__MSK   0xFF
#define BNO055_QUATERNION_DATA_W_MSB_VALUEW__POS   0
#define BNO055_QUATERNION_DATA_W_MSB_VALUEW__REG   BNO055_QUATERNION_DATA_W_MSB_ADDR
#define BNO055_QUATERNION_DATA_X_LSB_ADDR   0X22
#define BNO055_QUATERNION_DATA_X_LSB_VALUEX__LEN   8
#define BNO055_QUATERNION_DATA_X_LSB_VALUEX__MSK   0xFF
#define BNO055_QUATERNION_DATA_X_LSB_VALUEX__POS   0
#define BNO055_QUATERNION_DATA_X_LSB_VALUEX__REG   BNO055_QUATERNION_DATA_X_LSB_ADDR
#define BNO055_QUATERNION_DATA_X_MSB_ADDR   0X23
#define BNO055_QUATERNION_DATA_X_MSB_VALUEX__LEN   8
#define BNO055_QUATERNION_DATA_X_MSB_VALUEX__MSK   0xFF
#define BNO055_QUATERNION_DATA_X_MSB_VALUEX__POS   0
#define BNO055_QUATERNION_DATA_X_MSB_VALUEX__REG   BNO055_QUATERNION_DATA_X_MSB_ADDR
#define BNO055_QUATERNION_DATA_Y_LSB_ADDR   0X24
#define BNO055_QUATERNION_DATA_Y_LSB_VALUEY__LEN   8
#define BNO055_QUATERNION_DATA_Y_LSB_VALUEY__MSK   0xFF
#define BNO055_QUATERNION_DATA_Y_LSB_VALUEY__POS   0
#define BNO055_QUATERNION_DATA_Y_LSB_VALUEY__REG   BNO055_QUATERNION_DATA_Y_LSB_ADDR
#define BNO055_QUATERNION_DATA_Y_MSB_ADDR   0X25
#define BNO055_QUATERNION_DATA_Y_MSB_VALUEY__LEN   8
#define BNO055_QUATERNION_DATA_Y_MSB_VALUEY__MSK   0xFF
#define BNO055_QUATERNION_DATA_Y_MSB_VALUEY__POS   0
#define BNO055_QUATERNION_DATA_Y_MSB_VALUEY__REG   NO055_QUATERNION_DATA_Y_MSB_ADDR
#define BNO055_QUATERNION_DATA_Z_LSB_ADDR   0X26
#define BNO055_QUATERNION_DATA_Z_LSB_VALUEZ__LEN   8
#define BNO055_QUATERNION_DATA_Z_LSB_VALUEZ__MSK   0xFF
#define BNO055_QUATERNION_DATA_Z_LSB_VALUEZ__POS   0
#define BNO055_QUATERNION_DATA_Z_LSB_VALUEZ__REG   BNO055_QUATERNION_DATA_Z_LSB_ADDR
#define BNO055_QUATERNION_DATA_Z_MSB_ADDR   0X27
#define BNO055_QUATERNION_DATA_Z_MSB_VALUEZ__LEN   8
#define BNO055_QUATERNION_DATA_Z_MSB_VALUEZ__MSK   0xFF
#define BNO055_QUATERNION_DATA_Z_MSB_VALUEZ__POS   0
#define BNO055_QUATERNION_DATA_Z_MSB_VALUEZ__REG   BNO055_QUATERNION_DATA_Z_MSB_ADDR
#define BNO055_RD_FUNC_PTR
Value:
s8 \
(*bus_read)(u8, u8 , u8 *, u8)
signed char s8
The following definition uses for define the data types.
Definition: bno055.h:301
unsigned char u8
used for unsigned 8bit
Definition: bno055.h:307
#define BNO055_REMAP_AXIS_VALUE__LEN   6
#define BNO055_REMAP_AXIS_VALUE__MSK   0X3F
#define BNO055_REMAP_AXIS_VALUE__POS   0
#define BNO055_REMAP_AXIS_VALUE__REG   BNO055_AXIS_MAP_CONFIG_ADDR
#define BNO055_REMAP_X_SIGN__LEN   1
#define BNO055_REMAP_X_SIGN__MSK   0X04
#define BNO055_REMAP_X_SIGN__POS   2
#define BNO055_REMAP_X_SIGN__REG   BNO055_AXIS_MAP_SIGN_ADDR
#define BNO055_REMAP_Y_SIGN__LEN   1
#define BNO055_REMAP_Y_SIGN__MSK   0X02
#define BNO055_REMAP_Y_SIGN__POS   1
#define BNO055_REMAP_Y_SIGN__REG   BNO055_AXIS_MAP_SIGN_ADDR
#define BNO055_REMAP_Z_SIGN__LEN   1
#define BNO055_REMAP_Z_SIGN__MSK   0X01
#define BNO055_REMAP_Z_SIGN__POS   0
#define BNO055_REMAP_Z_SIGN__REG   BNO055_AXIS_MAP_SIGN_ADDR
#define BNO055_RETURN_FUNCTION_TYPE   s8
#define BNO055_SELFTEST__LEN   1
#define BNO055_SELFTEST__MSK   0X01
#define BNO055_SELFTEST__POS   0
#define BNO055_SELFTEST__REG   BNO055_SYS_TRIGGER_ADDR
#define BNO055_SELFTEST_ACCEL__LEN   1
#define BNO055_SELFTEST_ACCEL__MSK   0X01
#define BNO055_SELFTEST_ACCEL__POS   0
#define BNO055_SELFTEST_ACCEL__REG   BNO055_SELFTEST_RESULT_ADDR
#define BNO055_SELFTEST_GYRO__LEN   1
#define BNO055_SELFTEST_GYRO__MSK   0X04
#define BNO055_SELFTEST_GYRO__POS   2
#define BNO055_SELFTEST_GYRO__REG   BNO055_SELFTEST_RESULT_ADDR
#define BNO055_SELFTEST_MAG__LEN   1
#define BNO055_SELFTEST_MAG__MSK   0X02
#define BNO055_SELFTEST_MAG__POS   1
#define BNO055_SELFTEST_MAG__REG   BNO055_SELFTEST_RESULT_ADDR
#define BNO055_SELFTEST_MCU__LEN   1
#define BNO055_SELFTEST_MCU__MSK   0X08
#define BNO055_SELFTEST_MCU__POS   3
#define BNO055_SELFTEST_MCU__REG   BNO055_SELFTEST_RESULT_ADDR
#define BNO055_SELFTEST_RESULT_ADDR   0X36
#define BNO055_SET_BITSLICE (   regvar,
  bitname,
  val 
)    ((regvar & ~bitname##__MSK) | ((val<<bitname##__POS)&bitname##__MSK))
#define BNO055_SEVEN_U8X   ((u8)7)
#define BNO055_SHIFT_8_POSITION   ((u8)8)
#define BNO055_SIC_HEX_0_0_F_F_DATA   0x00FF
#define BNO055_SIC_MATRIX_0_LSB__LEN   8
#define BNO055_SIC_MATRIX_0_LSB__MSK   0XFF
#define BNO055_SIC_MATRIX_0_LSB__POS   0
#define BNO055_SIC_MATRIX_0_LSB__REG   BNO055_SIC_MATRIX_0_LSB_ADDR
#define BNO055_SIC_MATRIX_0_LSB_ADDR   0X43
#define BNO055_SIC_MATRIX_0_MSB__LEN   8
#define BNO055_SIC_MATRIX_0_MSB__MSK   0XFF
#define BNO055_SIC_MATRIX_0_MSB__POS   0
#define BNO055_SIC_MATRIX_0_MSB__REG   BNO055_SIC_MATRIX_0_MSB_ADDR
#define BNO055_SIC_MATRIX_0_MSB_ADDR   0X44
#define BNO055_SIC_MATRIX_1_LSB__LEN   8
#define BNO055_SIC_MATRIX_1_LSB__MSK   0XFF
#define BNO055_SIC_MATRIX_1_LSB__POS   0
#define BNO055_SIC_MATRIX_1_LSB__REG   BNO055_SIC_MATRIX_1_LSB_ADDR
#define BNO055_SIC_MATRIX_1_LSB_ADDR   0X45
#define BNO055_SIC_MATRIX_1_MSB__LEN   8
#define BNO055_SIC_MATRIX_1_MSB__MSK   0XFF
#define BNO055_SIC_MATRIX_1_MSB__POS   0
#define BNO055_SIC_MATRIX_1_MSB__REG   BNO055_SIC_MATRIX_1_MSB_ADDR
#define BNO055_SIC_MATRIX_1_MSB_ADDR   0X46
#define BNO055_SIC_MATRIX_2_LSB__LEN   8
#define BNO055_SIC_MATRIX_2_LSB__MSK   0XFF
#define BNO055_SIC_MATRIX_2_LSB__POS   0
#define BNO055_SIC_MATRIX_2_LSB__REG   BNO055_SIC_MATRIX_2_LSB_ADDR
#define BNO055_SIC_MATRIX_2_LSB_ADDR   0X47
#define BNO055_SIC_MATRIX_2_MSB__LEN   8
#define BNO055_SIC_MATRIX_2_MSB__MSK   0XFF
#define BNO055_SIC_MATRIX_2_MSB__POS   0
#define BNO055_SIC_MATRIX_2_MSB__REG   BNO055_SIC_MATRIX_2_MSB_ADDR
#define BNO055_SIC_MATRIX_2_MSB_ADDR   0X48
#define BNO055_SIC_MATRIX_3_LSB__LEN   8
#define BNO055_SIC_MATRIX_3_LSB__MSK   0XFF
#define BNO055_SIC_MATRIX_3_LSB__POS   0
#define BNO055_SIC_MATRIX_3_LSB__REG   BNO055_SIC_MATRIX_3_LSB_ADDR
#define BNO055_SIC_MATRIX_3_LSB_ADDR   0X49
#define BNO055_SIC_MATRIX_3_MSB__LEN   8
#define BNO055_SIC_MATRIX_3_MSB__MSK   0XFF
#define BNO055_SIC_MATRIX_3_MSB__POS   0
#define BNO055_SIC_MATRIX_3_MSB__REG   BNO055_SIC_MATRIX_3_MSB_ADDR
#define BNO055_SIC_MATRIX_3_MSB_ADDR   0X4A
#define BNO055_SIC_MATRIX_4_LSB__LEN   8
#define BNO055_SIC_MATRIX_4_LSB__MSK   0XFF
#define BNO055_SIC_MATRIX_4_LSB__POS   0
#define BNO055_SIC_MATRIX_4_LSB__REG   BNO055_SIC_MATRIX_4_LSB_ADDR
#define BNO055_SIC_MATRIX_4_LSB_ADDR   0X4B
#define BNO055_SIC_MATRIX_4_MSB__LEN   8
#define BNO055_SIC_MATRIX_4_MSB__MSK   0XFF
#define BNO055_SIC_MATRIX_4_MSB__POS   0
#define BNO055_SIC_MATRIX_4_MSB__REG   BNO055_SIC_MATRIX_4_MSB_ADDR
#define BNO055_SIC_MATRIX_4_MSB_ADDR   0X4C
#define BNO055_SIC_MATRIX_5_LSB__LEN   8
#define BNO055_SIC_MATRIX_5_LSB__MSK   0XFF
#define BNO055_SIC_MATRIX_5_LSB__POS   0
#define BNO055_SIC_MATRIX_5_LSB__REG   BNO055_SIC_MATRIX_5_LSB_ADDR
#define BNO055_SIC_MATRIX_5_LSB_ADDR   0X4D
#define BNO055_SIC_MATRIX_5_MSB__LEN   8
#define BNO055_SIC_MATRIX_5_MSB__MSK   0XFF
#define BNO055_SIC_MATRIX_5_MSB__POS   0
#define BNO055_SIC_MATRIX_5_MSB__REG   BNO055_SIC_MATRIX_5_MSB_ADDR
#define BNO055_SIC_MATRIX_5_MSB_ADDR   0X4E
#define BNO055_SIC_MATRIX_6_LSB__LEN   8
#define BNO055_SIC_MATRIX_6_LSB__MSK   0XFF
#define BNO055_SIC_MATRIX_6_LSB__POS   0
#define BNO055_SIC_MATRIX_6_LSB__REG   BNO055_SIC_MATRIX_6_LSB_ADDR
#define BNO055_SIC_MATRIX_6_LSB_ADDR   0X4F
#define BNO055_SIC_MATRIX_6_MSB__LEN   8
#define BNO055_SIC_MATRIX_6_MSB__MSK   0XFF
#define BNO055_SIC_MATRIX_6_MSB__POS   0
#define BNO055_SIC_MATRIX_6_MSB__REG   BNO055_SIC_MATRIX_6_MSB_ADDR
#define BNO055_SIC_MATRIX_6_MSB_ADDR   0X50
#define BNO055_SIC_MATRIX_7_LSB__LEN   8
#define BNO055_SIC_MATRIX_7_LSB__MSK   0XFF
#define BNO055_SIC_MATRIX_7_LSB__POS   0
#define BNO055_SIC_MATRIX_7_LSB__REG   BNO055_SIC_MATRIX_7_LSB_ADDR
#define BNO055_SIC_MATRIX_7_LSB_ADDR   0X51
#define BNO055_SIC_MATRIX_7_MSB__LEN   8
#define BNO055_SIC_MATRIX_7_MSB__MSK   0XFF
#define BNO055_SIC_MATRIX_7_MSB__POS   0
#define BNO055_SIC_MATRIX_7_MSB__REG   BNO055_SIC_MATRIX_7_MSB_ADDR
#define BNO055_SIC_MATRIX_7_MSB_ADDR   0X52
#define BNO055_SIC_MATRIX_8_LSB__LEN   8
#define BNO055_SIC_MATRIX_8_LSB__MSK   0XFF
#define BNO055_SIC_MATRIX_8_LSB__POS   0
#define BNO055_SIC_MATRIX_8_LSB__REG   BNO055_SIC_MATRIX_8_LSB_ADDR
#define BNO055_SIC_MATRIX_8_LSB_ADDR   0X53
#define BNO055_SIC_MATRIX_8_MSB__LEN   8
#define BNO055_SIC_MATRIX_8_MSB__MSK   0XFF
#define BNO055_SIC_MATRIX_8_MSB__POS   0
#define BNO055_SIC_MATRIX_8_MSB__REG   BNO055_SIC_MATRIX_8_MSB_ADDR
#define BNO055_SIC_MATRIX_8_MSB_ADDR   0X54
#define BNO055_SIX_HUNDRES_U8X   600
#define BNO055_SIX_U8X   ((u8)6)
#define BNO055_SIXTEEN_U8X   ((u8)16)
#define BNO055_SW_REV_ID_LSB__LEN   8
#define BNO055_SW_REV_ID_LSB__MSK   0xFF
#define BNO055_SW_REV_ID_LSB__POS   0
#define BNO055_SW_REV_ID_LSB__REG   BNO055_SW_REV_ID_LSB_ADDR
#define BNO055_SW_REV_ID_LSB_ADDR   0x04
#define BNO055_SW_REV_ID_MSB__LEN   8
#define BNO055_SW_REV_ID_MSB__MSK   0xFF
#define BNO055_SW_REV_ID_MSB__POS   0
#define BNO055_SW_REV_ID_MSB__REG   BNO055_SW_REV_ID_MSB_ADDR
#define BNO055_SW_REV_ID_MSB_ADDR   0x05
#define BNO055_SYS_CALIB_STAT__LEN   2
#define BNO055_SYS_CALIB_STAT__MSK   0XC0
#define BNO055_SYS_CALIB_STAT__POS   6
#define BNO055_SYS_CALIB_STAT__REG   BNO055_CALIB_STAT_ADDR
#define BNO055_SYS_CLK_STAT_ADDR   0X38
#define BNO055_SYS_ERR_ADDR   0X3A
#define BNO055_SYS_ERROR_CODE__LEN   8
#define BNO055_SYS_ERROR_CODE__MSK   0XFF
#define BNO055_SYS_ERROR_CODE__POS   0
#define BNO055_SYS_ERROR_CODE__REG   BNO055_SYS_ERR_ADDR
#define BNO055_SYS_MAIN_CLK__LEN   1
#define BNO055_SYS_MAIN_CLK__MSK   0X10
#define BNO055_SYS_MAIN_CLK__POS   0
#define BNO055_SYS_MAIN_CLK__REG   BNO055_SYS_CLK_STAT_ADDR
#define BNO055_SYS_RST__LEN   1
#define BNO055_SYS_RST__MSK   0X20
#define BNO055_SYS_RST__POS   5
#define BNO055_SYS_RST__REG   BNO055_SYS_TRIGGER_ADDR
#define BNO055_SYS_STAT_ADDR   0X39
#define BNO055_SYS_STAT_CODE__LEN   8
#define BNO055_SYS_STAT_CODE__MSK   0XFF
#define BNO055_SYS_STAT_CODE__POS   0
#define BNO055_SYS_STAT_CODE__REG   BNO055_SYS_STAT_ADDR
#define BNO055_SYS_TRIGGER_ADDR   0X3F
#define BNO055_TEMP__LEN   8
#define BNO055_TEMP__MSK   0xFF
#define BNO055_TEMP__POS   0
#define BNO055_TEMP__REG   BNO055_TEMP_ADDR
#define BNO055_TEMP_ADDR   0X34
#define BNO055_TEMP_SOURCE__LEN   2
#define BNO055_TEMP_SOURCE__MSK   0X03
#define BNO055_TEMP_SOURCE__POS   0
#define BNO055_TEMP_SOURCE__REG   BNO055_TEMP_SOURCE_ADDR
#define BNO055_TEMP_SOURCE_ADDR   0X40
#define BNO055_TEMP_UNIT__LEN   1
#define BNO055_TEMP_UNIT__MSK   0X10
#define BNO055_TEMP_UNIT__POS   4
#define BNO055_TEMP_UNIT__REG   BNO055_UNIT_SEL_ADDR
#define BNO055_TILT_UNIT__LEN   1
#define BNO055_TILT_UNIT__MSK   0X08
#define BNO055_TILT_UNIT__POS   3
#define BNO055_TILT_UNIT__REG   BNO055_UNIT_SEL_ADDR
#define BNO055_TWENTY_U8X   ((u8)20)
#define BNO055_TWO_U8X   ((u8)2)
#define BNO055_UNIT_SEL_ADDR   0X3B
#define BNO055_WR_FUNC_PTR
Value:
s8 (*bus_write)\
(u8, u8 , u8 *, u8)
signed char s8
The following definition uses for define the data types.
Definition: bno055.h:301
unsigned char u8
used for unsigned 8bit
Definition: bno055.h:307
#define BNO055_ZERO_U8X   ((u8)0)
#define DEFAULT_AXIS   0X24
#define DISABLED   0x00
#define E_BNO055_OUT_OF_RANGE   ((s8)-2)
#define E_NULL_PTR   ((s8)-127)
#define ENABLED   0x01
#define ERROR   ((s8)-1)

Referenced by log_output().

#define EULER_DIV_DEG   16.0
#define EULER_DIV_RAD   900.0
#define EULER_UNIT_DEG   0x00
#define EULER_UNIT_RAD   0x01
#define FILTERED   0x00
#define GRAVITY_DIV_MSQ   100.0
#define GYRO_ANY_MOTION_SET_ADDR   0X1F
#define GYRO_ANY_MOTION_THRES_ADDR   0X1E
#define GYRO_BW_116HZ   0x02
#define GYRO_BW_12HZ   0x05
#define GYRO_BW_230HZ   0x01
#define GYRO_BW_23HZ   0x04
#define GYRO_BW_32HZ   0x07
#define GYRO_BW_47HZ   0x03
#define GYRO_BW_523HZ   0x00
#define GYRO_BW_64HZ   0x06
#define GYRO_CONFIG_ADDR   0X0A
#define GYRO_DIV_DPS   16.0
#define GYRO_DIV_RPS   900.0
#define GYRO_DURN_X_ADDR   0X19
#define GYRO_DURN_Y_ADDR   0X1B
#define GYRO_DURN_Z_ADDR   0X1D
#define GYRO_HIGHRATE_X_SET_ADDR   0X18
#define GYRO_HIGHRATE_Y_SET_ADDR   0X1A
#define GYRO_HIGHRATE_Z_SET_ADDR   0X1C
#define GYRO_INTR_SETING_ADDR   0X17
#define GYRO_MODE_CONFIG_ADDR   0X0B
#define GYRO_OFFSET_X_LSB_ADDR   0X61
#define GYRO_OFFSET_X_MSB_ADDR   0X62
#define GYRO_OFFSET_Y_LSB_ADDR   0X63
#define GYRO_OFFSET_Y_MSB_ADDR   0X64
#define GYRO_OFFSET_Z_LSB_ADDR   0X65
#define GYRO_OFFSET_Z_MSB_ADDR   0X66
#define GYRO_POWER_MODE_ADVANCE_POWERSAVE   0X04
#define GYRO_POWER_MODE_DEEPSUSPEND   0X02
#define GYRO_POWER_MODE_FASTPOWERUP   0X01
#define GYRO_POWER_MODE_NORMAL   0X00
#define GYRO_POWER_MODE_SUSPEND   0X03
#define GYRO_RANGE_1000DPS   0x01
#define GYRO_RANGE_125DPS   0x04
#define GYRO_RANGE_2000DPS   0x00
#define GYRO_RANGE_250DPS   0x03
#define GYRO_RANGE_500DPS   0x02
#define GYRO_SLEEP_CONFIG_ADDR   0X0D
#define GYRO_TEMP_EN   0x01
#define GYRO_UNIT_DPS   0x00
#define GYRO_UNIT_RPS   0x01
#define INDEX_EIGHT   8
#define INDEX_EIGHTEEN   18
#define INDEX_ELEVEN   11
#define INDEX_FIVE   5
#define INDEX_FIVETEEN   15
#define INDEX_FOUR   4
#define INDEX_FOURTEEN   14
#define INDEX_NINE   9
#define INDEX_NINETEEN   19
#define INDEX_ONE   1
#define INDEX_SEVEN   7
#define INDEX_SEVENTEEN   17
#define INDEX_SIX   6
#define INDEX_SIXTEEN   16
#define INDEX_TEN   10
#define INDEX_THIRTEEN   13
#define INDEX_THREE   3
#define INDEX_TWELVE   12
#define INDEX_TWENTY   20
#define INDEX_TWENTY_FIVE   25
#define INDEX_TWENTY_ONE   21
#define INDEX_TWENTY_THREE   23
#define INDEX_TWENTY_TWO   22
#define INDEX_TWO   2
#define INDEX_ZERO   0
#define INT_ADDR   0X10
#define INT_MASK_ADDR   0X0F
#define LINEAR_ACCEL_DIV_MSQ   100.0
#define LSB_FOUR   4
#define LSB_SIX   6
#define LSB_TWO   2
#define LSB_ZERO   0
#define MACHINE_32_BIT

The following definition uses for define the data types.

Note
While porting the API please consider the following
Please check the version of C standard
Are you using Linux platform

For the Linux platform support Please use the types.h for your data types definitions

By default it is defined as 32 bit machine configuration define your data types based on your machine/compiler/controller configuration

#define MAG_CONFIG_ADDR   0X09
#define MAG_DATA_OUTRATE_10HZ   0X03
#define MAG_DATA_OUTRATE_15HZ   0X04
#define MAG_DATA_OUTRATE_20HZ   0X05
#define MAG_DATA_OUTRATE_25HZ   0X06
#define MAG_DATA_OUTRATE_2HZ   0X00
#define MAG_DATA_OUTRATE_30HZ   0X07
#define MAG_DATA_OUTRATE_6HZ   0X01
#define MAG_DATA_OUTRATE_8HZ   0X02
#define MAG_DIV_UT   16.0
#define MAG_OFFSET_X_LSB_ADDR   0X5B
#define MAG_OFFSET_X_MSB_ADDR   0X5C
#define MAG_OFFSET_Y_LSB_ADDR   0X5D
#define MAG_OFFSET_Y_MSB_ADDR   0X5E
#define MAG_OFFSET_Z_LSB_ADDR   0X5F
#define MAG_OFFSET_Z_MSB_ADDR   0X60
#define MAG_OPERATION_MODE_ENHANCED_REGULAR   0X02
#define MAG_OPERATION_MODE_HIGH_ACCURACY   0X03
#define MAG_OPERATION_MODE_LOWPOWER   0X00
#define MAG_OPERATION_MODE_REGULAR   0X01
#define MAG_POWER_MODE_FORCE_MODE   0X03
#define MAG_POWER_MODE_NORMAL   0X00
#define MAG_POWER_MODE_SLEEP   0X01
#define MAG_POWER_MODE_SUSPEND   0X02
#define MAG_RADIUS_LSB_ADDR   0X69
#define MAG_RADIUS_MSB_ADDR   0X6A
#define MAG_SLEEP_CONFIG_ADDR   0x0E
#define MCU_TEMP_EN   0x03
#define MSB_FIVE   5
#define MSB_ONE   1
#define MSB_SEVEN   7
#define MSB_THREE   3
#define OPERATION_MODE_ACCGYRO   0X05
#define OPERATION_MODE_ACCMAG   0X04
#define OPERATION_MODE_ACCONLY   0X01
#define OPERATION_MODE_AMG   0X07
#define OPERATION_MODE_COMPASS   0X09
#define OPERATION_MODE_CONFIG   0X00
#define OPERATION_MODE_GYRONLY   0X03
#define OPERATION_MODE_IMUPLUS   0X08
#define OPERATION_MODE_M4G   0X0A
#define OPERATION_MODE_MAGGYRO   0X06
#define OPERATION_MODE_MAGONLY   0X02
#define OPERATION_MODE_NDOF   0X0C
#define OPERATION_MODE_NDOF_FMC_OFF   0X0B
#define PAGE_ONE   0X01
#define PAGE_ZERO   0X00
#define POWER_MODE_LOWPOWER   0X01
#define POWER_MODE_NORMAL   0X00
#define POWER_MODE_SUSPEND   0X02
#define REMAP_AXIS_NEGATIVE   0X01
#define REMAP_AXIS_POSITIVE   0X00
#define REMAP_X_Y   0X21
#define REMAP_X_Y_Z_TYPE0   0X12
#define REMAP_X_Y_Z_TYPE1   0X09
#define REMAP_Y_Z   0X18
#define REMAP_Z_X   0X06
#define SUCCESS   ((u8)0)
#define TEMP_DIV_CELSIUS   1
#define TEMP_DIV_FAHRENHEIT   0.5
#define TEMP_UNIT_CELSIUS   0x00
#define TEMP_UNIT_FAHRENHEIT   0x01
#define UNFILTERED   0x01

typedef signed short int s16

used for signed 16bit

typedef signed int s32

used for signed 32bit

typedef signed long long int s64

used for signed 64bit

typedef signed char s8

If your machine support 16 bit define the MACHINE_16_BIT.

used for signed 8bit

typedef unsigned short int u16

used for unsigned 16bit

typedef unsigned int u32

used for unsigned 32bit

typedef unsigned long long int u64

used for unsigned 64bit

typedef unsigned char u8

used for unsigned 8bit

BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_x_mg ( double *  v_accel_x_d)

This API is used to convert the accel x raw data to millig output as double.

Parameters
v_accel_x_d: The accel x millig data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_x_msq ( double *  v_accel_x_d)

This API is used to convert the accel x raw data to meterpersecseq output as double.

Parameters
v_accel_x_d: The accel x meterpersecseq data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_xyz_mg ( struct bno055_accel_double_t accel_xyz)

This API is used to convert the accel xyz raw data to millig output as double.

Parameters
accel_xyz: The millig data of accel xyz
Parameter result
x millig data of accel
y millig data of accel
z millig data of accel
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_xyz_msq ( struct bno055_accel_double_t accel_xyz)

This API is used to convert the accel xyz raw data to meterpersecseq output as double.

Parameters
accel_xyz: The meterpersecseq data of accel xyz
Parameter result
x meterpersecseq data of accel
y meterpersecseq data of accel
z meterpersecseq data of accel
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_y_mg ( double *  v_accel_y_d)

This API is used to convert the accel y raw data to millig output as double.

Parameters
v_accel_y_d: The accel y millig data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_y_msq ( double *  v_accel_y_d)

This API is used to convert the accel y raw data to meterpersecseq output as double.

Parameters
v_accel_y_d: The accel y meterpersecseq data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_z_mg ( double *  v_accel_z_d)

This API is used to convert the accel z raw data to millig output as double.

Parameters
v_accel_z_d: The accel z millig data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_z_msq ( double *  v_accel_z_d)

This API is used to convert the accel z raw data to meterpersecseq output as double.

Parameters
v_accel_z_d: The accel z meterpersecseq data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_h_deg ( double *  v_euler_h_d)

This API is used to convert the Euler h raw data to degree output as double.

Parameters
v_euler_h_d: The double value of Euler h degree
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_h_rad ( double *  v_euler_h_d)

This API is used to convert the Euler h raw data to radians output as double.

Parameters
v_euler_h_d: The double value of Euler h radians
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_hpr_deg ( struct bno055_euler_double_t euler_hpr)

This API is used to convert the Euler hpr raw data to degree output as double.

Parameters
euler_hpr: The degree data of Euler hpr
Parameter result
h degree data of Euler
r degree data of Euler
p degree data of Euler
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_hpr_rad ( struct bno055_euler_double_t euler_hpr)

This API is used to convert the Euler hpr raw data to radians output as double.

Parameters
euler_hpr: The radians data of Euler hpr
Parameter result
h radians data of Euler
r radians data of Euler
p radians data of Euler
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_p_deg ( double *  v_euler_p_d)

This API is used to convert the Euler p raw data to degree output as double.

Parameters
v_euler_p_d: The double value of Euler p degree
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_p_rad ( double *  v_euler_p_d)

This API is used to convert the Euler p raw data to radians output as double.

Parameters
v_euler_p_d: The double value of Euler p radians
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_r_deg ( double *  v_euler_r_d)

This API is used to convert the Euler r raw data to degree output as double.

Parameters
v_euler_r_d: The double value of Euler r degree
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_r_rad ( double *  v_euler_r_d)

This API is used to convert the Euler r raw data to radians output as double.

Parameters
v_euler_r_d: The double value of Euler r radians
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gravity_xyz_msq ( struct bno055_gravity_double_t gravity_xyz)

This API is used to convert the gravity xyz raw data to meterpersecseq output as double.

Parameters
gravity_xyz: The meterpersecseq data of gravity xyz
Parameter result
x meterpersecseq data of gravity
y meterpersecseq data of gravity
z meterpersecseq data of gravity
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_x_dps ( double *  v_gyro_x_d)

This API is used to convert the gyro x raw data to dps output as double.

Parameters
v_gyro_x_d: The gyro x dps double data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_x_rps ( double *  v_gyro_x_d)

This API is used to convert the gyro x raw data to rps output as double.

Parameters
v_gyro_x_d: The gyro x dps double data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_xyz_dps ( struct bno055_gyro_double_t gyro_xyz)

This API is used to convert the gyro xyz raw data to dps output as double.

Parameters
gyro_xyz: The dps data of gyro xyz
Parameter result
x dps data of gyro
y dps data of gyro
z dps data of gyro
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_xyz_rps ( struct bno055_gyro_double_t gyro_xyz)

This API is used to convert the gyro xyz raw data to rps output as double.

Parameters
gyro_xyz: The rps data of gyro xyz
Parameter result
x rps data of gyro
y rps data of gyro
z rps data of gyro
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_y_dps ( double *  v_gyro_y_d)

This API is used to convert the gyro y raw data to dps output as double.

Parameters
v_gyro_y_d: The gyro y dps double data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_y_rps ( double *  v_gyro_y_d)

This API is used to convert the gyro y raw data to rps output as double.

Parameters
v_gyro_y_d: The gyro y dps double data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_z_dps ( double *  v_gyro_z_d)

This API is used to convert the gyro z raw data to dps output as double.

Parameters
v_gyro_z_d: The gyro z dps double data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_z_rps ( double *  v_gyro_z_d)

This API is used to convert the gyro z raw data to rps output as double.

Parameters
v_gyro_z_d: The gyro z rps double data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_linear_accel_x_msq ( double *  v_linear_accel_x_d)

This API is used to convert the linear accel x raw data to meterpersecseq output as double.

Parameters
v_linear_accel_x_d: The double value of linear accel x meterpersecseq
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_linear_accel_xyz_msq ( struct bno055_linear_accel_double_t linear_accel_xyz)

This API is used to convert the linear accel xyz raw data to meterpersecseq output as double.

Parameters
linear_accel_xyz: The meterpersecseq data of linear accel xyz
Parameter result
x meterpersecseq data of linear accel
y meterpersecseq data of linear accel
z meterpersecseq data of linear accel
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_linear_accel_y_msq ( double *  v_linear_accel_y_d)

This API is used to convert the linear accel y raw data to meterpersecseq output as double.

Parameters
v_linear_accel_y_d: The double value of linear accel y meterpersecseq
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_linear_accel_z_msq ( double *  v_linear_accel_z_d)

This API is used to convert the linear accel z raw data to meterpersecseq output as double.

Parameters
v_linear_accel_z_d: The double value of linear accel z meterpersecseq
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_mag_x_uT ( double *  v_mag_x_d)

This API is used to convert the mag x raw data to microTesla output as double.

Parameters
v_mag_x_d: The mag x microTesla data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_mag_xyz_uT ( struct bno055_mag_double_t mag_xyz)

This API is used to convert the mag yz raw data to microTesla output as double.

Parameters
mag_xyz: The microTesla data of mag xyz
Parameter result
x microTesla data of mag
y microTesla data of mag
z microTesla data of mag
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_mag_y_uT ( double *  v_mag_y_d)

This API is used to convert the mag y raw data to microTesla output as double.

Parameters
v_mag_y_d: The mag y microTesla data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_mag_z_uT ( double *  v_mag_z_d)

This API is used to convert the mag z raw data to microTesla output as double.

Parameters
v_mag_z_d: The mag z microTesla data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_temp_celsius ( double *  v_temp_d)

This API is used to convert the temperature data to Celsius output as double.

Parameters
v_temp_d: The double value of temperature Celsius
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_temp_fahrenheit ( double *  v_temp_d)

This API is used to convert the temperature data to Fahrenheit output as double.

Parameters
v_temp_d: The double value of temperature Fahrenheit
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_x_mg ( float *  v_accel_x_f)

This API is used to convert the accel x raw data to millig output as float.

Parameters
v_accel_x_f: The accel x millig data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_x_msq ( float *  v_accel_x_f)

This API is used to convert the accel x raw data to meterpersecseq output as float.

Parameters
v_accel_x_f: The accel x meterpersecseq data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_xyz_mg ( struct bno055_accel_float_t accel_xyz)

This API is used to convert the accel xyz raw data to millig output as float.

Parameters
accel_xyz: The millig data of accel xyz
Parameter result
x millig data of accel
y millig data of accel
z millig data of accel
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_xyz_msq ( struct bno055_accel_float_t accel_xyz)

This API is used to convert the accel xyz raw data to meterpersecseq output as float.

Parameters
accel_xyz: The meterpersecseq data of accel xyz
Parameter result
x meterpersecseq data of accel
y meterpersecseq data of accel
z meterpersecseq data of accel
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_y_mg ( float *  v_accel_y_f)

This API is used to convert the accel y raw data to millig output as float.

Parameters
v_accel_y_f: The accel y millig data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_y_msq ( float *  v_accel_y_f)

This API is used to convert the accel x raw data to meterpersecseq output as float.

Parameters
v_accel_y_f: The accel y meterpersecseq data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_z_mg ( float *  v_accel_z_f)

This API is used to convert the accel z raw data to millig output as float.

Parameters
v_accel_z_f: The accel z millig data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_z_msq ( float *  v_accel_z_f)

This API is used to convert the accel z raw data to meterpersecseq output as float.

Parameters
v_accel_z_f: The accel z meterpersecseq data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_h_deg ( float *  v_euler_h_f)

This API is used to convert the Euler h raw data to degree output as float.

Parameters
v_euler_h_f: The float value of Euler h degree
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_h_rad ( float *  v_euler_h_f)

This API is used to convert the Euler h raw data to radians output as float.

Parameters
v_euler_h_f: The float value of Euler h radians
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_hpr_deg ( struct bno055_euler_float_t euler_hpr)

This API is used to convert the Euler hrp raw data to degree output as float.

Parameters
euler_hpr: The degree data of Euler hrp
Parameter result
h degree data of Euler
r degree data of Euler
p degree data of Euler
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_hpr_rad ( struct bno055_euler_float_t euler_hpr)

This API is used to convert the Euler xyz raw data to radians output as float.

Parameters
euler_hpr: The radians data of Euler hrp
Parameter result
h radians data of Euler
r radians data of Euler
p radians data of Euler
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_p_deg ( float *  v_euler_p_f)

This API is used to convert the Euler p raw data to degree output as float.

Parameters
v_euler_p_f: The float value of Euler p degree
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_p_rad ( float *  v_euler_p_f)

This API is used to convert the Euler p raw data to radians output as float.

Parameters
v_euler_p_f: The float value of Euler p radians
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_r_deg ( float *  v_euler_r_f)

This API is used to convert the Euler r raw data to degree output as float.

Parameters
v_euler_r_f: The float value of Euler r degree
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_r_rad ( float *  v_euler_r_f)

This API is used to convert the Euler r raw data to radians output as float.

Parameters
v_euler_r_f: The float value of Euler r radians
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gravity_xyz_msq ( struct bno055_gravity_float_t gravity_xyz)

This API is used to convert the gravity xyz raw data to meterpersecseq output as float.

Parameters
gravity_xyz: The meterpersecseq data of gravity xyz
Parameter result
x meterpersecseq data of gravity
y meterpersecseq data of gravity
z meterpersecseq data of gravity
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_x_dps ( float *  v_gyro_x_f)

This API is used to convert the gyro x raw data to dps output as float.

Parameters
v_gyro_x_f: The gyro x dps float data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_x_rps ( float *  v_gyro_x_f)

This API is used to convert the gyro x raw data to rps output as float.

Parameters
v_gyro_x_f: The gyro x dps float data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_xyz_dps ( struct bno055_gyro_float_t gyro_xyz_data)

This API is used to convert the gyro xyz raw data to dps output as float.

Parameters
gyro_xyz_data: The dps data of gyro xyz
Parameter result
x dps data of gyro
y dps data of gyro
z dps data of gyro
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_xyz_rps ( struct bno055_gyro_float_t gyro_xyz_data)

This API is used to convert the gyro xyz raw data to rps output as float.

Parameters
gyro_xyz_data: The rps data of gyro xyz
Parameter result
x rps data of gyro
y rps data of gyro
z rps data of gyro
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_y_dps ( float *  v_gyro_y_f)

This API is used to convert the gyro y raw data to dps output as float.

Parameters
v_gyro_y_f: The gyro y dps float data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_y_rps ( float *  v_gyro_y_f)

This API is used to convert the gyro y raw data to rps output as float.

Parameters
v_gyro_y_f: The gyro y dps float data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_z_dps ( float *  v_gyro_z_f)

This API is used to convert the gyro z raw data to dps output as float.

Parameters
v_gyro_z_f: The gyro z dps float data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_z_rps ( float *  v_gyro_z_f)

This API is used to convert the gyro z raw data to rps output as float.

Parameters
v_gyro_z_f: The gyro z rps float data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_linear_accel_x_msq ( float *  v_linear_accel_x_f)

This API is used to convert the linear accel x raw data to meterpersecseq output as float.

Parameters
v_linear_accel_x_f: The float value of linear accel x meterpersecseq
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_linear_accel_xyz_msq ( struct bno055_linear_accel_float_t linear_accel_xyz)

This API is used to convert the linear accel xyz raw data to meterpersecseq output as float.

Parameters
linear_accel_xyz: The meterpersecseq data of linear accel xyz
Parameter result
x meterpersecseq data of linear accel
y meterpersecseq data of linear accel
z meterpersecseq data of linear accel
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_linear_accel_y_msq ( float *  v_linear_accel_y_f)

This API is used to convert the linear accel y raw data to meterpersecseq output as float.

Parameters
v_linear_accel_y_f: The float value of linear accel y meterpersecseq
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_linear_accel_z_msq ( float *  v_linear_accel_z_f)

This API is used to convert the linear accel z raw data to meterpersecseq output as float.

Parameters
v_linear_accel_z_f: The float value of linear accel z meterpersecseq
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_mag_x_uT ( float *  v_mag_x_f)

This API is used to convert the mag x raw data to microTesla output as float.

Parameters
v_mag_x_f: The mag x microTesla data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_mag_xyz_uT ( struct bno055_mag_float_t mag_xyz_data)

This API is used to convert the mag yz raw data to microTesla output as float.

Parameters
mag_xyz_data: The microTesla data of mag xyz
Parameter result
x microTesla data of mag
y microTesla data of mag
z microTesla data of mag
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_mag_y_uT ( float *  v_mag_y_f)

This API is used to convert the mag y raw data to microTesla output as float.

Parameters
v_mag_y_f: The mag y microTesla data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_mag_z_uT ( float *  v_mag_z_f)

This API is used to convert the mag z raw data to microTesla output as float.

Parameters
v_mag_z_f: The mag z microTesla data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_temp_celsius ( float *  v_temp_f)

This API is used to convert the temperature data to Celsius output as float.

Parameters
v_temp_f: The float value of temperature Celsius
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_temp_fahrenheit ( float *  v_temp_f)

This API is used to convert the temperature data to Fahrenheit output as float.

Parameters
v_temp_f: The float value of temperature Fahrenheit
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_double_x_msq ( double *  v_gravity_x_d)

This API is used to convert the gravity x raw data to meterpersecseq output as double.

Parameters
v_gravity_x_d: The double value of gravity x meterpersecseq
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_double_y_msq ( double *  v_gravity_y_d)

This API is used to convert the gravity y raw data to meterpersecseq output as double.

Parameters
v_gravity_y_d: The double value of gravity y meterpersecseq
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_double_z_msq ( double *  v_gravity_z_d)

This API is used to convert the gravity z raw data to meterpersecseq output as double.

Parameters
v_gravity_z_d: The double value of gravity z meterpersecseq
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_float_x_msq ( float *  v_gravity_x_f)

This API is used to convert the gravity x raw data to meterpersecseq output as float.

Parameters
v_gravity_x_f: The float value of gravity x meterpersecseq
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_float_y_msq ( float *  v_gravity_y_f)

This API is used to convert the gravity y raw data to meterpersecseq output as float.

Parameters
v_gravity_y_f: The float value of gravity y meterpersecseq
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_float_z_msq ( float *  v_gravity_z_f)

This API is used to convert the gravity z raw data to meterpersecseq output as float.

Parameters
v_gravity_z_f: The float value of gravity z meterpersecseq
Returns
results of bus communication function
Return values
0-> Success
1-> Error
BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_any_motion_durn ( u8 accel_any_motion_durn_u8)

This API used to read the accel anymotion duration from page one register from 0x12 bit 0 to 1.

Parameters
v_accel_any_motion_durn_u8: The value of accel anymotion duration
v_accel_any_motion_durn_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_any_motion_durn_u8: The value of accel anymotion duration
accel_any_motion_durn_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_ANY_MOTION_DURN_SET_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_any_motion_no_motion_axis_enable ( u8  channel_u8,
u8 data_u8 
)

This API used to read the accel anymotion enable from page one register from 0x12 bit 2 to 4.

Parameters
v_data_u8: The value of accel anymotion enable
v_data_u8 result
0x01 ENABLED
0x00 DISABLED
v_channel_u8: The value of accel anymotion axis selection
v_channel_u8 value
BNO055_ACCEL_ANY_MOTION_NO_MOTION_X_AXIS 0
BNO055_ACCEL_ANY_MOTION_NO_MOTION_Y_AXIS 1
BNO055_ACCEL_ANY_MOTION_NO_MOTION_Y_AXIS 2
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
data_u8: The value of accel anymotion enable
data_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
channel_u8: The value of accel anymotion axis selection
channel_u8 value
BNO055_ACCEL_ANY_MOTION_NO_MOTION_X_AXIS 0
BNO055_ACCEL_ANY_MOTION_NO_MOTION_Y_AXIS 1
BNO055_ACCEL_ANY_MOTION_NO_MOTION_Y_AXIS 2
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_ANY_MOTION_NO_MOTION_X_AXIS, BNO055_ACCEL_ANY_MOTION_NO_MOTION_Y_AXIS, BNO055_ACCEL_ANY_MOTION_NO_MOTION_Z_AXIS, BNO055_ACCEL_ANY_MOTION_X_AXIS_REG, BNO055_ACCEL_ANY_MOTION_Y_AXIS_REG, BNO055_ACCEL_ANY_MOTION_Z_AXIS_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_any_motion_thres ( u8 accel_any_motion_thres_u8)

This API used to read the accel any motion threshold from page one register from 0x11 bit 0 to 7.

Parameters
v_accel_any_motion_thres_u8: The value of any motion threshold
v_accel_any_motion_thres_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Accel anymotion threshold dependent on the range values
v_accel_range_u8 threshold LSB
2g 3.19mg 1LSB
4g 7.81mg 1LSB
8g 15.63mg 1LSB
16g 31.25mg 1LSB
Parameters
accel_any_motion_thres_u8: The value of any motion threshold
accel_any_motion_thres_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Accel anymotion threshold dependent on the range values
accel_range_u8 threshold LSB
2g 3.19mg 1LSB
4g 7.81mg 1LSB
8g 15.63mg 1LSB
16g 31.25mg 1LSB

References BNO055_ACCEL_ANY_MOTION_THRES_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_bw ( u8 accel_bw_u8)

This API used to read the accel bandwidth from page one register from 0x08 bit 2 to 4.

Parameters
v_accel_bw_u8: The value of accel bandwidth
     v_accel_bw_u8 |     result
 ----------------- | ---------------
        0x00       | ACCEL_BW_7_81HZ
        0x01       | ACCEL_BW_15_63HZ
        0x02       | ACCEL_BW_31_25HZ
        0x03       | ACCEL_BW_62_5HZ
        0x04       | ACCEL_BW_125HZ
        0x05       | ACCEL_BW_250HZ
        0x06       | ACCEL_BW_500HZ
        0x07       | ACCEL_BW_1000HZ
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_bw_u8: The value of accel bandwidth
     accel_bw_u8 |     result
 ----------------- | ---------------
        0x00       | BNO055_ACCEL_BW_7_81HZ
        0x01       | BNO055_ACCEL_BW_15_63HZ
        0x02       | BNO055_ACCEL_BW_31_25HZ
        0x03       | BNO055_ACCEL_BW_62_5HZ
        0x04       | BNO055_ACCEL_BW_125HZ
        0x05       | BNO055_ACCEL_BW_250HZ
        0x06       | BNO055_ACCEL_BW_500HZ
        0x07       | BNO055_ACCEL_BW_1000HZ
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_BW_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_calib_stat ( u8 accel_calib_u8)

This API used to read accel calibration status from register from 0x35 bit 2 and 3.

Parameters
v_accel_calib_u8: The value of accel calib status
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_calib_u8: The value of accel calib status
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_CALIB_STAT_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_high_g_axis_enable ( u8  channel_u8,
u8 data_u8 
)

This API used to read the accel highg enable from page one register from 0x12 bit 5 to 7.

Parameters
v_data_u8: The value of accel highg enable
v_data_u8result
0x01 ENABLED
0x00 DISABLED
v_channel_u8: The value of accel highg axis selection
v_channel_u8 value
BNO055_ACCEL_HIGH_G_X_AXIS 0
BNO055_ACCEL_HIGH_G_Y_AXIS 1
BNO055_ACCEL_HIGH_G_Z_AXIS 2
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
data_u8: The value of accel highg enable
data_u8result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
channel_u8: The value of accel highg axis selection
channel_u8 value
BNO055_ACCEL_HIGH_G_X_AXIS 0
BNO055_ACCEL_HIGH_G_Y_AXIS 1
BNO055_ACCEL_HIGH_G_Z_AXIS 2
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_HIGH_G_X_AXIS, BNO055_ACCEL_HIGH_G_X_AXIS_REG, BNO055_ACCEL_HIGH_G_Y_AXIS, BNO055_ACCEL_HIGH_G_Y_AXIS_REG, BNO055_ACCEL_HIGH_G_Z_AXIS, BNO055_ACCEL_HIGH_G_Z_AXIS_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_high_g_durn ( u8 accel_high_g_durn_u8)

This API used to read the accel highg duration from page one register from 0x13 bit 0 to 7.

Parameters
v_accel_high_g_durn_u8: The value of accel highg duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
The high-g interrupt trigger delay according to [highg duration + 1] * 2 ms

in a range from 2 ms to 512 ms

Parameters
accel_high_g_durn_u8: The value of accel highg duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
The high-g interrupt trigger delay according to [highg duration + 1] * 2 ms

in a range from 2 ms to 512 ms

References BNO055_ACCEL_HIGH_G_DURN_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_high_g_thres ( u8 accel_high_g_thres_u8)

This API used to read the accel highg threshold from page one register from 0x14 bit 0 to 7.

Parameters
v_accel_high_g_thres_u8: The value of accel highg threshold
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Accel highg interrupt threshold dependent for accel g range
v_accel_range_u8 threshold LSB
2g 7.81mg 1LSB
4g 15.63mg 1LSB
8g 31.25mg 1LSB
16g 62.5mg 1LSB
Parameters
accel_high_g_thres_u8: The value of accel highg threshold
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Accel highg interrupt threshold dependent for accel g range
accel_range_u8 threshold LSB
2g 7.81mg 1LSB
4g 15.63mg 1LSB
8g 31.25mg 1LSB
16g 62.5mg 1LSB

References BNO055_ACCEL_HIGH_G_THRES_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_power_mode ( u8 accel_power_mode_u8)

This API used to read the accel power mode from page one register from 0x08 bit 5 to 7.

Parameters
v_accel_power_mode_u8: The value of accel power mode
v_accel_power_mode_u8 result
0x00 ACCEL_NORMAL
0x01 ACCEL_SUSPEND
0x02 ACCEL_LOWPOWER_1
0x03 ACCEL_STANDBY
0x04 ACCEL_LOWPOWER_2
0x05 ACCEL_DEEPSUSPEND
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_power_mode_u8: The value of accel power mode
accel_power_mode_u8 result
0x00 BNO055_ACCEL_NORMAL
0x01 BNO055_ACCEL_SUSPEND
0x02 BNO055_ACCEL_LOWPOWER_1
0x03 BNO055_ACCEL_STANDBY
0x04 BNO055_ACCEL_LOWPOWER_2
0x05 BNO055_ACCEL_DEEPSUSPEND
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_POWER_MODE_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_range ( u8 accel_range_u8)

This API used to read the accel range from page one register from 0x08 bit 0 and 1.

Parameters
v_accel_range_u8: The value of accel range
v_accel_range_u8 result
0x00 ACCEL_RANGE_2G
0x01 ACCEL_RANGE_4G
0x02 ACCEL_RANGE_8G
0x03 ACCEL_RANGE_16G
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_range_u8: The value of accel range
accel_range_u8 result
0x00 BNO055_ACCEL_RANGE_2G
0x01 BNO055_ACCEL_RANGE_4G
0x02 BNO055_ACCEL_RANGE_8G
0x03 BNO055_ACCEL_RANGE_16G
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_RANGE, BNO055_ACCEL_RANGE_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_sleep_durn ( u8 sleep_durn_u8)

This API used to read the accel sleep duration from page one register from 0x0C bit 1 to 4.

Parameters
v_sleep_durn_u8: The value of accel sleep duration
v_sleep_durn_u8 result
0x05 BNO055_ACCEL_SLEEP_DURN_0_5MS
0x06 BNO055_ACCEL_SLEEP_DURN_1MS
0x07 BNO055_ACCEL_SLEEP_DURN_2MS
0x08 BNO055_ACCEL_SLEEP_DURN_4MS
0x09 BNO055_ACCEL_SLEEP_DURN_6MS
0x0A BNO055_ACCEL_SLEEP_DURN_10MS
0x0B BNO055_ACCEL_SLEEP_DURN_25MS
0x0C BNO055_ACCEL_SLEEP_DURN_50MS
0x0D BNO055_ACCEL_SLEEP_DURN_100MS
0x0E BNO055_ACCEL_SLEEP_DURN_500MS
0x0F BNO055_ACCEL_SLEEP_DURN_1S
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
sleep_durn_u8: The value of accel sleep duration
sleep_durn_u8 result
0x05 BNO055_ACCEL_SLEEP_DURN_0_5MS
0x06 BNO055_ACCEL_SLEEP_DURN_1MS
0x07 BNO055_ACCEL_SLEEP_DURN_2MS
0x08 BNO055_ACCEL_SLEEP_DURN_4MS
0x09 BNO055_ACCEL_SLEEP_DURN_6MS
0x0A BNO055_ACCEL_SLEEP_DURN_10MS
0x0B BNO055_ACCEL_SLEEP_DURN_25MS
0x0C BNO055_ACCEL_SLEEP_DURN_50MS
0x0D BNO055_ACCEL_SLEEP_DURN_100MS
0x0E BNO055_ACCEL_SLEEP_DURN_500MS
0x0F BNO055_ACCEL_SLEEP_DURN_1S
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_SLEEP_DURN_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_sleep_tmr_mode ( u8 sleep_tmr_u8)

This API used to read the accel sleep mode from page one register from 0x0C bit 0.

Parameters
v_sleep_tmr_u8: The value of accel sleep mode
v_sleep_tmr_u8 result
0x00 enable EventDrivenSampling(EDT)
0x01 enable Equidistant sampling mode(EST)
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
sleep_tmr_u8: The value of accel sleep mode
sleep_tmr_u8 result
0x00 enable EventDrivenSampling(EDT)
0x01 enable Equidistant sampling mode(EST)
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_SLEEP_MODE_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_slow_no_motion_durn ( u8 accel_slow_no_motion_durn_u8)

This API used to read accel slownomotion duration from page one register from 0x16 bit 1 to 6.

Parameters
v_accel_slow_no_motion_durn_u8: The value of accel slownomotion duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_slow_no_motion_durn_u8: The value of accel slownomotion duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_SLOW_NO_MOTION_DURN_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_slow_no_motion_enable ( u8 accel_slow_no_motion_en_u8)

This API used to read accel slownomotion enable from page one register from 0x16 bit 0.

Parameters
v_accel_slow_no_motion_en_u8: The value of accel slownomotion enable
v_accel_slow_no_motion_en_u8 result
0x01 Slow motion
0x00 No motion
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_slow_no_motion_en_u8: The value of accel slownomotion enable
accel_slow_no_motion_en_u8 result
0x01 Slow motion
0x00 No motion
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_SLOW_NO_MOTION_ENABLE_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_slow_no_motion_thres ( u8 accel_slow_no_motion_thres_u8)

This API used to read the accel slownomotion threshold from page one register from 0x15 bit 0 to 7.

Parameters
v_accel_slow_no_motion_thres_u8: The value of accel slownomotion threshold
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Accel slow no motion interrupt threshold dependent for accel g range
v_accel_range_u8 threshold LSB
2g 3.19mg 1LSB
4g 7.81mg 1LSB
8g 15.63mg 1LSB
16g 31.25mg 1LSB
Parameters
accel_slow_no_motion_thres_u8: The value of accel slownomotion threshold
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Accel slow no motion interrupt threshold dependent for accel g range
accel_range_u8 threshold LSB
2g 3.19mg 1LSB
4g 7.81mg 1LSB
8g 15.63mg 1LSB
16g 31.25mg 1LSB

References BNO055_ACCEL_SLOW_NO_MOTION_THRES_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_accel_unit ( u8 accel_unit_u8)

This API used to read the accel unit from register from 0x3B bit 0.

Parameters
v_accel_unit_u8: The value of accel unit
v_accel_unit_u8 result
0x00 ACCEL_UNIT_MSQ
0x01 ACCEL_UNIT_MG
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_unit_u8: The value of accel unit
accel_unit_u8 result
0x00 BNO055_ACCEL_UNIT_MSQ
0x01 BNO055_ACCEL_UNIT_MG
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_UNIT_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_axis_remap_value ( u8 remap_axis_u8)

This API used to read the axis remap value from register from 0x41 bit 0 and 5.

Parameters
v_remap_axis_u8: The value of axis remapping
v_remap_axis_u8 result comments
0X21 REMAP_X_Y Z=Z;X=Y;Y=X
0X18 REMAP_Y_Z X=X;Y=Z;Z=Y
0X06 REMAP_Z_X Y=Y;X=Z;Z=X
0X12 REMAP_X_Y_Z_TYPE0 X=Z;Y=X;Z=Y
0X09 REMAP_X_Y_Z_TYPE1 X=Y;Y=Z;Z=X
0X24 DEFAULT_AXIS X=X;Y=Y;Z=Z
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
: For axis sign remap refer the following functions x-axis :

bno055_set_x_remap_sign()

y-axis :

bno055_set_y_remap_sign()

z-axis :

bno055_set_z_remap_sign()

Parameters
remap_axis_u8: The value of axis remapping
remap_axis_u8 result comments
0X21 BNO055_REMAP_X_Y Z=Z;X=Y;Y=X
0X18 BNO055_REMAP_Y_Z X=X;Y=Z;Z=Y
0X06 BNO055_REMAP_Z_X Y=Y;X=Z;Z=X
0X12 BNO055_REMAP_X_Y_Z_TYPE0 X=Z;Y=X;Z=Y
0X09 BNO055_REMAP_X_Y_Z_TYPE1 X=Y;Y=Z;Z=X
0X24 BNO055_DEFAULT_AXIS X=X;Y=Y;Z=Z
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
: For axis sign remap refer the following APIs x-axis :

bno055_set_x_remap_sign()

y-axis :

bno055_set_y_remap_sign()

z-axis :

bno055_set_z_remap_sign()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_REMAP_AXIS_VALUE_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_clk_src ( u8 clk_src_u8)

This API used to read the clk source from register from 0x3F bit 7.

Parameters
v_clk_src_u8: The value of clk source
v_clk_src_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
clk_src_u8: The value of clk source
clk_src_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_CLK_SRC_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_data_output_format ( u8 data_output_format_u8)

This API used to read the current selected orientation mode from register from 0x3B bit 7.

Parameters
v_data_output_format_u8: The value of data output format
v_data_output_format_u8 result
0x00 Windows
0x01 Android
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
data_output_format_u8: The value of data output format
data_output_format_u8 result
0x00 Windows
0x01 Android
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_DATA_OUTPUT_FORMAT_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_euler_unit ( u8 euler_unit_u8)

This API used to read the Euler unit from register from 0x3B bit 2.

Parameters
v_euler_unit_u8: The value of accel unit
v_euler_unit_u8 result
0x00 EULER_UNIT_DEG
0x01 EULER_UNIT_RAD
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
euler_unit_u8: The value of accel unit
euler_unit_u8 result
0x00 BNO055_EULER_UNIT_DEG
0x01 BNO055_EULER_UNIT_RAD
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_EULER_UNIT_REG, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_any_motion_awake_durn ( u8 gyro_awake_durn_u8)

This API used to read gyro anymotion awake duration from page one register from 0x1F bit 2 to 3.

Parameters
v_gyro_awake_durn_u8: The value of gyro anymotion awake duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_awake_durn_u8: The value of gyro anymotion awake duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_AWAKE_DURN_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_any_motion_axis_enable ( u8  channel_u8,
u8 data_u8 
)

This API used to read the gyro anymotion enable from page one register from 0x17 bit 0 to 2.

Parameters
v_data_u8: The value of gyro anymotion enable
v_data_u8 result
0x01 ENABLED
0x00 DISABLED
v_channel_u8: The value of gyro anymotion axis selection
v_channel_u8 value
BNO055_GYRO_ANY_MOTIONX_AXIS 0
BNO055_GYRO_ANY_MOTIONY_AXIS 1
BNO055_GYRO_ANY_MOTIONZ_AXIS 2
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
data_u8: The value of gyro anymotion enable
data_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
channel_u8: The value of gyro anymotion axis selection
channel_u8 value
BNO055_GYRO_ANY_MOTIONX_AXIS 0
BNO055_GYRO_ANY_MOTIONY_AXIS 1
BNO055_GYRO_ANY_MOTIONZ_AXIS 2
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_ANY_MOTION_X_AXIS, BNO055_GYRO_ANY_MOTION_X_AXIS_REG, BNO055_GYRO_ANY_MOTION_Y_AXIS, BNO055_GYRO_ANY_MOTION_Y_AXIS_REG, BNO055_GYRO_ANY_MOTION_Z_AXIS, BNO055_GYRO_ANY_MOTION_Z_AXIS_REG, BNO055_INIT_VALUE, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_any_motion_filter ( u8 gyro_any_motion_filter_u8)

This API used to read gyro anymotion filter from page one register from 0x17 bit 6.

Parameters
v_gyro_any_motion_filter_u8: The value of gyro anymotion filter
v_gyro_any_motion_filter_u8 result
0x00 FILTERED
0x01 UNFILTERED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_any_motion_filter_u8: The value of gyro anymotion filter
gyro_any_motion_filter_u8 result
0x00 BNO055_GYRO_FILTERED_CONFIG
0x01 BNO055_GYRO_UNFILTERED_CONFIG
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_ANY_MOTION_FILTER_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_any_motion_slope_samples ( u8 gyro_any_motion_slope_samples_u8)

This API used to read gyro anymotion slope samples from page one register from 0x1F bit 0 to 1.

Parameters
v_gyro_any_motion_slope_samples_u8: The value of gyro anymotion slope samples
v_gyro_any_motion_slope_samples_u8 result
0 8 samples
1 16 samples
2 32 samples
3 64 samples
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_any_motion_slope_samples_u8: The value of gyro anymotion slope samples
gyro_any_motion_slope_samples_u8 result
0 8 samples
1 16 samples
2 32 samples
3 64 samples
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_SLOPE_SAMPLES_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_any_motion_thres ( u8 gyro_any_motion_thres_u8)

This API used to read gyro anymotion threshold from page one register from 0x1E bit 0 to 6.

Parameters
v_gyro_any_motion_thres_u8: The value of gyro anymotion threshold
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro anymotion interrupt threshold dependent on the selection of gyro range
v_gyro_range_u8 threshold LSB
2000 1dps 1LSB
1000 0.5dps 1LSB
500 0.25dps 1LSB
Parameters
gyro_any_motion_thres_u8: The value of gyro anymotion threshold
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro anymotion interrupt threshold dependent on the selection of gyro range
gyro_range_u8 threshold LSB
2000 1dps 1LSB
1000 0.5dps 1LSB
500 0.25dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_ANY_MOTION_THRES_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_auto_sleep_durn ( u8 auto_sleep_durn_u8)

This API used to read the gyro auto sleep duration from page one register from 0x0D bit 3 to 5.

Parameters
v_auto_sleep_durn_u8: The value of gyro auto sleep duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
auto_sleep_durn_u8: The value of gyro auto sleep duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_AUTO_SLEEP_DURN_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

Referenced by bno055_set_gyro_bw(), and bno055_set_gyro_power_mode().

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_bw ( u8 gyro_bw_u8)

This API used to read the gyro bandwidth from page one register from 0x0A bit 3 to 5.

Parameters
v_gyro_bw_u8: The value of gyro bandwidth
v_gyro_bw_u8 result
0x00 GYRO_BW_523HZ
0x01 GYRO_BW_230HZ
0x02 GYRO_BW_116HZ
0x03 GYRO_BW_47HZ
0x04 GYRO_BW_23HZ
0x05 GYRO_BW_12HZ
0x06 GYRO_BW_64HZ
0x07 GYRO_BW_32HZ
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_bw_u8: The value of gyro bandwidth
gyro_bw_u8 result
0x00 BNO055_GYRO_BW_523HZ
0x01 BNO055_GYRO_BW_230HZ
0x02 BNO055_GYRO_BW_116HZ
0x03 BNO055_GYRO_BW_47HZ
0x04 BNO055_GYRO_BW_23HZ
0x05 BNO055_GYRO_BW_12HZ
0x06 BNO055_GYRO_BW_64HZ
0x07 BNO055_GYRO_BW_32HZ
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_BW_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

Referenced by bno055_set_gyro_power_mode().

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_calib_stat ( u8 gyro_calib_u8)

This API used to read gyro calibration status from register from 0x35 bit 4 and 5.

Parameters
v_gyro_calib_u8: The value of gyro calib status
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_calib_u8: The value of gyro calib status
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_CALIB_STAT_REG, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_axis_enable ( u8  channel_u8,
u8 data_u8 
)

This API used to read the gyro highrate enable from page one register from 0x17 bit 3 to 5.

Parameters
v_data_u8: The value of gyro highrate enable
v_data_u8 result
0x01 ENABLED
0x00 DISABLED
v_channel_u8: The value of gyro highrate axis selection
v_channel_u8 value
BNO055_GYRO_HIGHRATE_X_AXIS 0
BNO055_GYRO_HIGHRATE_Y_AXIS 1
BNO055_GYRO_HIGHRATE_Z_AXIS 2
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
data_u8: The value of gyro highrate enable
data_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
channel_u8: The value of gyro highrate axis selection
channel_u8 value
BNO055_GYRO_HIGHRATE_X_AXIS 0
BNO055_GYRO_HIGHRATE_Y_AXIS 1
BNO055_GYRO_HIGHRATE_Z_AXIS 2
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_HIGHRATE_X_AXIS, BNO055_GYRO_HIGHRATE_X_AXIS_REG, BNO055_GYRO_HIGHRATE_Y_AXIS, BNO055_GYRO_HIGHRATE_Y_AXIS_REG, BNO055_GYRO_HIGHRATE_Z_AXIS, BNO055_GYRO_HIGHRATE_Z_AXIS_REG, BNO055_INIT_VALUE, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_filter ( u8 gyro_highrate_filter_u8)

This API used to read gyro highrate filter from page one register from 0x17 bit 7.

Parameters
v_gyro_highrate_filter_u8: The value of gyro highrate filter
v_gyro_highrate_filter_u8 result
0x00 FILTERED
0x01 UNFILTERED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_highrate_filter_u8: The value of gyro highrate filter
gyro_highrate_filter_u8 result
0x00 BNO055_GYRO_FILTERED_CONFIG
0x01 BNO055_GYRO_UNFILTERED_CONFIG
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_HIGHRATE_FILTER_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_x_durn ( u8 gyro_highrate_x_durn_u8)

This API used to read gyro highrate x duration from page one register from 0x19 bit 0 to 7.

Parameters
v_gyro_highrate_x_durn_u8: The value of gyro highrate x duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro highrate duration calculate by using the formula

(1 + v_gyro_highrate_x_durn_u8)*2.5ms

Parameters
gyro_highrate_x_durn_u8: The value of gyro highrate x duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro highrate duration calculate by using the formula

(1 + gyro_highrate_x_durn_u8)*2.5ms

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_HIGHRATE_X_DURN_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_x_hyst ( u8 gyro_highrate_x_hyst_u8)

This API used to read gyro highrate x hysteresis from page one register from 0x18 bit 5 to 6.

Parameters
v_gyro_highrate_x_hyst_u8: The value of gyro highrate x hysteresis
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro high rate hysteresis calculated by

using this (255 + 256 * v_gyro_highrate_x_hyst_u8) *4 LSB

The high rate value scales with the range setting

v_gyro_range_u8 hysteresis LSB
2000 62.26dps 1LSB
1000 31.13dps 1LSB
500 15.56dps 1LSB
Parameters
gyro_highrate_x_hyst_u8: The value of gyro highrate x hysteresis
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro high rate hysteresis calculated by

using this (255 + 256 * gyro_highrate_x_hyst_u8) *4 LSB

The high rate value scales with the range setting

gyro_range_u8 hysteresis LSB
2000 62.26dps 1LSB
1000 31.13dps 1LSB
500 15.56dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_HIGHRATE_X_HYST_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_x_thres ( u8 gyro_highrate_x_thres_u8)

This API used to read gyro highrate x threshold from page one register from 0x18 bit 0 to 4.

Parameters
v_gyro_highrate_x_thres_u8: The value of gyro x highrate threshold
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro highrate threshold dependent on the selection of gyro range
v_gyro_range_u8 threshold LSB
2000 62.5dps 1LSB
1000 31.25dps 1LSB
500 15.625dps 1LSB
125 7.8125dps 1LSB
Parameters
gyro_highrate_x_thres_u8: The value of gyro x highrate threshold
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro highrate threshold dependent on the selection of gyro range
gyro_range_u8 threshold LSB
2000 62.5dps 1LSB
1000 31.25dps 1LSB
500 15.625dps 1LSB
125 7.8125dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_HIGHRATE_X_THRES_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_y_durn ( u8 gyro_highrate_y_durn_u8)

This API used to read gyro highrate y duration from page one register from 0x1B bit 0 to 7.

Parameters
v_gyro_highrate_y_durn_u8: The value of gyro highrate y duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro highrate duration calculate by using the formula

(1 + v_gyro_highrate_y_durn_u8)*2.5ms

Parameters
gyro_highrate_y_durn_u8: The value of gyro highrate y duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro highrate duration calculate by using the formula

(1 + gyro_highrate_y_durn_u8)*2.5ms

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_HIGHRATE_Y_DURN_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_y_hyst ( u8 gyro_highrate_y_hyst_u8)

This API used to read gyro highrate y hysteresis from page one register from 0x1A bit 5 to 6.

Parameters
v_gyro_highrate_y_hyst_u8: The value of gyro highrate y hysteresis
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro high rate hysteresis calculated by

using this (255 + 256 * v_gyro_highrate_y_hyst_u8) *4 LSB

The high rate value scales with the range setting

v_gyro_range_u8 hysteresis LSB
2000 62.26dps 1LSB
1000 31.13dps 1LSB
500 15.56dps 1LSB
Parameters
gyro_highrate_y_hyst_u8: The value of gyro highrate y hysteresis
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro high rate hysteresis calculated by

using this (255 + 256 * gyro_highrate_y_hyst_u8) *4 LSB

The high rate value scales with the range setting

gyro_range_u8 hysteresis LSB
2000 62.26dps 1LSB
1000 31.13dps 1LSB
500 15.56dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_HIGHRATE_Y_HYST_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_y_thres ( u8 gyro_highrate_y_thres_u8)

This API used to read gyro highrate y threshold from page one register from 0x1A bit 0 to 4.

Parameters
v_gyro_highrate_y_thres_u8: The value of gyro highrate y threshold
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro highrate threshold dependent on the selection of gyro range
v_gyro_range_u8 threshold LSB
2000 62.5dps 1LSB
1000 31.25dps 1LSB
500 15.625dps 1LSB
125 7.8125dps 1LSB
Parameters
gyro_highrate_y_thres_u8: The value of gyro highrate y threshold
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro highrate threshold dependent on the selection of gyro range
gyro_range_u8 threshold LSB
2000 62.5dps 1LSB
1000 31.25dps 1LSB
500 15.625dps 1LSB
125 7.8125dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_HIGHRATE_Y_THRES_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_z_durn ( u8 gyro_highrate_z_durn_u8)

This API used to read gyro highrate z duration from page one register from 0x1D bit 0 to 7.

Parameters
v_gyro_highrate_z_durn_u8: The value of gyro highrate z duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro highrate duration calculate by using the formula

(1 + v_gyro_highrate_z_durn_u8)*2.5ms

Parameters
gyro_highrate_z_durn_u8: The value of gyro highrate z duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro highrate duration calculate by using the formula

(1 + gyro_highrate_z_durn_u8)*2.5ms

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_HIGHRATE_Z_DURN_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_z_hyst ( u8 gyro_highrate_z_hyst_u8)

This API used to read gyro highrate z hysteresis from page one register from 0x1C bit 5 to 6.

Parameters
v_gyro_highrate_z_hyst_u8: The value of gyro highrate z hysteresis
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro high rate hysteresis calculated by

using this (255 + 256 * v_gyro_highrate_z_hyst_u8) *4 LSB

The high rate value scales with the range setting

v_gyro_range_u8 hysteresis LSB
2000 62.26dps 1LSB
1000 31.13dps 1LSB
500 15.56dps 1LSB
Parameters
gyro_highrate_z_hyst_u8: The value of gyro highrate z hysteresis
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro high rate hysteresis calculated by

using this (255 + 256 * gyro_highrate_z_hyst_u8) *4 LSB

The high rate value scales with the range setting

gyro_range_u8 hysteresis LSB
2000 62.26dps 1LSB
1000 31.13dps 1LSB
500 15.56dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_HIGHRATE_Z_HYST_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_highrate_z_thres ( u8 gyro_highrate_z_thres_u8)

This API used to read gyro highrate z threshold from page one register from 0x1C bit 0 to 4.

Parameters
v_gyro_highrate_z_thres_u8: The value of gyro highrate z threshold
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro highrate threshold dependent on the selection of gyro range
v_gyro_range_u8 threshold LSB
2000 62.5dps 1LSB
1000 31.25dps 1LSB
500 15.625dps 1LSB
125 7.8125dps 1LSB
Parameters
gyro_highrate_z_thres_u8: The value of gyro highrate z threshold
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro highrate threshold dependent on the selection of gyro range
gyro_range_u8 threshold LSB
2000 62.5dps 1LSB
1000 31.25dps 1LSB
500 15.625dps 1LSB
125 7.8125dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_HIGHRATE_Z_THRES_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_power_mode ( u8 gyro_power_mode_u8)

This API used to read the gyro power mode from page one register from 0x0B bit 0 to 2.

Parameters
v_gyro_power_mode_u8: The value of gyro power mode
v_gyro_power_mode_u8 result
0x00 GYRO_OPR_MODE_NORMAL
0x01 GYRO_OPR_MODE_FASTPOWERUP
0x02 GYRO_OPR_MODE_DEEPSUSPEND
0x03 GYRO_OPR_MODE_SUSPEND
0x04 GYRO_OPR_MODE_ADVANCE_POWERSAVE
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_power_mode_u8: The value of gyro power mode
gyro_power_mode_u8 result
0x00 GYRO_OPR_MODE_NORMAL
0x01 GYRO_OPR_MODE_FASTPOWERUP
0x02 GYRO_OPR_MODE_DEEPSUSPEND
0x03 GYRO_OPR_MODE_SUSPEND
0x04 GYRO_OPR_MODE_ADVANCE_POWERSAVE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_POWER_MODE_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

Referenced by bno055_set_gyro_bw().

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_range ( u8 gyro_range_u8)

This API used to read the gyro range from page one register from 0x0A bit 0 to 3.

Parameters
v_gyro_range_u8: The value of gyro range
v_gyro_range_u8 result
0x00 GYRO_RANGE_2000DPS
0x01 GYRO_RANGE_1000DPS
0x02 GYRO_RANGE_500DPS
0x03 GYRO_RANGE_250DPS
0x04 GYRO_RANGE_125DPS
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_range_u8: The value of gyro range
gyro_range_u8 result
0x00 BNO055_GYRO_RANGE_2000DPS
0x01 BNO055_GYRO_RANGE_1000DPS
0x02 BNO055_GYRO_RANGE_500DPS
0x03 BNO055_GYRO_RANGE_250DPS
0x04 BNO055_GYRO_RANGE_125DPS
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_RANGE, BNO055_GYRO_RANGE_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_sleep_durn ( u8 sleep_durn_u8)

This API used to write the gyro sleep duration from page one register from 0x0D bit 0 to 2.

Parameters
v_sleep_durn_u8: The value of gyro sleep duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
sleep_durn_u8: The value of gyro sleep duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_SLEEP_DURN_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_gyro_unit ( u8 gyro_unit_u8)

This API used to read the gyro unit from register from 0x3B bit 1.

Parameters
v_gyro_unit_u8: The value of accel unit
v_gyro_unit_u8 result
0x00 GYRO_UNIT_DPS
0x01 GYRO_UNIT_RPS
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_unit_u8: The value of accel unit
gyro_unit_u8 result
0x00 BNO055_GYRO_UNIT_DPS
0x01 BNO055_GYRO_UNIT_RPS
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_UNIT_REG, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_accel_any_motion ( u8 accel_any_motion_u8)

This API used to read the accel anymotion interrupt from page one register from 0x10 bit 6.

Parameters
v_accel_any_motion_u8: The value of accel anymotion interrupt
v_accel_any_motion_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the accel anymotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Duration:

bno055_set_accel_any_motion_durn()

Threshold:

bno055_set_accel_any_motion_thres()

Parameters
accel_any_motion_u8: The value of accel anymotion interrupt
accel_any_motion_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the accel anymotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Duration:

bno055_set_accel_any_motion_durn()

Threshold:

bno055_set_accel_any_motion_thres()

References BNO055_ACCEL_ANY_MOTION_INTR_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_accel_high_g ( u8 accel_high_g_u8)

This API used to read the accel highg interrupt from page one register from 0x10 bit 5.

Parameters
v_accel_high_g_u8: The value of accel highg interrupt
v_accel_high_g_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the accel highg interrupt configure the below settings by using the following functions

Axis :

bno055_set_accel_high_g_axis_enable()

Threshold :

bno055_set_accel_high_g_thres()

Duration :

bno055_set_accel_high_g_durn()

Parameters
accel_high_g_u8: The value of accel highg interrupt
accel_high_g_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the accel highg interrupt configure the below settings by using the following APIs

Axis :

bno055_set_accel_high_g_axis_enable()

Threshold :

bno055_set_accel_high_g_thres()

Duration :

bno055_set_accel_high_g_durn()

References BNO055_ACCEL_HIGH_G_INTR_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_accel_no_motion ( u8 accel_nomotion_u8)

This API used to read the accel nomotion interrupt from page one register from 0x10 bit 6.

Parameters
v_accel_nomotion_u8: The value of accel nomotion interrupt
v_accel_nomotion_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the accel nomotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Threshold :

bno055_set_accel_slow_no_motion_thres()

Duration :

bno055_set_accel_slow_no_motion_durn()

Slow/no motion enable:

bno055_set_accel_slow_no_motion_enable()

Parameters
accel_nomotion_u8: The value of accel nomotion interrupt
accel_nomotion_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the accel nomotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Threshold :

bno055_set_accel_slow_no_motion_thres()

Duration :

bno055_set_accel_slow_no_motion_durn()

Slow/no motion enable:

bno055_set_accel_slow_no_motion_enable()

References BNO055_ACCEL_NO_MOTION_INTR_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_gyro_any_motion ( u8 gyro_any_motion_u8)

This API used to read the gyro anymotion interrupt from page one register from 0x10 bit 2.

Parameters
v_gyro_any_motion_u8: The value of gyro anymotion interrupt
v_gyro_any_motion_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the gyro anymotion interrupt configure the following settings

Axis: bno055_set_gyro_any_motion_axis_enable()

Filter setting: bno055_set_gyro_any_motion_filter()

Threshold :

bno055_set_gyro_any_motion_thres()

Slope samples :

bno055_set_gyro_any_motion_slope_samples()

Awake duration :

bno055_set_gyro_any_motion_awake_durn()

Parameters
gyro_any_motion_u8: The value of gyro anymotion interrupt
gyro_any_motion_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the gyro anymotion interrupt configure the following settings

Axis: bno055_set_gyro_any_motion_axis_enable()

Filter setting: bno055_set_gyro_any_motion_filter()

Threshold :

bno055_set_gyro_any_motion_thres()

Slope samples :

bno055_set_gyro_any_motion_slope_samples()

Awake duration :

bno055_set_gyro_any_motion_awake_durn()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_ANY_MOTION_INTR_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_gyro_highrate ( u8 gyro_highrate_u8)

This API used to read the gyro highrate interrupt from page one register from 0x10 bit 3.

Parameters
v_gyro_highrate_u8: The value of gyro highrate interrupt
v_gyro_highrate_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the gyro highrate interrupt configure the below settings by using the following functions

Axis :

bno055_set_gyro_highrate_axis_enable()

Filter :

bno055_set_gyro_highrate_filter()

Threshold :

bno055_get_gyro_highrate_x_thres()

bno055_get_gyro_highrate_y_thres()

bno055_get_gyro_highrate_z_thres()

Hysteresis :

bno055_set_gyro_highrate_x_hyst()

bno055_set_gyro_highrate_y_hyst()

bno055_set_gyro_highrate_z_hyst()

Duration :

bno055_set_gyro_highrate_x_durn()

bno055_set_gyro_highrate_y_durn()

bno055_set_gyro_highrate_z_durn()

Parameters
gyro_highrate_u8: The value of gyro highrate interrupt
gyro_highrate_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the gyro highrate interrupt configure the below settings by using the following APIs

Axis :

bno055_set_gyro_highrate_axis_enable()

Filter :

bno055_set_gyro_highrate_filter()

Threshold :

bno055_get_gyro_highrate_x_thres()

bno055_get_gyro_highrate_y_thres()

bno055_get_gyro_highrate_z_thres()

Hysteresis :

bno055_set_gyro_highrate_x_hyst()

bno055_set_gyro_highrate_y_hyst()

bno055_set_gyro_highrate_z_hyst()

Duration :

bno055_set_gyro_highrate_x_durn()

bno055_set_gyro_highrate_y_durn()

bno055_set_gyro_highrate_z_durn()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_HIGHRATE_INTR_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_mask_accel_any_motion ( u8 accel_any_motion_u8)

This API used to read the accel anymotion interrupt mask from page one register from 0x0F bit 6.

Parameters
v_accel_any_motion_u8: The value of accel anymotion interrupt mask
v_accel_any_motion_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the accel highg interrupt configure the below settings by using the following functions

Axis :

bno055_set_accel_high_g_axis_enable()

Threshold :

bno055_set_accel_high_g_thres()

Duration :

bno055_set_accel_high_g_durn()

Parameters
accel_any_motion_u8: The value of accel anymotion interrupt mask
accel_any_motion_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the accel highg interrupt configure the below settings by using the following APIs

Axis :

bno055_set_accel_high_g_axis_enable()

Threshold :

bno055_set_accel_high_g_thres()

Duration :

bno055_set_accel_high_g_durn()

References BNO055_ACCEL_ANY_MOTION_INTR_MASK_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_mask_accel_high_g ( u8 accel_high_g_u8)

This API used to read the accel highg interrupt mask from page one register from 0x0F bit 5.

Parameters
v_accel_high_g_u8: The value of accel highg interrupt mask
v_accel_high_g_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the accel highg interrupt configure the below settings by using the following functions

Axis :

bno055_set_accel_high_g_axis_enable()

Threshold :

bno055_set_accel_high_g_thres()

Duration :

bno055_set_accel_high_g_durn()

Parameters
accel_high_g_u8: The value of accel highg interrupt mask
accel_high_g_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the accel highg interrupt configure the below settings by using the following APIs

Axis :

bno055_set_accel_high_g_axis_enable()

Threshold :

bno055_set_accel_high_g_thres()

Duration :

bno055_set_accel_high_g_durn()

References BNO055_ACCEL_HIGH_G_INTR_MASK_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_mask_accel_no_motion ( u8 accel_nomotion_u8)

This API used to read the accel nomotion interrupt mask from page one register from 0x0F bit 7.

Parameters
v_accel_nomotion_u8: The value of accel nomotion interrupt mask
v_accel_nomotion_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
Note
While enabling the accel anymotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Duration:

bno055_set_accel_any_motion_durn()

Threshold:

bno055_set_accel_any_motion_thres())

Parameters
accel_nomotion_u8: The value of accel nomotion interrupt mask
accel_nomotion_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
Note
While enabling the accel anymotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Duration:

bno055_set_accel_any_motion_durn()

Threshold:

bno055_set_accel_any_motion_thres())

References BNO055_ACCEL_NO_MOTION_INTR_MASK_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_mask_gyro_any_motion ( u8 gyro_any_motion_u8)

This API used to read the gyro anymotion interrupt mask from page one register from 0x0F bit 2.

Parameters
v_gyro_any_motion_u8: The value of gyro anymotion interrupt mask
v_gyro_any_motion_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the gyro anymotion interrupt configure the following settings

Axis: bno055_set_gyro_any_motion_axis_enable()

Filter setting: bno055_set_gyro_any_motion_filter()

Threshold :

bno055_set_gyro_any_motion_thres()

Slope samples :

bno055_set_gyro_any_motion_slope_samples()

Awake duration :

bno055_set_gyro_any_motion_awake_durn()

Parameters
gyro_any_motion_u8: The value of gyro anymotion interrupt mask
gyro_any_motion_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the gyro anymotion interrupt configure the following settings

Axis: bno055_set_gyro_any_motion_axis_enable()

Filter setting: bno055_set_gyro_any_motion_filter()

Threshold :

bno055_set_gyro_any_motion_thres()

Slope samples :

bno055_set_gyro_any_motion_slope_samples()

Awake duration :

bno055_set_gyro_any_motion_awake_durn()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_ANY_MOTION_INTR_MASK_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_mask_gyro_highrate ( u8 gyro_highrate_u8)

This API used to read the gyro highrate interrupt mask from page one register from 0x0F bit 3.

Parameters
v_gyro_highrate_u8: The value of gyro highrate interrupt mask
v_gyro_highrate_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the gyro highrate interrupt configure the below settings by using the following functions

Axis :

bno055_set_gyro_highrate_axis_enable()

Filter :

bno055_set_gyro_highrate_filter()

Threshold :

bno055_get_gyro_highrate_x_thres()

bno055_get_gyro_highrate_y_thres()

bno055_get_gyro_highrate_z_thres()

Hysteresis :

bno055_set_gyro_highrate_x_hyst()

bno055_set_gyro_highrate_y_hyst()

bno055_set_gyro_highrate_z_hyst()

Duration :

bno055_set_gyro_highrate_x_durn()

bno055_set_gyro_highrate_y_durn()

bno055_set_gyro_highrate_z_durn()

Parameters
gyro_highrate_u8: The value of gyro highrate interrupt mask
gyro_highrate_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the gyro highrate interrupt configure the below settings by using the following API

Axis :

bno055_set_gyro_highrate_axis_enable()

Filter :

bno055_set_gyro_highrate_filter()

Threshold :

bno055_get_gyro_highrate_x_thres()

bno055_get_gyro_highrate_y_thres()

bno055_get_gyro_highrate_z_thres()

Hysteresis :

bno055_set_gyro_highrate_x_hyst()

bno055_set_gyro_highrate_y_hyst()

bno055_set_gyro_highrate_z_hyst()

Duration :

bno055_set_gyro_highrate_x_durn()

bno055_set_gyro_highrate_y_durn()

bno055_set_gyro_highrate_z_durn()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_HIGHRATE_INTR_MASK_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_rst ( u8 intr_rst_u8)

This API used to read the reset interrupt from register from 0x3F bit 6 It resets all the interrupt bit and interrupt output.

Parameters
v_intr_rst_u8: The value of reset interrupt
v_intr_rst_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
intr_rst_u8: The value of reset interrupt
intr_rst_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_INTR_RST_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_accel_any_motion ( u8 accel_any_motion_u8)

This API used to read the v_stat_s8 of accel anymotion interrupt from register from 0x37 bit 6.

Parameters
v_accel_any_motion_u8: The value of accel anymotion interrupt
v_accel_any_motion_u8 result
0x00 indicates no interrupt triggered
0x01 indicates interrupt triggered
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Accel anymotion interrupt can be configured by the following APIs

bno055_set_intr_mask_accel_any_motion()

bno055_set_intr_accel_any_motion()

This API used to read the v_stat_s8 of accel anymotion interrupt from register from 0x37 bit 6.

Parameters
accel_any_motion_u8: The value of accel anymotion interrupt
accel_any_motion_u8 result
0x00 indicates no interrupt triggered
0x01 indicates interrupt triggered
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Accel anymotion interrupt can be configured by the following APIs

bno055_set_intr_mask_accel_any_motion()

bno055_set_intr_accel_any_motion()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_INTR_STAT_ACCEL_ANY_MOTION_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_accel_high_g ( u8 accel_high_g_u8)

This API used to read the v_stat_s8 of accel highg interrupt from register from 0x37 bit 5.

Parameters
v_accel_high_g_u8: The value of accel highg interrupt
v_accel_high_g_u8 result
0x00 indicates no interrupt triggered
0x01 indicates interrupt triggered
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Accel highg interrupt can be configured by the following APIs

bno055_set_intr_mask_accel_high_g()

bno055_set_intr_accel_high_g()

This API used to read the v_stat_s8 of accel highg interrupt from register from 0x37 bit 5.

This API used to read the status of accel highg interrupt from register from 0x37 bit 5.

Parameters
accel_high_g_u8: The value of accel highg interrupt
accel_high_g_u8 result
0x00 indicates no interrupt triggered
0x01 indicates interrupt triggered
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Accel highg interrupt can be configured by the following APIs

bno055_set_intr_mask_accel_high_g()

bno055_set_intr_accel_high_g()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_INTR_STAT_ACCEL_HIGH_G_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_accel_no_motion ( u8 accel_no_motion_u8)

This API used to read the v_stat_s8 of accel nomotion/slowmotion interrupt from register from 0x37 bit 6.

Parameters
v_accel_no_motion_u8: The value of accel nomotion/slowmotion interrupt
v_accel_no_motion_u8 result
0x00 indicates no interrupt triggered
0x01 indicates interrupt triggered
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Accel nomotion/slowmotion interrupt can be configured by the following APIs

bno055_set_intr_mask_accel_nomotion()

bno055_set_intr_accel_nomotion()

This API used to read the v_stat_s8 of accel nomotion/slowmotion interrupt from register from 0x37 bit 6.

Parameters
accel_no_motion_u8: The value of accel nomotion/slowmotion interrupt
accel_no_motion_u8 result
0x00 indicates no interrupt triggered
0x01 indicates interrupt triggered
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Accel nomotion/slowmotion interrupt can be configured by the following APIs

bno055_set_intr_mask_accel_nomotion()

bno055_set_intr_accel_nomotion()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_INTR_STAT_ACCEL_NO_MOTION_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_gyro_any_motion ( u8 gyro_any_motion_u8)

This API used to read the v_stat_s8 of gyro anymotion interrupt from register from 0x37 bit 2.

Parameters
v_gyro_any_motion_u8: The value of gyro anymotion interrupt
v_gyro_any_motion_u8 result
0x00 indicates no interrupt triggered
0x01 indicates interrupt triggered
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro anymotion interrupt can be enabled by the following APIs

bno055_set_intr_mask_gyro_any_motion()

bno055_set_intr_gyro_any_motion()

This API used to read the v_stat_s8 of gyro anymotion interrupt from register from 0x37 bit 2.

Parameters
gyro_any_motion_u8: The value of gyro anymotion interrupt
gyro_any_motion_u8 result
0x00 indicates no interrupt triggered
0x01 indicates interrupt triggered
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro anymotion interrupt can be BNO055_BIT_ENABLE by the following APIs

bno055_set_intr_mask_gyro_any_motion()

bno055_set_intr_gyro_any_motion()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_INTR_STAT_GYRO_ANY_MOTION_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_gyro_highrate ( u8 gyro_highrate_u8)

This API used to read the v_stat_s8 of gyro highrate interrupt from register from 0x37 bit 3.

Parameters
v_gyro_highrate_u8: The value of gyro highrate interrupt
v_gyro_highrate_u8 result
0x00 indicates no interrupt triggered
0x01 indicates interrupt triggered
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro highrate interrupt can be configured by the following APIs

bno055_set_intr_mask_gyro_highrate()

bno055_set_intr_gyro_highrate()

This API used to read the v_stat_s8 of gyro highrate interrupt from register from 0x37 bit 3.

Parameters
gyro_highrate_u8: The value of gyro highrate interrupt
gyro_highrate_u8 result
0x00 indicates no interrupt triggered
0x01 indicates interrupt triggered
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro highrate interrupt can be configured by the following APIs

bno055_set_intr_mask_gyro_highrate()

bno055_set_intr_gyro_highrate()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_INTR_STAT_GYRO_HIGHRATE_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_mag_calib_stat ( u8 mag_calib_u8)

This API used to read mag calibration status from register from 0x35 bit 0 and 1.

Parameters
v_mag_calib_u8: The value of mag calib status
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
mag_calib_u8: The value of mag calib status
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_MAG_CALIB_STAT_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_mag_data_output_rate ( u8 mag_data_output_rate_u8)

This API used to read the mag output data rate from page one register from 0x09 bit 0 to 2.

Parameters
v_mag_data_output_rate_u8: The value of mag output data rate
v_mag_data_output_rate_u8 result
0x00 MAG_DATA_OUTPUT_RATE_2HZ
0x01 MAG_DATA_OUTPUT_RATE_6HZ
0x02 MAG_DATA_OUTPUT_RATE_8HZ
0x03 MAG_DATA_OUTPUT_RATE_10HZ
0x04 MAG_DATA_OUTPUT_RATE_15HZ
0x05 MAG_DATA_OUTPUT_RATE_20HZ
0x06 MAG_DATA_OUTPUT_RATE_25HZ
0x07 MAG_DATA_OUTPUT_RATE_30HZ
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
mag_data_output_rate_u8: The value of mag output data rate
mag_data_output_rate_u8 result
0x00 MAG_DATA_OUTPUT_RATE_2HZ
0x01 MAG_DATA_OUTPUT_RATE_6HZ
0x02 MAG_DATA_OUTPUT_RATE_8HZ
0x03 MAG_DATA_OUTPUT_RATE_10HZ
0x04 MAG_DATA_OUTPUT_RATE_15HZ
0x05 MAG_DATA_OUTPUT_RATE_20HZ
0x06 MAG_DATA_OUTPUT_RATE_25HZ
0x07 MAG_DATA_OUTPUT_RATE_30HZ
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_MAG_DATA_OUTPUT_RATE_REG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_mag_operation_mode ( u8 mag_operation_mode_u8)

This API used to read the mag operation mode from page one register from 0x09 bit 3 to 4.

Parameters
v_mag_operation_mode_u8: The value of mag operation mode
v_mag_operation_mode_u8 result
0x00 MAG_OPR_MODE_LOWPOWER
0x01 MAG_OPR_MODE_REGULAR
0x02 MAG_OPR_MODE_ENHANCED_REGULAR
0x03 MAG_OPR_MODE_HIGH_ACCURACY
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
mag_operation_mode_u8: The value of mag operation mode
mag_operation_mode_u8 result
0x00 MAG_OPR_MODE_LOWPOWER
0x01 MAG_OPR_MODE_REGULAR
0x02 MAG_OPR_MODE_ENHANCED_REGULAR
0x03 MAG_OPR_MODE_HIGH_ACCURACY
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_MAG_OPERATION_MODE_REG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_mag_power_mode ( u8 mag_power_mode_u8)

This API used to read the mag power mode from page one register from 0x09 bit 4 to 6.

Parameters
v_mag_power_mode_u8: The value of mag power mode
v_mag_power_mode_u8 result
0x00 MAG_POWER_MODE_NORMAL
0x01 MAG_POWER_MODE_SLEEP
0x02 MAG_POWER_MODE_SUSPEND
0x03 MAG_POWER_MODE_FORCE_MODE
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
mag_power_mode_u8: The value of mag power mode
mag_power_mode_u8 result
0x00 BNO055_MAG_POWER_MODE_NORMAL
0x01 BNO055_MAG_POWER_MODE_SLEEP
0x02 BNO055_MAG_POWER_MODE_SUSPEND
0x03 BNO055_MAG_POWER_MODE_FORCE_MODE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_MAG_POWER_MODE_REG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_mag_sleep_durn ( u8 sleep_durn_u8)

This API used to read the mag sleep duration from page one register from 0x0E bit 1 to 4.

Parameters
v_sleep_durn_u8: The value of mag sleep duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
sleep_durn_u8: The value of mag sleep duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_MAG_SLEEP_DURN_REG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_mag_sleep_mode ( u8 sleep_mode_u8)

This API used to read the mag sleep mode from page one register from 0x0E bit 0.

Parameters
v_sleep_mode_u8: The value of mag sleep mode
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
sleep_mode_u8: The value of mag sleep mode
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_MAG_SLEEP_MODE_REG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_operation_mode ( u8 operation_mode_u8)

This API used to read the operation mode from register from 0x3D bit 0 to 3.

Parameters
v_operation_mode_u8: The value of operation mode
v_operation_mode_u8 result comments
0x00 OPERATION_MODE_CONFIG Configuration mode
0x01 OPERATION_MODE_ACCONLY Reads accel data alone
0x02 OPERATION_MODE_MAGONLY Reads mag data alone
0x03 OPERATION_MODE_GYRONLY Reads gyro data alone
0x04 OPERATION_MODE_ACCMAG Reads accel and mag data
0x05 OPERATION_MODE_ACCGYRO Reads accel and gyro data
0x06 OPERATION_MODE_MAGGYRO Reads accel and mag data
0x07 OPERATION_MODE_ANY_MOTION Reads accel mag and gyro data
0x08 OPERATION_MODE_IMUPLUS Inertial measurement unit
- - Reads accel,gyro and fusion data
0x09 OPERATION_MODE_COMPASS Reads accel, mag data
- - and fusion data
0x0A OPERATION_MODE_M4G Reads accel, mag data
- - and fusion data
0x0B OPERATION_MODE_NDOF_FMC_OFFNine degrees of freedom with
- - fast magnetic calibration
- - Reads accel,mag, gyro
- - and fusion data
0x0C OPERATION_MODE_NDOF Nine degrees of freedom
- - Reads accel,mag, gyro
- - and fusion data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
In the config mode, all sensor and fusion data becomes zero and it is mainly derived to configure the various settings of the BNO
Parameters
operation_mode_u8: The value of operation mode
operation_mode_u8 result comments
0x00 BNO055_OPERATION_MODE_CONFIG Configuration mode
0x01 BNO055_OPERATION_MODE_ACCONLY Reads accel data alone
0x02 BNO055_OPERATION_MODE_MAGONLY Reads mag data alone
0x03 BNO055_OPERATION_MODE_GYRONLY Reads gyro data alone
0x04 BNO055_OPERATION_MODE_ACCMAG Reads accel and mag data
0x05 BNO055_OPERATION_MODE_ACCGYRO Reads accel and gyro data
0x06 BNO055_OPERATION_MODE_MAGGYRO Reads accel and mag data
0x07 OPERATION_MODE_ANY_MOTION Reads accel mag and gyro data
0x08 BNO055_OPERATION_MODE_IMUPLUS Inertial measurement unit
- - Reads accel,gyro and fusion data
0x09 BNO055_OPERATION_MODE_COMPASS Reads accel, mag data
- - and fusion data
0x0A BNO055_OPERATION_MODE_M4G Reads accel, mag data
- - and fusion data
0x0B BNO055_OPERATION_MODE_NDOF_FMC_OFFNine degrees of freedom with
- - fast magnetic calibration
- - Reads accel,mag, gyro
- - and fusion data
0x0C BNO055_OPERATION_MODE_NDOF Nine degrees of freedom
- - Reads accel,mag, gyro
- - and fusion data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
In the config mode, all sensor and fusion data becomes zero and it is mainly derived to configure the various settings of the BNO

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

Referenced by bno055_gyro_set_auto_sleep_durn(), bno055_set_accel_any_motion_durn(), bno055_set_accel_any_motion_no_motion_axis_enable(), bno055_set_accel_any_motion_thres(), bno055_set_accel_bw(), bno055_set_accel_high_g_axis_enable(), bno055_set_accel_high_g_durn(), bno055_set_accel_high_g_thres(), bno055_set_accel_power_mode(), bno055_set_accel_range(), bno055_set_accel_sleep_durn(), bno055_set_accel_sleep_tmr_mode(), bno055_set_accel_slow_no_motion_durn(), bno055_set_accel_slow_no_motion_enable(), bno055_set_accel_slow_no_motion_thres(), bno055_set_accel_unit(), bno055_set_axis_remap_value(), bno055_set_data_output_format(), bno055_set_euler_unit(), bno055_set_gyro_any_motion_awake_durn(), bno055_set_gyro_any_motion_axis_enable(), bno055_set_gyro_any_motion_filter(), bno055_set_gyro_any_motion_slope_samples(), bno055_set_gyro_any_motion_thres(), bno055_set_gyro_bw(), bno055_set_gyro_highrate_axis_enable(), bno055_set_gyro_highrate_filter(), bno055_set_gyro_highrate_x_durn(), bno055_set_gyro_highrate_x_hyst(), bno055_set_gyro_highrate_x_thres(), bno055_set_gyro_highrate_y_durn(), bno055_set_gyro_highrate_y_hyst(), bno055_set_gyro_highrate_y_thres(), bno055_set_gyro_highrate_z_durn(), bno055_set_gyro_highrate_z_hyst(), bno055_set_gyro_highrate_z_thres(), bno055_set_gyro_power_mode(), bno055_set_gyro_range(), bno055_set_gyro_sleep_durn(), bno055_set_gyro_unit(), bno055_set_mag_data_output_rate(), bno055_set_mag_operation_mode(), bno055_set_mag_power_mode(), bno055_set_mag_sleep_durn(), bno055_set_mag_sleep_mode(), bno055_set_operation_mode(), bno055_set_power_mode(), bno055_set_remap_x_sign(), bno055_set_remap_y_sign(), bno055_set_remap_z_sign(), bno055_set_selftest(), bno055_set_temp_source(), bno055_set_temp_unit(), bno055_set_tilt_unit(), bno055_write_accel_offset(), bno055_write_gyro_offset(), bno055_write_mag_offset(), and bno055_write_sic_matrix().

BNO055_RETURN_FUNCTION_TYPE bno055_get_power_mode ( u8 power_mode_u8)

This API used to read the power mode from register from 0x3E bit 0 to 1.

Parameters
v_power_mode_u8: The value of power mode
v_power_mode_u8result comments
0x00 POWER_MODE_NORMAL In the NORMAL mode the register
- - map and the internal peripherals
- - of the MCU are always
- - operative in this mode
0x01 POWER_MODE_LOWPOWER This is first level of power saving mode
0x02 POWER_MODE_SUSPEND In suspend mode the system is
- - paused and all the sensors and
- - the micro controller are
- - put into sleep mode.
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
For detailed about LOWPOWER mode refer data sheet 3.4.2
Parameters
power_mode_u8: The value of power mode
power_mode_u8result comments
0x00 BNO055_POWER_MODE_NORMAL In the NORMAL mode the register
- - map and the internal peripherals
- - of the MCU are always
- - operative in this mode
0x01 BNO055_POWER_MODE_LOWPOWER This is first level of power

| - | saving mode 0x02 |BNO055_POWER_MODE_SUSPEND | In suspend mode the system is

  • | - | paused and all the sensors and
  • | - | the micro controller are
  • | - | put into sleep mode.
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
For detailed about LOWPOWER mode refer data sheet 3.4.2

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_POWER_MODE_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_remap_x_sign ( u8 remap_x_sign_u8)

This API used to read the x-axis remap sign from register from 0x42 bit 2.

Parameters
v_remap_x_sign_u8: The value of x-axis remap sign
v_remap_x_sign_u8 result
0X00 REMAP_AXIS_POSITIVE
0X01 REMAP_AXIS_NEGATIVE
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
remap_x_sign_u8: The value of x-axis remap sign
remap_x_sign_u8 result
0X00 BNO055_REMAP_AXIS_POSITIVE
0X01 BNO055_REMAP_AXIS_NEGATIVE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_REMAP_X_SIGN_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_remap_y_sign ( u8 remap_y_sign_u8)

This API used to read the y-axis remap sign from register from 0x42 bit 1.

Parameters
v_remap_y_sign_u8: The value of y-axis remap sign
v_remap_y_sign_u8 result
0X00 REMAP_AXIS_POSITIVE
0X01 REMAP_AXIS_NEGATIVE
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
remap_y_sign_u8: The value of y-axis remap sign
remap_y_sign_u8 result
0X00 BNO055_REMAP_AXIS_POSITIVE
0X01 BNO055_REMAP_AXIS_NEGATIVE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_REMAP_Y_SIGN_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_remap_z_sign ( u8 remap_z_sign_u8)

This API used to read the z-axis remap sign from register from 0x42 bit 0.

Parameters
v_remap_z_sign_u8: The value of z-axis remap sign
v_remap_z_sign_u8 result
0X00 REMAP_AXIS_POSITIVE
0X01 REMAP_AXIS_NEGATIVE
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
remap_z_sign_u8: The value of z-axis remap sign
remap_z_sign_u8 result
0X00 BNO055_REMAP_AXIS_POSITIVE
0X01 BNO055_REMAP_AXIS_NEGATIVE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_REMAP_Z_SIGN_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_selftest ( u8 selftest_u8)

This API used to read the self test from register from 0x3F bit 0.

Parameters
v_selftest_u8: The value of self test
v_selftest_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
It triggers the self test
Parameters
selftest_u8: The value of self test
selftest_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
It triggers the self test

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SELFTEST_REG, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_selftest_accel ( u8 selftest_accel_u8)

This API used to read self test of accel from register from 0x36 bit 0.

Parameters
v_selftest_accel_u8: The value of self test of accel
v_selftest_accel_u8 result
0x00 indicates test failed
0x01 indicated test passed
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
selftest_accel_u8: The value of self test of accel
selftest_accel_u8 result
0x00 indicates test failed
0x01 indicated test passed
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SELFTEST_ACCEL_REG, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_selftest_gyro ( u8 selftest_gyro_u8)

This API used to read self test of gyro from register from 0x36 bit 2.

Parameters
v_selftest_gyro_u8: The value of self test of gyro
v_selftest_gyro_u8 result
0x00 indicates test failed
0x01 indicated test passed
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
selftest_gyro_u8: The value of self test of gyro
selftest_gyro_u8 result
0x00 indicates test failed
0x01 indicated test passed
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SELFTEST_GYRO_REG, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_selftest_mag ( u8 selftest_mag_u8)

This API used to read self test of mag from register from 0x36 bit 1.

Parameters
v_selftest_mag_u8: The value of self test of mag
v_selftest_mag_u8 result
0x00 indicates test failed
0x01 indicated test passed
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
selftest_mag_u8: The value of self test of mag
selftest_mag_u8 result
0x00 indicates test failed
0x01 indicated test passed
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SELFTEST_MAG_REG, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_selftest_mcu ( u8 selftest_mcu_u8)

This API used to read self test of micro controller from register from 0x36 bit 3.

Parameters
v_selftest_mcu_u8: The value of self test of micro controller
v_selftest_mcu_u8 result
0x00 indicates test failed
0x01 indicated test passed
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
selftest_mcu_u8: The value of self test of micro controller
selftest_mcu_u8 result
0x00 indicates test failed
0x01 indicated test passed
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SELFTEST_MCU_REG, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_stat_main_clk ( u8 stat_main_clk_u8)

This API is used to read status of main clock from the register 0x38 bit 0.

Parameters
v_stat_main_clk_u8: the status of main clock
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
stat_main_clk_u8: the status of main clock
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, BNO055_SYS_MAIN_CLK_REG, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_sys_calib_stat ( u8 sys_calib_u8)

This API used to read system calibration status from register from 0x35 bit 6 and 7.

Parameters
v_sys_calib_u8: The value of system calib status
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
sys_calib_u8: The value of system calib status
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, BNO055_SYS_CALIB_STAT_REG, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_sys_error_code ( u8 sys_error_u8)

This API is used to read system error code from the register 0x3A it is a byte of data.

Parameters
v_sys_error_u8: The value of system error code
Returns
results of bus communication function
Return values
0-> Success
1-> Error

This API is used to read system error code from the register 0x3A it is a byte of data.

Parameters
sys_error_u8: The value of system BNO055_ERROR code
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, BNO055_SYS_ERROR_CODE_REG, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_sys_rst ( u8 sys_rst_u8)

This API used to read the reset system from register from 0x3F bit 5.

Parameters
v_sys_rst_u8: The value of reset system
v_sys_rst_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
It resets the whole system
Parameters
sys_rst_u8: The value of reset system
sys_rst_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
It resets the whole system

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, BNO055_SYS_RST_REG, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_sys_stat_code ( u8 sys_stat_u8)

This API is used to read system status code from the register 0x39 it is a byte of data.

Parameters
v_sys_stat_u8: the status of system
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
sys_stat_u8: the status of system
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, BNO055_SYS_STAT_CODE_REG, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_temp_source ( u8 temp_source_u8)

This API used to read the temperature source from register from 0x40 bit 0 and 1.

Parameters
v_temp_source_u8: The value of selected temperature source
v_temp_source_u8 result
0x00 ACCEL_TEMP_EN
0X01 GYRO_TEMP_EN
0X03 MCU_TEMP_EN
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
temp_source_u8: The value of selected temperature source
temp_source_u8 result
0x00 BNO055_ACCEL_TEMP_EN
0X01 BNO055_GYRO_TEMP_EN
0X03 BNO055_MCU_TEMP_EN
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, BNO055_TEMP_SOURCE_REG, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_temp_unit ( u8 temp_unit_u8)

This API used to read the temperature unit from register from 0x3B bit 4.

Parameters
v_temp_unit_u8: The value of temperature unit
v_temp_unit_u8 result
0x00 TEMP_UNIT_CELCIUS
0x01 TEMP_UNIT_FAHRENHEIT
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
temp_unit_u8: The value of temperature unit
temp_unit_u8 result
0x00 BNO055_TEMP_UNIT_CELSIUS
0x01 BNO055_TEMP_UNIT_FAHRENHEIT
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, BNO055_TEMP_UNIT_REG, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_get_tilt_unit ( u8 tilt_unit_u8)

This API used to write the tilt unit from register from 0x3B bit 3.

Parameters
v_tilt_unit_u8: The value of tilt unit
v_tilt_unit_u8 result
0x00 degrees
0x01 radians
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
tilt_unit_u8: The value of tilt unit
tilt_unit_u8 result
0x00 degrees
0x01 radians
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, BNO055_TILT_UNIT_REG, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_gyro_set_auto_sleep_durn ( u8  auto_sleep_durn_u8,
u8  bw 
)

This API used to write the gyro auto sleep duration from page one register from 0x0D bit 3 to 5.

Parameters
v_auto_sleep_durn_u8: The value of gyro auto sleep duration
bw: The value of gyro bandwidth
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
auto_sleep_durn_u8: The value of gyro auto sleep duration
bw: The value of gyro bandwidth
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_10MS_AUTOSLPDUR, BNO055_GYRO_20MS_AUTOSLPDUR, BNO055_GYRO_4MS_AUTOSLPDUR, BNO055_GYRO_5MS_AUTOSLPDUR, BNO055_GYRO_AUTO_SLEEP_DURATION_RANGE, BNO055_GYRO_AUTO_SLEEP_DURN_REG, BNO055_GYRO_BW_116HZ, BNO055_GYRO_BW_12HZ, BNO055_GYRO_BW_230HZ, BNO055_GYRO_BW_23HZ, BNO055_GYRO_BW_32HZ, BNO055_GYRO_BW_47HZ, BNO055_GYRO_BW_523HZ, BNO055_GYRO_BW_64HZ, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

Referenced by bno055_set_gyro_bw(), and bno055_set_gyro_power_mode().

BNO055_RETURN_FUNCTION_TYPE bno055_init ( struct bno055_t bno055)

This function is used for initialize bus read, bus write function pointers,device address,accel revision id, gyro revision id mag revision id, software revision id, boot loader revision id and page id.

Parameters
bno055- structure pointer
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While changing the parameter of the bno055_t consider the following point: Changing the reference value of the parameter will changes the local copy or local reference make sure your changes will not affect the reference value of the parameter (Better case don't change the reference value of the parameter)

This function is used for initialize bus read, bus write function pointers,device address,accel revision id, gyro revision id mag revision id, software revision id, boot loader revision id and page id.

Parameters
bno055- structure pointer
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While changing the parameter of the bno055_t consider the following point: Changing the reference value of the parameter will changes the local copy or local reference make sure your changes will not affect the reference value of the parameter (Better case don't change the reference value of the parameter)

References bno055_t::accel_rev_id, bno055_t::bl_rev_id, BNO055_ACCEL_REV_ID_REG, BNO055_BL_REV_ID_REG, BNO055_CHIP_ID_REG, bno055_delay_msek(), BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_GYRO_REV_ID_REG, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_MAG_REV_ID_REG, BNO055_PAGE_ID_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_REV_ID_SIZE, BNO055_SHIFT_EIGHT_BITS, BNO055_SW_ID_LSB, BNO055_SW_ID_MSB, BNO055_SW_REV_ID_LSB_REG, bno055_t::chip_id, bno055_t::dev_addr, bno055_t::gyro_rev_id, bno055_t::mag_rev_id, bno055_t::page_id, and bno055_t::sw_rev_id.

Referenced by bno055_initialize().

BNO055_RETURN_FUNCTION_TYPE bno055_read_accel_offset ( struct bno055_accel_offset_t accel_offset)

This API is used to read accel offset and accel radius offset form register 0x55 to 0x5A and radius form 0x67 and 0x68.

Parameters
accel_offset: The value of accel offset and radius
bno055_accel_offset_t |     result
------------------- | ----------------
         x          |  accel offset x
         y          |  accel offset y
         z          |  accel offset z
         r          |  accel offset r
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
The range of the accel offset varies based on the G-range of accel sensor.
accel G range offset range
ACCEL_RANGE_2G +/-2000
ACCEL_RANGE_4G +/-4000
ACCEL_RANGE_8G +/-8000
ACCEL_RANGE_16G +/-16000

accel G range can be configured by using the bno055_set_accel_range() function

Parameters
accel_offset: The value of accel offset and radius
bno055_accel_offset_t |     result
------------------- | ----------------
         x          |  accel offset x
         y          |  accel offset y
         z          |  accel offset z
         r          |  accel offset r
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
The range of the accel offset varies based on the G-range of accel sensor.
accel G range offset range
BNO055_ACCEL_RANGE_2G +/-2000
BNO055_ACCEL_RANGE_4G +/-4000
BNO055_ACCEL_RANGE_8G +/-8000
BNO055_ACCEL_RANGE_16G +/-16000

accel G range can be configured by using the bno055_set_accel_range() API

References BNO055_ACCEL_OFFSET_ARRAY, BNO055_ACCEL_OFFSET_X_LSB_REG, BNO055_ACCEL_RADIUS_LSB_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_OFFSET_RADIUS_LSB, BNO055_OFFSET_RADIUS_MSB, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_OFFSET_DATA_X_LSB, BNO055_SENSOR_OFFSET_DATA_X_MSB, BNO055_SENSOR_OFFSET_DATA_Y_LSB, BNO055_SENSOR_OFFSET_DATA_Y_MSB, BNO055_SENSOR_OFFSET_DATA_Z_LSB, BNO055_SENSOR_OFFSET_DATA_Z_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, bno055_t::page_id, bno055_accel_offset_t::r, bno055_accel_offset_t::x, bno055_accel_offset_t::y, and bno055_accel_offset_t::z.

BNO055_RETURN_FUNCTION_TYPE bno055_read_accel_rev_id ( u8 accel_rev_id_u8)

This API reads accel revision id from register 0x01 it is a byte of value.

Parameters
v_accel_rev_id_u8: The accel revision id 0xFB
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_rev_id_u8: The accel revision id 0xFB
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_REV_ID_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_accel_x ( s16 accel_x_s16)

This API reads acceleration data X values from register 0x08 and 0x09 it is a two byte data.

Parameters
v_accel_x_s16: The X raw data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_x_s16: The X raw data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_DATA_SIZE, BNO055_ACCEL_DATA_X_LSB_VALUEX_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

Referenced by bno055_initialize().

BNO055_RETURN_FUNCTION_TYPE bno055_read_accel_xyz ( struct bno055_accel_t accel)

This API reads acceleration data xyz values from register 0x08 to 0x0D it is a six byte data.

Parameters
accel: The value of accel xyz data
Parameter result
x The accel x data
y The accel y data
z The accel z data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel: The value of accel xyz data
Parameter result
x The accel x data
y The accel y data
z The accel z data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_DATA_X_LSB_VALUEX_REG, BNO055_ACCEL_XYZ_DATA_SIZE, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_XYZ_X_LSB, BNO055_SENSOR_DATA_XYZ_X_MSB, BNO055_SENSOR_DATA_XYZ_Y_LSB, BNO055_SENSOR_DATA_XYZ_Y_MSB, BNO055_SENSOR_DATA_XYZ_Z_LSB, BNO055_SENSOR_DATA_XYZ_Z_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, bno055_t::page_id, bno055_accel_t::x, bno055_accel_t::y, and bno055_accel_t::z.

Referenced by bno055_initialize(), and main().

BNO055_RETURN_FUNCTION_TYPE bno055_read_accel_y ( s16 accel_y_s16)

This API reads acceleration data Y values from register 0x0A and 0x0B it is a two byte data.

Parameters
v_accel_y_s16: The Y raw data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_y_s16: The Y raw data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_DATA_SIZE, BNO055_ACCEL_DATA_Y_LSB_VALUEY_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

Referenced by bno055_initialize().

BNO055_RETURN_FUNCTION_TYPE bno055_read_accel_z ( s16 accel_z_s16)

This API reads acceleration data z values from register 0x0C and 0x0D it is a two byte data.

Parameters
v_accel_z_s16: The z raw data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_z_s16: The z raw data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_DATA_SIZE, BNO055_ACCEL_DATA_Z_LSB_VALUEZ_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

Referenced by bno055_initialize().

BNO055_RETURN_FUNCTION_TYPE bno055_read_bl_rev_id ( u8 bl_rev_id_u8)

This API used to read boot loader revision id from register 0x06 it is a byte of value.

Parameters
v_bl_rev_id_u8: The boot loader revision id
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
bl_rev_id_u8: The boot loader revision id
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_BL_REV_ID_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_chip_id ( u8 chip_id_u8)

This API reads chip id from register 0x00 it is a byte of data.

Parameters
v_chip_id_u8: The chip id value 0xA0
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
chip_id_u8: The chip id value 0xA0
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_CHIP_ID_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_euler_h ( s16 euler_h_s16)

This API reads gyro data z values from register 0x1A and 0x1B it is a two byte data.

Parameters
v_euler_h_s16: The raw h data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
euler_h_s16: The raw h data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_EULER_DATA_SIZE, BNO055_EULER_H_LSB_VALUEH_REG, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_EULER_LSB, BNO055_SENSOR_DATA_EULER_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_euler_hrp ( struct bno055_euler_t euler)

This API reads Euler data hrp values from register 0x1A to 0x1F it is a six byte data.

Parameters
euler: The Euler hrp data's
Parameter result
h The Euler h data
r The Euler r data
p The Euler p data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
euler: The Euler hrp data's
Parameter result
h The Euler h data
r The Euler r data
p The Euler p data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_EULER_H_LSB_VALUEH_REG, BNO055_EULER_HRP_DATA_SIZE, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_EULER_HRP_H_LSB, BNO055_SENSOR_DATA_EULER_HRP_H_MSB, BNO055_SENSOR_DATA_EULER_HRP_P_LSB, BNO055_SENSOR_DATA_EULER_HRP_P_MSB, BNO055_SENSOR_DATA_EULER_HRP_R_LSB, BNO055_SENSOR_DATA_EULER_HRP_R_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, bno055_euler_t::h, bno055_euler_t::p, bno055_t::page_id, and bno055_euler_t::r.

BNO055_RETURN_FUNCTION_TYPE bno055_read_euler_p ( s16 euler_p_s16)

This API reads Euler data p values from register 0x1E and 0x1F it is a two byte data.

Parameters
v_euler_p_s16: The raw p data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
euler_p_s16: The raw p data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_EULER_DATA_SIZE, BNO055_EULER_P_LSB_VALUEP_REG, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_EULER_LSB, BNO055_SENSOR_DATA_EULER_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_euler_r ( s16 euler_r_s16)

This API reads Euler data r values from register 0x1C and 0x1D it is a two byte data.

Parameters
v_euler_r_s16: The raw r data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
euler_r_s16: The raw r data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_EULER_DATA_SIZE, BNO055_EULER_R_LSB_VALUER_REG, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_EULER_LSB, BNO055_SENSOR_DATA_EULER_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_gravity_x ( s16 gravity_x_s16)

This API reads gravity data x values from register 0x2E and 0x2F it is a two byte data.

Parameters
v_gravity_x_s16: The raw x data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gravity_x_s16: The raw x data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_GRAVITY_DATA_SIZE, BNO055_GRAVITY_DATA_X_LSB_VALUEX_REG, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_gravity_xyz ( struct bno055_gravity_t gravity)

This API reads gravity data xyz values from register 0x2E to 0x33 it is a six byte data.

Parameters
gravity: The value of gravity xyz data's
Parameter result
x The gravity x data
y The gravity y data
z The gravity z data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gravity: The value of gravity xyz data's
Parameter result
x The gravity x data
y The gravity y data
z The gravity z data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_GRAVITY_DATA_X_LSB_VALUEX_REG, BNO055_GRAVITY_XYZ_DATA_SIZE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_XYZ_X_LSB, BNO055_SENSOR_DATA_XYZ_X_MSB, BNO055_SENSOR_DATA_XYZ_Y_LSB, BNO055_SENSOR_DATA_XYZ_Y_MSB, BNO055_SENSOR_DATA_XYZ_Z_LSB, BNO055_SENSOR_DATA_XYZ_Z_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, bno055_t::page_id, bno055_gravity_t::x, bno055_gravity_t::y, and bno055_gravity_t::z.

BNO055_RETURN_FUNCTION_TYPE bno055_read_gravity_y ( s16 gravity_y_s16)

This API reads gravity data y values from register 0x30 and 0x31 it is a two byte data.

Parameters
v_gravity_y_s16: The raw y data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gravity_y_s16: The raw y data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_GRAVITY_DATA_SIZE, BNO055_GRAVITY_DATA_Y_LSB_VALUEY_REG, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_gravity_z ( s16 gravity_z_s16)

This API reads gravity data z values from register 0x32 and 0x33 it is a two byte data.

Parameters
v_gravity_z_s16: The raw z data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gravity_z_s16: The raw z data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_GRAVITY_DATA_SIZE, BNO055_GRAVITY_DATA_Z_LSB_VALUEZ_REG, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_gyro_offset ( struct bno055_gyro_offset_t gyro_offset)

This API is used to read gyro offset offset form register 0x61 to 0x66.

Parameters
gyro_offset: The value of gyro offset
bno055_gyro_offset_t  |     result
------------------- | ----------------
         x          |  gyro offset x
         y          |  gyro offset y
         z          |  gyro offset z
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
The range of the gyro offset varies based on the range of gyro sensor
gyro G range offset range
GYRO_RANGE_2000DPS +/-32000
GYRO_RANGE_1000DPS +/-16000
GYRO_RANGE_500DPS +/-8000
GYRO_RANGE_250DPS +/-4000
GYRO_RANGE_125DPS +/-2000

Gyro range can be configured by using the bno055_set_gyro_range() function

Parameters
gyro_offset: The value of gyro offset
bno055_gyro_offset_t  |     result
------------------- | ----------------
         x          |  gyro offset x
         y          |  gyro offset y
         z          |  gyro offset z
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
The range of the gyro offset varies based on the range of gyro sensor
gyro G range offset range
BNO055_GYRO_RANGE_2000DPS +/-32000
BNO055_GYRO_RANGE_1000DPS +/-16000
BNO055_GYRO_RANGE_500DPS +/-8000
BNO055_GYRO_RANGE_250DPS +/-4000
BNO055_GYRO_RANGE_125DPS +/-2000

Gyro range can be configured by using the bno055_set_gyro_range() API

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_GYRO_OFFSET_ARRAY, BNO055_GYRO_OFFSET_X_LSB_REG, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_OFFSET_DATA_X_LSB, BNO055_SENSOR_OFFSET_DATA_X_MSB, BNO055_SENSOR_OFFSET_DATA_Y_LSB, BNO055_SENSOR_OFFSET_DATA_Y_MSB, BNO055_SENSOR_OFFSET_DATA_Z_LSB, BNO055_SENSOR_OFFSET_DATA_Z_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, bno055_t::page_id, bno055_gyro_offset_t::x, bno055_gyro_offset_t::y, and bno055_gyro_offset_t::z.

BNO055_RETURN_FUNCTION_TYPE bno055_read_gyro_rev_id ( u8 gyro_rev_id_u8)

This API reads gyro revision id from register 0x03 it is a byte of value.

Parameters
v_gyro_rev_id_u8: The gyro revision id 0xF0
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_rev_id_u8: The gyro revision id 0xF0
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GYRO_REV_ID_REG, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_gyro_x ( s16 gyro_x_s16)

This API reads gyro data x values from register 0x14 and 0x15 it is a two byte data.

Parameters
v_gyro_x_s16: The x raw data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_x_s16: The x raw data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_GYRO_DATA_SIZE, BNO055_GYRO_DATA_X_LSB_VALUEX_REG, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_gyro_xyz ( struct bno055_gyro_t gyro)

This API reads gyro data xyz values from register 0x14 to 0x19 it is a six byte data.

Parameters
gyro: The value of gyro xyz data's
Parameter result
x The gyro x data
y The gyro y data
z The gyro z data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro: The value of gyro xyz data's
Parameter result
x The gyro x data
y The gyro y data
z The gyro z data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_GYRO_DATA_X_LSB_VALUEX_REG, BNO055_GYRO_XYZ_DATA_SIZE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_XYZ_X_LSB, BNO055_SENSOR_DATA_XYZ_X_MSB, BNO055_SENSOR_DATA_XYZ_Y_LSB, BNO055_SENSOR_DATA_XYZ_Y_MSB, BNO055_SENSOR_DATA_XYZ_Z_LSB, BNO055_SENSOR_DATA_XYZ_Z_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, bno055_t::page_id, bno055_gyro_t::x, bno055_gyro_t::y, and bno055_gyro_t::z.

Referenced by main().

BNO055_RETURN_FUNCTION_TYPE bno055_read_gyro_y ( s16 gyro_y_s16)

This API reads gyro data y values from register 0x16 and 0x17 it is a two byte data.

Parameters
v_gyro_y_s16: The y raw data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_y_s16: The y raw data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_GYRO_DATA_SIZE, BNO055_GYRO_DATA_Y_LSB_VALUEY_REG, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_gyro_z ( s16 gyro_z_s16)

This API reads gyro data z values from register 0x18 and 0x19 it is a two byte data.

Parameters
v_gyro_z_s16: The z raw data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_z_s16: The z raw data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_GYRO_DATA_SIZE, BNO055_GYRO_DATA_Z_LSB_VALUEZ_REG, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_linear_accel_x ( s16 linear_accel_x_s16)

This API reads Linear accel data x values from register 0x29 and 0x2A it is a two byte data.

Parameters
v_linear_accel_x_s16: The raw x data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
linear_accel_x_s16: The raw x data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_DATA_SIZE, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX_REG, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_linear_accel_xyz ( struct bno055_linear_accel_t linear_accel)

This API reads Linear accel data xyz values from register 0x28 to 0x2D it is a six byte data.

Parameters
linear_accel: The value of linear accel xyz data's
Parameter result
x The linear accel x data
y The linear accel y data
z The linear accel z data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
linear_accel: The value of linear accel xyz data's
Parameter result
x The linear accel x data
y The linear accel y data
z The linear accel z data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_XYZ_DATA_SIZE, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_XYZ_X_LSB, BNO055_SENSOR_DATA_XYZ_X_MSB, BNO055_SENSOR_DATA_XYZ_Y_LSB, BNO055_SENSOR_DATA_XYZ_Y_MSB, BNO055_SENSOR_DATA_XYZ_Z_LSB, BNO055_SENSOR_DATA_XYZ_Z_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, bno055_t::page_id, bno055_linear_accel_t::x, bno055_linear_accel_t::y, and bno055_linear_accel_t::z.

BNO055_RETURN_FUNCTION_TYPE bno055_read_linear_accel_y ( s16 linear_accel_y_s16)

This API reads Linear accel data x values from register 0x2B and 0x2C it is a two byte data.

Parameters
v_linear_accel_y_s16: The raw y data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
linear_accel_y_s16: The raw y data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_DATA_SIZE, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LINEAR_ACCEL_DATA_Y_LSB_VALUEY_REG, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_linear_accel_z ( s16 linear_accel_z_s16)

This API reads Linear accel data x values from register 0x2C and 0x2D it is a two byte data.

Parameters
v_linear_accel_z_s16: The raw z data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
linear_accel_z_s16: The raw z data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_DATA_SIZE, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LINEAR_ACCEL_DATA_Z_LSB_VALUEZ_REG, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_mag_offset ( struct bno055_mag_offset_t mag_offset)

This API is used to read mag offset offset form register 0x69 to 0x6A.

Parameters
mag_offset: The value of mag offset and radius
bno055_mag_offset_t   |     result
------------------- | ----------------
         x          |  mag offset x
         y          |  mag offset y
         z          |  mag offset z
         r          |  mag radius r
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
The range of the magnetometer offset is +/-6400 in LSB
Parameters
mag_offset: The value of mag offset and radius
bno055_mag_offset_t   |     result
------------------- | ----------------
         x          |  mag offset x
         y          |  mag offset y
         z          |  mag offset z
         r          |  mag radius r
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
The range of the magnetometer offset is +/-6400 in LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_MAG_OFFSET_ARRAY, BNO055_MAG_OFFSET_X_LSB_REG, BNO055_MAG_RADIUS_LSB_REG, BNO055_OFFSET_RADIUS_LSB, BNO055_OFFSET_RADIUS_MSB, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_OFFSET_DATA_X_LSB, BNO055_SENSOR_OFFSET_DATA_X_MSB, BNO055_SENSOR_OFFSET_DATA_Y_LSB, BNO055_SENSOR_OFFSET_DATA_Y_MSB, BNO055_SENSOR_OFFSET_DATA_Z_LSB, BNO055_SENSOR_OFFSET_DATA_Z_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, bno055_t::page_id, bno055_mag_offset_t::r, bno055_mag_offset_t::x, bno055_mag_offset_t::y, and bno055_mag_offset_t::z.

BNO055_RETURN_FUNCTION_TYPE bno055_read_mag_rev_id ( u8 mag_rev_id_u8)

This API reads mag revision id from register 0x02 it is a byte of value.

Parameters
v_mag_rev_id_u8: The mag revision id 0x32
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
mag_rev_id_u8: The mag revision id 0x32
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_MAG_REV_ID_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_mag_x ( s16 mag_x_s16)

This API reads mag data x values from register 0x0E and 0x0F it is a two byte data.

Parameters
v_mag_x_s16: The x raw data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
mag_x_s16: The x raw data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_MAG_DATA_SIZE, BNO055_MAG_DATA_X_LSB_VALUEX_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_mag_xyz ( struct bno055_mag_t mag)

This API reads mag data xyz values from register 0x0E to 0x13 it is a six byte data.

Parameters
mag: The mag xyz values
Parameter result
x The mag x data
y The mag y data
z The mag z data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
mag: The mag xyz values
Parameter result
x The mag x data
y The mag y data
z The mag z data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_MAG_DATA_X_LSB_VALUEX_REG, BNO055_MAG_XYZ_DATA_SIZE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_XYZ_X_LSB, BNO055_SENSOR_DATA_XYZ_X_MSB, BNO055_SENSOR_DATA_XYZ_Y_LSB, BNO055_SENSOR_DATA_XYZ_Y_MSB, BNO055_SENSOR_DATA_XYZ_Z_LSB, BNO055_SENSOR_DATA_XYZ_Z_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, bno055_t::page_id, bno055_mag_t::x, bno055_mag_t::y, and bno055_mag_t::z.

BNO055_RETURN_FUNCTION_TYPE bno055_read_mag_y ( s16 mag_y_s16)

This API reads mag data y values from register 0x10 and 0x11 it is a two byte data.

Parameters
v_mag_y_s16: The y raw data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
mag_y_s16: The y raw data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_MAG_DATA_SIZE, BNO055_MAG_DATA_Y_LSB_VALUEY_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_mag_z ( s16 mag_z_s16)

This API reads mag data z values from register 0x12 and 0x13 it is a two byte data.

Parameters
v_mag_z_s16: The z raw data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
mag_z_s16: The z raw data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_MAG_DATA_SIZE, BNO055_MAG_DATA_Z_LSB_VALUEZ_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_LSB, BNO055_SENSOR_DATA_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_page_id ( u8 page_id_u8)

This API reads page id from register 0x07 it is a byte of data.

Parameters
v_page_id_u8: The value of page id

PAGE_ZERO -> 0x00 PAGE_ONE -> 0x01

Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
page_id_u8: The value of page id

BNO055_PAGE_ZERO -> 0x00 BNO055_PAGE_ONE -> 0x01

Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ID_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_quaternion_w ( s16 quaternion_w_s16)

This API reads quaternion data w values from register 0x20 and 0x21 it is a two byte data.

Parameters
v_quaternion_w_s16: The raw w data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
quaternion_w_s16: The raw w data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_QUATERNION_DATA_SIZE, BNO055_QUATERNION_DATA_W_LSB_VALUEW_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_QUATERNION_LSB, BNO055_SENSOR_DATA_QUATERNION_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_quaternion_wxyz ( struct bno055_quaternion_t quaternion)

This API reads Quaternion data wxyz values from register 0x20 to 0x27 it is a six byte data.

Parameters
quaternion: The value of quaternion wxyz data's
Parameter result
w The quaternion w data
x The quaternion x data
y The quaternion y data
z The quaternion z data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
quaternion: The value of quaternion wxyz data's
Parameter result
w The quaternion w data
x The quaternion x data
y The quaternion y data
z The quaternion z data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_QUATERNION_DATA_W_LSB_VALUEW_REG, BNO055_QUATERNION_WXYZ_DATA_SIZE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_QUATERNION_WXYZ_W_LSB, BNO055_SENSOR_DATA_QUATERNION_WXYZ_W_MSB, BNO055_SENSOR_DATA_QUATERNION_WXYZ_X_LSB, BNO055_SENSOR_DATA_QUATERNION_WXYZ_X_MSB, BNO055_SENSOR_DATA_QUATERNION_WXYZ_Y_LSB, BNO055_SENSOR_DATA_QUATERNION_WXYZ_Y_MSB, BNO055_SENSOR_DATA_QUATERNION_WXYZ_Z_LSB, BNO055_SENSOR_DATA_QUATERNION_WXYZ_Z_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, bno055_t::page_id, bno055_quaternion_t::w, bno055_quaternion_t::x, bno055_quaternion_t::y, and bno055_quaternion_t::z.

BNO055_RETURN_FUNCTION_TYPE bno055_read_quaternion_x ( s16 quaternion_x_s16)

This API reads quaternion data x values from register 0x22 and 0x23 it is a two byte data.

Parameters
v_quaternion_x_s16: The raw x data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
quaternion_x_s16: The raw x data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_QUATERNION_DATA_SIZE, BNO055_QUATERNION_DATA_X_LSB_VALUEX_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_QUATERNION_LSB, BNO055_SENSOR_DATA_QUATERNION_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_quaternion_y ( s16 quaternion_y_s16)

This API reads quaternion data y values from register 0x24 and 0x25 it is a two byte data.

Parameters
v_quaternion_y_s16: The raw y data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
quaternion_y_s16: The raw y data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_QUATERNION_DATA_SIZE, BNO055_QUATERNION_DATA_Y_LSB_VALUEY_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_QUATERNION_LSB, BNO055_SENSOR_DATA_QUATERNION_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_quaternion_z ( s16 quaternion_z_s16)

This API reads quaternion data z values from register 0x26 and 0x27 it is a two byte data.

Parameters
v_quaternion_z_s16: The raw z data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
quaternion_z_s16: The raw z data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_QUATERNION_DATA_SIZE, BNO055_QUATERNION_DATA_Z_LSB_VALUEZ_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SENSOR_DATA_QUATERNION_LSB, BNO055_SENSOR_DATA_QUATERNION_MSB, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_register ( u8  addr_u8,
u8 data_u8,
u8  len_u8 
)

This API reads the data from the given register address.

Parameters
v_addr_u8: Address of the register
p_data_u8: address of the variable, read value will be kept
v_len_u8: Length of the data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
addr_u8: Address of the register
data_u8: address of the variable, read value will be kept
len_u8: Length of the data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_INIT_VALUE, BNO055_RETURN_FUNCTION_TYPE, and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_read_sic_matrix ( struct bno055_sic_matrix_t sic_matrix)

This API is used to read soft iron calibration matrix from the register 0x43 to 0x53 it is a 18 bytes of data.

Parameters
sic_matrix: The value of soft iron calibration matrix
sic_matrix result
sic_0 soft iron calibration matrix zero
sic_1 soft iron calibration matrix one
sic_2 soft iron calibration matrix two
sic_3 soft iron calibration matrix three
sic_4 soft iron calibration matrix four
sic_5 soft iron calibration matrix five
sic_6 soft iron calibration matrix six
sic_7 soft iron calibration matrix seven
sic_8 soft iron calibration matrix eight
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
: Each soft iron calibration matrix range from -32768 to +32767
Parameters
sic_matrix: The value of soft iron calibration matrix
sic_matrix result
sic_0 soft iron calibration matrix zero
sic_1 soft iron calibration matrix one
sic_2 soft iron calibration matrix two
sic_3 soft iron calibration matrix three
sic_4 soft iron calibration matrix four
sic_5 soft iron calibration matrix five
sic_6 soft iron calibration matrix six
sic_7 soft iron calibration matrix seven
sic_8 soft iron calibration matrix eight
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
: Each soft iron calibration matrix range from -32768 to +32767

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SHIFT_EIGHT_BITS, BNO055_SIC_MATRIX_0_LSB_REG, BNO055_SOFT_IRON_CALIB_0_LSB, BNO055_SOFT_IRON_CALIB_0_MSB, BNO055_SOFT_IRON_CALIB_1_LSB, BNO055_SOFT_IRON_CALIB_1_MSB, BNO055_SOFT_IRON_CALIB_2_LSB, BNO055_SOFT_IRON_CALIB_2_MSB, BNO055_SOFT_IRON_CALIB_3_LSB, BNO055_SOFT_IRON_CALIB_3_MSB, BNO055_SOFT_IRON_CALIB_4_LSB, BNO055_SOFT_IRON_CALIB_4_MSB, BNO055_SOFT_IRON_CALIB_5_LSB, BNO055_SOFT_IRON_CALIB_5_MSB, BNO055_SOFT_IRON_CALIB_6_LSB, BNO055_SOFT_IRON_CALIB_6_MSB, BNO055_SOFT_IRON_CALIB_7_LSB, BNO055_SOFT_IRON_CALIB_7_MSB, BNO055_SOFT_IRON_CALIB_8_LSB, BNO055_SOFT_IRON_CALIB_8_MSB, BNO055_SOFT_IRON_CALIBRATION_MATRIX_SIZE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, bno055_t::page_id, bno055_sic_matrix_t::sic_0, bno055_sic_matrix_t::sic_1, bno055_sic_matrix_t::sic_2, bno055_sic_matrix_t::sic_3, bno055_sic_matrix_t::sic_4, bno055_sic_matrix_t::sic_5, bno055_sic_matrix_t::sic_6, bno055_sic_matrix_t::sic_7, and bno055_sic_matrix_t::sic_8.

BNO055_RETURN_FUNCTION_TYPE bno055_read_sw_rev_id ( u16 sw_id_u8)

This API reads software revision id from register 0x04 and 0x05 it is a two byte of data.

Parameters
v_sw_id_u8: The SW revision id
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
sw_id_u8: The SW revision id
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GET_BITSLICE, BNO055_INIT_VALUE, BNO055_LSB_MSB_READ_LENGTH, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_REV_ID_SIZE, BNO055_SHIFT_EIGHT_BITS, BNO055_SUCCESS, BNO055_SW_ID_LSB, BNO055_SW_ID_MSB, BNO055_SW_REV_ID_LSB_REG, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_read_temp_data ( s8 temp_s8)

This API reads temperature values from register 0x33 it is a byte data.

Parameters
v_temp_s8: The raw temperature data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
temp_s8: The raw temperature data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SUCCESS, BNO055_TEMP_REG, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_any_motion_durn ( u8  accel_any_motion_durn_u8)

This API used to write the accel anymotion duration from page one register from 0x12 bit 0 to 1.

Parameters
v_accel_any_motion_durn_u8: The value of accel anymotion duration
v_accel_any_motion_durn_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_any_motion_durn_u8: The value of accel anymotion duration
accel_any_motion_durn_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_ANY_MOTION_DURN_SET_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_any_motion_no_motion_axis_enable ( u8  channel_u8,
u8  data_u8 
)

This API used to write the accel anymotion enable from page one register from 0x12 bit 2 to 4.

Parameters
v_data_u8: The value of accel anymotion enable
v_data_u8 result
0x01 ENABLED
0x00 DISABLED
v_channel_u8: The value of accel anymotion axis selection
v_channel_u8 value
BNO055_ACCEL_ANY_MOTION_NO_MOTION_X_AXIS 0
BNO055_ACCEL_ANY_MOTION_NO_MOTION_Y_AXIS 1
BNO055_ACCEL_ANY_MOTION_NO_MOTION_Y_AXIS 2
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
data_u8: The value of accel anymotion enable
data_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
channel_u8: The value of accel anymotion axis selection
channel_u8 value
BNO055_ACCEL_ANY_MOTION_NO_MOTION_X_AXIS 0
BNO055_ACCEL_ANY_MOTION_NO_MOTION_Y_AXIS 1
BNO055_ACCEL_ANY_MOTION_NO_MOTION_Y_AXIS 2
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_ANY_MOTION_NO_MOTION_X_AXIS, BNO055_ACCEL_ANY_MOTION_NO_MOTION_Y_AXIS, BNO055_ACCEL_ANY_MOTION_NO_MOTION_Z_AXIS, BNO055_ACCEL_ANY_MOTION_X_AXIS_REG, BNO055_ACCEL_ANY_MOTION_Y_AXIS_REG, BNO055_ACCEL_ANY_MOTION_Z_AXIS_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_any_motion_thres ( u8  accel_any_motion_thres_u8)

This API used to write the accel any motion threshold from page one register from 0x11 bit 0 to 7.

Parameters
v_accel_any_motion_thres_u8: The value of any motion threshold
v_accel_any_motion_thres_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Accel anymotion threshold dependent on the range values
v_accel_range_u8 threshold LSB
2g 3.19mg 1LSB
4g 7.81mg 1LSB
8g 15.63mg 1LSB
16g 31.25mg 1LSB
Parameters
accel_any_motion_thres_u8: The value of any motion threshold
accel_any_motion_thres_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Accel anymotion threshold dependent on the range values
accel_range_u8 threshold LSB
2g 3.19mg 1LSB
4g 7.81mg 1LSB
8g 15.63mg 1LSB
16g 31.25mg 1LSB

References BNO055_ACCEL_ANY_MOTION_THRES_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_bw ( u8  accel_bw_u8)

This API used to write the accel bandwidth from page one register from 0x08 bit 2 to 4.

Parameters
v_accel_bw_u8: The value of accel bandwidth
     v_accel_bw_u8 |     result
 ----------------- | ---------------
        0x00       | ACCEL_BW_7_81HZ
        0x01       | ACCEL_BW_15_63HZ
        0x02       | ACCEL_BW_31_25HZ
        0x03       | ACCEL_BW_62_5HZ
        0x04       | ACCEL_BW_125HZ
        0x05       | ACCEL_BW_250HZ
        0x06       | ACCEL_BW_500HZ
        0x07       | ACCEL_BW_1000HZ
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_bw_u8: The value of accel bandwidth
     accel_bw_u8 |     result
 ----------------- | ---------------
        0x00       | BNO055_ACCEL_BW_7_81HZ
        0x01       | BNO055_ACCEL_BW_15_63HZ
        0x02       | BNO055_ACCEL_BW_31_25HZ
        0x03       | BNO055_ACCEL_BW_62_5HZ
        0x04       | BNO055_ACCEL_BW_125HZ
        0x05       | BNO055_ACCEL_BW_250HZ
        0x06       | BNO055_ACCEL_BW_500HZ
        0x07       | BNO055_ACCEL_BW_1000HZ
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_BW_REG, BNO055_ACCEL_GYRO_BW_RANGE, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_high_g_axis_enable ( u8  channel_u8,
u8  data_u8 
)

This API used to write the accel highg enable from page one register from 0x12 bit 5 to 7.

Parameters
v_data_u8: The value of accel highg enable
v_data_u8result
0x01 ENABLED
0x00 DISABLED
v_channel_u8: The value of accel highg axis selection
v_channel_u8 value
BNO055_ACCEL_HIGH_G_X_AXIS 0
BNO055_ACCEL_HIGH_G_Y_AXIS 1
BNO055_ACCEL_HIGH_G_Z_AXIS 2
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
data_u8: The value of accel highg enable
data_u8result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
channel_u8: The value of accel highg axis selection
channel_u8 value
BNO055_ACCEL_HIGH_G_X_AXIS 0
BNO055_ACCEL_HIGH_G_Y_AXIS 1
BNO055_ACCEL_HIGH_G_Z_AXIS 2
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_HIGH_G_X_AXIS, BNO055_ACCEL_HIGH_G_X_AXIS_REG, BNO055_ACCEL_HIGH_G_Y_AXIS, BNO055_ACCEL_HIGH_G_Y_AXIS_REG, BNO055_ACCEL_HIGH_G_Z_AXIS, BNO055_ACCEL_HIGH_G_Z_AXIS_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_high_g_durn ( u8  accel_high_g_durn_u8)

This API used to write the accel highg duration from page one register from 0x13 bit 0 to 7.

Parameters
v_accel_high_g_durn_u8: The value of accel highg duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
The high-g interrupt trigger delay according to [highg duration + 1] * 2 ms

in a range from 2 ms to 512 ms

Parameters
accel_high_g_durn_u8: The value of accel highg duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
The high-g interrupt trigger delay according to [highg duration + 1] * 2 ms

in a range from 2 ms to 512 ms

References BNO055_ACCEL_HIGH_G_DURN_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_high_g_thres ( u8  accel_high_g_thres_u8)

This API used to write the accel highg threshold from page one register from 0x14 bit 0 to 7.

Parameters
v_accel_high_g_thres_u8: The value of accel highg threshold
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Accel highg interrupt threshold dependent for accel g range
v_accel_range_u8 threshold LSB
2g 7.81mg 1LSB
4g 15.63mg 1LSB
8g 31.25mg 1LSB
16g 62.5mg 1LSB
Parameters
accel_high_g_thres_u8: The value of accel highg threshold
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Accel highg interrupt threshold dependent for accel g range
accel_range_u8 threshold LSB
2g 7.81mg 1LSB
4g 15.63mg 1LSB
8g 31.25mg 1LSB
16g 62.5mg 1LSB

References BNO055_ACCEL_HIGH_G_THRES_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_power_mode ( u8  accel_power_mode_u8)

This API used to write the accel power mode from page one register from 0x08 bit 5 to 7.

Parameters
v_accel_power_mode_u8: The value of accel power mode
v_accel_power_mode_u8 result
0x00 ACCEL_NORMAL
0x01 ACCEL_SUSPEND
0x02 ACCEL_LOWPOWER_1
0x03 ACCEL_STANDBY
0x04 ACCEL_LOWPOWER_2
0x05 ACCEL_DEEPSUSPEND
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_power_mode_u8: The value of accel power mode
accel_power_mode_u8 result
0x00 BNO055_ACCEL_NORMAL
0x01 BNO055_ACCEL_SUSPEND
0x02 BNO055_ACCEL_LOWPOWER_1
0x03 BNO055_ACCEL_STANDBY
0x04 BNO055_ACCEL_LOWPOWER_2
0x05 BNO055_ACCEL_DEEPSUSPEND
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_POWER_MODE_RANGE, BNO055_ACCEL_POWER_MODE_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_range ( u8  accel_range_u8)

This API used to write the accel range from page one register from 0x08 bit 0 and 1.

Parameters
v_accel_range_u8: The value of accel range
  v_accel_range_u8 |   result
 ----------------- | --------------
        0x00       | ACCEL_RANGE_2G
        0x01       | ACCEL_RANGE_4G
        0x02       | ACCEL_RANGE_8G
        0x03       | ACCEL_RANGE_16G
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_range_u8: The value of accel range
  accel_range_u8 |   result
 ----------------- | --------------
        0x00       | BNO055_ACCEL_RANGE_2G
        0x01       | BNO055_ACCEL_RANGE_4G
        0x02       | BNO055_ACCEL_RANGE_8G
        0x03       | BNO055_ACCEL_RANGE_16G
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_RANGE, BNO055_ACCEL_RANGE_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

Referenced by bno055_initialize().

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_sleep_durn ( u8  sleep_durn_u8)

This API used to write the accel sleep duration from page one register from 0x0C bit 1 to 4.

Parameters
v_sleep_durn_u8: The value of accel sleep duration
v_sleep_durn_u8 result
0x05 BNO055_ACCEL_SLEEP_DURN_0_5MS
0x06 BNO055_ACCEL_SLEEP_DURN_1MS
0x07 BNO055_ACCEL_SLEEP_DURN_2MS
0x08 BNO055_ACCEL_SLEEP_DURN_4MS
0x09 BNO055_ACCEL_SLEEP_DURN_6MS
0x0A BNO055_ACCEL_SLEEP_DURN_10MS
0x0B BNO055_ACCEL_SLEEP_DURN_25MS
0x0C BNO055_ACCEL_SLEEP_DURN_50MS
0x0D BNO055_ACCEL_SLEEP_DURN_100MS
0x0E BNO055_ACCEL_SLEEP_DURN_500MS
0x0F BNO055_ACCEL_SLEEP_DURN_1S
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
sleep_durn_u8: The value of accel sleep duration
sleep_durn_u8 result
0x05 BNO055_ACCEL_SLEEP_DURN_0_5MS
0x06 BNO055_ACCEL_SLEEP_DURN_1MS
0x07 BNO055_ACCEL_SLEEP_DURN_2MS
0x08 BNO055_ACCEL_SLEEP_DURN_4MS
0x09 BNO055_ACCEL_SLEEP_DURN_6MS
0x0A BNO055_ACCEL_SLEEP_DURN_10MS
0x0B BNO055_ACCEL_SLEEP_DURN_25MS
0x0C BNO055_ACCEL_SLEEP_DURN_50MS
0x0D BNO055_ACCEL_SLEEP_DURN_100MS
0x0E BNO055_ACCEL_SLEEP_DURN_500MS
0x0F BNO055_ACCEL_SLEEP_DURN_1S
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_SLEEP_DURATION_RANGE, BNO055_ACCEL_SLEEP_DURN_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_sleep_tmr_mode ( u8  sleep_tmr_u8)

This API used to write the accel sleep mode from page one register from 0x0C bit 0.

Parameters
v_sleep_tmr_u8: The value of accel sleep mode
v_sleep_tmr_u8 result
0x00 enable EventDrivenSampling(EDT)
0x01 enable Equidistant sampling mode(EST)
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
sleep_tmr_u8: The value of accel sleep mode
sleep_tmr_u8 result
0x00 enable EventDrivenSampling(EDT)
0x01 enable Equidistant sampling mode(EST)
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_SLEEP_MODE_RANGE, BNO055_ACCEL_SLEEP_MODE_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_slow_no_motion_durn ( u8  accel_slow_no_motion_durn_u8)

This API used to write accel slownomotion duration from page one register from 0x16 bit 1 to 6.

Parameters
v_accel_slow_no_motion_durn_u8: The value of accel slownomotion duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_slow_no_motion_durn_u8: The value of accel slownomotion duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_SLOW_NO_MOTION_DURN_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_slow_no_motion_enable ( u8  accel_slow_no_motion_en_u8)

This API used to write accel slownomotion enable from page one register from 0x16 bit 0.

Parameters
v_accel_slow_no_motion_en_u8: The value of accel slownomotion enable
v_accel_slow_no_motion_en_u8 result
0x01 Slow motion
0x00 No motion
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_slow_no_motion_en_u8: The value of accel slownomotion enable
accel_slow_no_motion_en_u8 result
0x01 Slow motion
0x00 No motion
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_SLOW_NO_MOTION_ENABLE_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_slow_no_motion_thres ( u8  accel_slow_no_motion_thres_u8)

This API used to write the accel slownomotion threshold from page one register from 0x15 bit 0 to 7.

Parameters
v_accel_slow_no_motion_thres_u8: The value of accel slownomotion threshold
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Accel slow no motion interrupt threshold dependent for accel g range
v_accel_range_u8 threshold LSB
2g 3.19mg 1LSB
4g 7.81mg 1LSB
8g 15.63mg 1LSB
16g 31.25mg 1LSB
Parameters
accel_slow_no_motion_thres_u8: The value of accel slownomotion threshold
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Accel slow no motion interrupt threshold dependent for accel g range
accel_range_u8 threshold LSB
2g 3.19mg 1LSB
4g 7.81mg 1LSB
8g 15.63mg 1LSB
16g 31.25mg 1LSB

References BNO055_ACCEL_SLOW_NO_MOTION_THRES_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_accel_unit ( u8  accel_unit_u8)

This API used to write the accel unit from register from 0x3B bit 0.

Parameters
v_accel_unit_u8: The value of accel unit
v_accel_unit_u8 result
0x00 ACCEL_UNIT_MSQ
0x01 ACCEL_UNIT_MG
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
accel_unit_u8: The value of accel unit
accel_unit_u8 result
0x00 BNO055_ACCEL_UNIT_MSQ
0x01 BNO055_ACCEL_UNIT_MG
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_UNIT_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_axis_remap_value ( u8  remap_axis_u8)

This API used to write the axis remap value from register from 0x41 bit 0 and 5.

Parameters
v_remap_axis_u8: The value of axis remapping
v_remap_axis_u8 result comments
0X21 REMAP_X_Y Z=Z;X=Y;Y=X
0X18 REMAP_Y_Z X=X;Y=Z;Z=Y
0X06 REMAP_Z_X Y=Y;X=Z;Z=X
0X12 REMAP_X_Y_Z_TYPE0 X=Z;Y=X;Z=Y
0X09 REMAP_X_Y_Z_TYPE1 X=Y;Y=Z;Z=X
0X24 DEFAULT_AXIS X=X;Y=Y;Z=Z
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
: For axis sign remap refer the following functions x-axis :

bno055_set_x_remap_sign()

y-axis :

bno055_set_y_remap_sign()

z-axis :

bno055_set_z_remap_sign()

Parameters
remap_axis_u8: The value of axis remapping
remap_axis_u8 result comments
0X21 BNO055_REMAP_X_Y Z=Z;X=Y;Y=X
0X18 BNO055_REMAP_Y_Z X=X;Y=Z;Z=Y
0X06 BNO055_REMAP_Z_X Y=Y;X=Z;Z=X
0X12 BNO055_REMAP_X_Y_Z_TYPE0 X=Z;Y=X;Z=Y
0X09 BNO055_REMAP_X_Y_Z_TYPE1 X=Y;Y=Z;Z=X
0X24 BNO055_DEFAULT_AXIS X=X;Y=Y;Z=Z
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
: For axis sign remap refer the following APIs x-axis :

bno055_set_x_remap_sign()

y-axis :

bno055_set_y_remap_sign()

z-axis :

bno055_set_z_remap_sign()

References BNO055_DEFAULT_AXIS, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_REMAP_AXIS_VALUE_REG, BNO055_REMAP_X_Y, BNO055_REMAP_X_Y_Z_TYPE0, BNO055_REMAP_X_Y_Z_TYPE1, BNO055_REMAP_Y_Z, BNO055_REMAP_Z_X, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_clk_src ( u8  clk_src_u8)

This API used to write the clk source from register from 0x3F bit 7.

Parameters
v_clk_src_u8: The value of clk source
v_clk_src_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
clk_src_u8: The value of clk source
clk_src_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_CLK_SRC_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_data_output_format ( u8  data_output_format_u8)

This API used to write the current selected orientation mode from register from 0x3B bit 7.

Parameters
v_data_output_format_u8: The value of data output format
v_data_output_format_u8 result
0x00 Windows
0x01 Android
Returns
results of bus communication function
Return values
0-> Success
1-> Error

This API used to read the current selected orientation mode from register from 0x3B bit 7.

Parameters
data_output_format_u8: The value of data output format
data_output_format_u8 result
0x00 Windows
0x01 Android
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_DATA_OUTPUT_FORMAT_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_euler_unit ( u8  euler_unit_u8)

This API used to write the Euler unit from register from 0x3B bit 2.

Parameters
v_euler_unit_u8: The value of Euler unit
v_euler_unit_u8 result
0x00 EULER_UNIT_DEG
0x01 EULER_UNIT_RAD
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
euler_unit_u8: The value of Euler unit
euler_unit_u8 result
0x00 BNO055_EULER_UNIT_DEG
0x01 BNO055_EULER_UNIT_RAD
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_EULER_UNIT_REG, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_any_motion_awake_durn ( u8  gyro_awake_durn_u8)

This API used to write gyro anymotion awake duration from page one register from 0x1F bit 2 to 3.

Parameters
v_gyro_awake_durn_u8: The value of gyro anymotion awake duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_awake_durn_u8: The value of gyro anymotion awake duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_AWAKE_DURN_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_any_motion_axis_enable ( u8  channel_u8,
u8  data_u8 
)

This API used to write the gyro anymotion enable from page one register from 0x17 bit 0 to 2.

Parameters
v_data_u8: The value of gyro anymotion enable
v_data_u8 result
0x01 ENABLED
0x00 DISABLED
v_channel_u8: The value of gyro anymotion axis selection
v_channel_u8 value
BNO055_GYRO_ANY_MOTIONX_AXIS 0
BNO055_GYRO_ANY_MOTIONY_AXIS 1
BNO055_GYRO_ANY_MOTIONZ_AXIS 2
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
data_u8: The value of gyro anymotion enable
data_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
channel_u8: The value of gyro anymotion axis selection
channel_u8 value
BNO055_GYRO_ANY_MOTIONX_AXIS 0
BNO055_GYRO_ANY_MOTIONY_AXIS 1
BNO055_GYRO_ANY_MOTIONZ_AXIS 2
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_ANY_MOTION_X_AXIS, BNO055_GYRO_ANY_MOTION_X_AXIS_REG, BNO055_GYRO_ANY_MOTION_Y_AXIS, BNO055_GYRO_ANY_MOTION_Y_AXIS_REG, BNO055_GYRO_ANY_MOTION_Z_AXIS, BNO055_GYRO_ANY_MOTION_Z_AXIS_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_any_motion_filter ( u8  gyro_any_motion_filter_u8)

This API used to write gyro anymotion filter from page one register from 0x17 bit 6.

Parameters
v_gyro_any_motion_filter_u8: The value of gyro anymotion filter
v_gyro_any_motion_filter_u8 result
0x00 FILTERED
0x01 UNFILTERED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_any_motion_filter_u8: The value of gyro anymotion filter
gyro_any_motion_filter_u8 result
0x00 BNO055_GYRO_FILTERED_CONFIG
0x01 BNO055_GYRO_UNFILTERED_CONFIG
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_ANY_MOTION_FILTER_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_any_motion_slope_samples ( u8  gyro_any_motion_slope_samples_u8)

This API used to write gyro anymotion slope samples from page one register from 0x1F bit 0 to 1.

Parameters
v_gyro_any_motion_slope_samples_u8: The value of gyro anymotion slope samples
v_gyro_any_motion_slope_samples_u8 result
0 8 samples
1 16 samples
2 32 samples
3 64 samples
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_any_motion_slope_samples_u8: The value of gyro anymotion slope samples
gyro_any_motion_slope_samples_u8 result
0 8 samples
1 16 samples
2 32 samples
3 64 samples
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_SLOPE_SAMPLES_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_any_motion_thres ( u8  gyro_any_motion_thres_u8)

This API used to write gyro anymotion threshold from page one register from 0x1E bit 0 to 6.

Parameters
v_gyro_any_motion_thres_u8: The value of gyro anymotion threshold
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro anymotion interrupt threshold dependent on the selection of gyro range
v_gyro_range_u8 threshold LSB
2000 1dps 1LSB
1000 0.5dps 1LSB
500 0.25dps 1LSB
Parameters
gyro_any_motion_thres_u8: The value of gyro anymotion threshold
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro anymotion interrupt threshold dependent on the selection of gyro range
gyro_range_u8 threshold LSB
2000 1dps 1LSB
1000 0.5dps 1LSB
500 0.25dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_ANY_MOTION_THRES_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_bw ( u8  gyro_bw_u8)

This API used to write the gyro bandwidth from page one register from 0x0A bit 3 to 5.

Parameters
v_gyro_bw_u8: The value of gyro bandwidth
v_gyro_bw_u8 result
0x00 GYRO_BW_523HZ
0x01 GYRO_BW_230HZ
0x02 GYRO_BW_116HZ
0x03 GYRO_BW_47HZ
0x04 GYRO_BW_23HZ
0x05 GYRO_BW_12HZ
0x06 GYRO_BW_64HZ
0x07 GYRO_BW_32HZ
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_bw_u8: The value of gyro bandwidth
gyro_bw_u8 result
0x00 BNO055_GYRO_BW_523HZ
0x01 BNO055_GYRO_BW_230HZ
0x02 BNO055_GYRO_BW_116HZ
0x03 BNO055_GYRO_BW_47HZ
0x04 BNO055_GYRO_BW_23HZ
0x05 BNO055_GYRO_BW_12HZ
0x06 BNO055_GYRO_BW_64HZ
0x07 BNO055_GYRO_BW_32HZ
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_ACCEL_GYRO_BW_RANGE, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_gyro_auto_sleep_durn(), bno055_get_gyro_power_mode(), bno055_get_operation_mode(), BNO055_GYRO_BW_116HZ, BNO055_GYRO_BW_12HZ, BNO055_GYRO_BW_230HZ, BNO055_GYRO_BW_23HZ, BNO055_GYRO_BW_32HZ, BNO055_GYRO_BW_47HZ, BNO055_GYRO_BW_523HZ, BNO055_GYRO_BW_64HZ, BNO055_GYRO_BW_REG, BNO055_GYRO_POWER_MODE_ADVANCE_POWERSAVE, bno055_gyro_set_auto_sleep_durn(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_axis_enable ( u8  channel_u8,
u8  data_u8 
)

This API used to write the gyro highrate enable from page one register from 0x17 bit 3 to 5.

Parameters
v_data_u8: The value of gyro highrate enable
v_data_u8 result
0x01 ENABLED
0x00 DISABLED
v_channel_u8: The value of gyro highrate axis selection
v_channel_u8 value
BNO055_GYRO_HIGHRATE_X_AXIS 0
BNO055_GYRO_HIGHRATE_Y_AXIS 1
BNO055_GYRO_HIGHRATE_Z_AXIS 2
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
data_u8: The value of gyro highrate enable
data_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
channel_u8: The value of gyro highrate axis selection
channel_u8 value
BNO055_GYRO_HIGHRATE_X_AXIS 0
BNO055_GYRO_HIGHRATE_Y_AXIS 1
BNO055_GYRO_HIGHRATE_Z_AXIS 2
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_HIGHRATE_X_AXIS, BNO055_GYRO_HIGHRATE_X_AXIS_REG, BNO055_GYRO_HIGHRATE_Y_AXIS, BNO055_GYRO_HIGHRATE_Y_AXIS_REG, BNO055_GYRO_HIGHRATE_Z_AXIS, BNO055_GYRO_HIGHRATE_Z_AXIS_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_filter ( u8  gyro_highrate_filter_u8)

This API used to write gyro highrate filter from page one register from 0x17 bit 7.

Parameters
v_gyro_highrate_filter_u8: The value of gyro highrate filter
v_gyro_highrate_filter_u8 result
0x00 FILTERED
0x01 UNFILTERED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_highrate_filter_u8: The value of gyro highrate filter
gyro_highrate_filter_u8 result
0x00 BNO055_GYRO_FILTERED_CONFIG
0x01 BNO055_GYRO_UNFILTERED_CONFIG
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_HIGHRATE_FILTER_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_x_durn ( u8  gyro_highrate_x_durn_u8)

This API used to write gyro highrate x duration from page one register from 0x19 bit 0 to 7.

Parameters
v_gyro_highrate_x_durn_u8: The value of gyro highrate x duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro highrate duration calculate by using the formula

(1 + v_gyro_highrate_x_durn_u8)*2.5ms

Parameters
gyro_highrate_x_durn_u8: The value of gyro highrate x duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro highrate duration calculate by using the formula

(1 + gyro_highrate_x_durn_u8)*2.5ms

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_HIGHRATE_X_DURN_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_x_hyst ( u8  gyro_highrate_x_hyst_u8)

This API used to write gyro highrate x hysteresis from page one register from 0x18 bit 5 to 6.

Parameters
v_gyro_highrate_x_hyst_u8: The value of gyro highrate x hysteresis
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro high rate hysteresis calculated by

using this (255 + 256 * v_gyro_highrate_x_hyst_u8) *4 LSB

The high rate value scales with the range setting

v_gyro_range_u8 hysteresis LSB
2000 62.26dps 1LSB
1000 31.13dps 1LSB
500 15.56dps 1LSB
Parameters
gyro_highrate_x_hyst_u8: The value of gyro highrate x hysteresis
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro high rate hysteresis calculated by

using this (255 + 256 * gyro_highrate_x_hyst_u8) *4 LSB

The high rate value scales with the range setting

gyro_range_u8 hysteresis LSB
2000 62.26dps 1LSB
1000 31.13dps 1LSB
500 15.56dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_HIGHRATE_X_HYST_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_x_thres ( u8  gyro_highrate_x_thres_u8)

This API used to write gyro highrate x threshold from page one register from 0x18 bit 0 to 4.

Parameters
v_gyro_highrate_x_thres_u8: The value of gyro x highrate threshold
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro highrate threshold dependent on the selection of gyro range
v_gyro_range_u8 threshold LSB
2000 62.5dps 1LSB
1000 31.25dps 1LSB
500 15.625dps 1LSB
125 7.8125dps 1LSB
Parameters
gyro_highrate_x_thres_u8: The value of gyro x highrate threshold
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro highrate threshold dependent on the selection of gyro range
gyro_range_u8 threshold LSB
2000 62.5dps 1LSB
1000 31.25dps 1LSB
500 15.625dps 1LSB
125 7.8125dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_HIGHRATE_X_THRES_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_y_durn ( u8  gyro_highrate_y_durn_u8)

This API used to write gyro highrate y duration from page one register from 0x1B bit 0 to 7.

Parameters
v_gyro_highrate_y_durn_u8: The value of gyro highrate y duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro highrate duration calculate by using the formula

(1 + v_gyro_highrate_y_durn_u8)*2.5ms

Parameters
gyro_highrate_y_durn_u8: The value of gyro highrate y duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro highrate duration calculate by using the formula

(1 + gyro_highrate_y_durn_u8)*2.5ms

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_HIGHRATE_Y_DURN_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_y_hyst ( u8  gyro_highrate_y_hyst_u8)

This API used to write gyro highrate y hysteresis from page one register from 0x1A bit 5 to 6.

Parameters
v_gyro_highrate_y_hyst_u8: The value of gyro highrate y hysteresis
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro high rate hysteresis calculated by

using this (255 + 256 * v_gyro_highrate_y_hyst_u8) *4 LSB

The high rate value scales with the range setting

v_gyro_range_u8 hysteresis LSB
2000 62.26dps 1LSB
1000 31.13dps 1LSB
500 15.56dps 1LSB
Parameters
gyro_highrate_y_hyst_u8: The value of gyro highrate y hysteresis
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro high rate hysteresis calculated by

using this (255 + 256 * gyro_highrate_y_hyst_u8) *4 LSB

The high rate value scales with the range setting

gyro_range_u8 hysteresis LSB
2000 62.26dps 1LSB
1000 31.13dps 1LSB
500 15.56dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_HIGHRATE_Y_HYST_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_y_thres ( u8  gyro_highrate_y_thres_u8)

This API used to write gyro highrate y threshold from page one register from 0x1A bit 0 to 4.

Parameters
v_gyro_highrate_y_thres_u8: The value of gyro highrate y threshold
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro highrate threshold dependent on the selection of gyro range
v_gyro_range_u8 threshold LSB
2000 62.5dps 1LSB
1000 31.25dps 1LSB
500 15.625dps 1LSB
125 7.8125dps 1LSB
Parameters
gyro_highrate_y_thres_u8: The value of gyro highrate y threshold
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro highrate threshold dependent on the selection of gyro range
gyro_range_u8 threshold LSB
2000 62.5dps 1LSB
1000 31.25dps 1LSB
500 15.625dps 1LSB
125 7.8125dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_HIGHRATE_Y_THRES_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_z_durn ( u8  gyro_highrate_z_durn_u8)

This API used to write gyro highrate z duration from page one register from 0x1D bit 0 to 7.

Parameters
v_gyro_highrate_z_durn_u8: The value of gyro highrate z duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro highrate duration calculate by using the formula

(1 + v_gyro_highrate_z_durn_u8)*2.5ms

Parameters
gyro_highrate_z_durn_u8: The value of gyro highrate z duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro highrate duration calculate by using the formula

(1 + gyro_highrate_z_durn_u8)*2.5ms

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_HIGHRATE_Z_DURN_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_z_hyst ( u8  gyro_highrate_z_hyst_u8)

This API used to write gyro highrate z hysteresis from page one register from 0x1C bit 5 to 6.

Parameters
v_gyro_highrate_z_hyst_u8: The value of gyro highrate z hysteresis
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro high rate hysteresis calculated by

using this (255 + 256 * v_gyro_highrate_z_hyst_u8) *4 LSB

The high rate value scales with the range setting

v_gyro_range_u8 hysteresis LSB
2000 62.26dps 1LSB
1000 31.13dps 1LSB
500 15.56dps 1LSB
Parameters
gyro_highrate_z_hyst_u8: The value of gyro highrate z hysteresis
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro high rate hysteresis calculated by

using this (255 + 256 * gyro_highrate_z_hyst_u8) *4 LSB

The high rate value scales with the range setting

gyro_range_u8 hysteresis LSB
2000 62.26dps 1LSB
1000 31.13dps 1LSB
500 15.56dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_HIGHRATE_Z_HYST_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_highrate_z_thres ( u8  gyro_highrate_z_thres_u8)

This API used to write gyro highrate z threshold from page one register from 0x1C bit 0 to 4.

Parameters
v_gyro_highrate_z_thres_u8: The value of gyro highrate z threshold
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
Gyro highrate threshold dependent on the selection of gyro range
v_gyro_range_u8 threshold LSB
2000 62.5dps 1LSB
1000 31.25dps 1LSB
500 15.625dps 1LSB
125 7.8125dps 1LSB
Parameters
gyro_highrate_z_thres_u8: The value of gyro highrate z threshold
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
Gyro highrate threshold dependent on the selection of gyro range
gyro_range_u8 threshold LSB
2000 62.5dps 1LSB
1000 31.25dps 1LSB
500 15.625dps 1LSB
125 7.8125dps 1LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_HIGHRATE_Z_THRES_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_power_mode ( u8  gyro_power_mode_u8)

This API used to write the gyro power mode from page one register from 0x0B bit 0 to 2.

Parameters
v_gyro_power_mode_u8: The value of gyro power mode
v_gyro_power_mode_u8 result
0x00 GYRO_OPR_MODE_NORMAL
0x01 GYRO_OPR_MODE_FASTPOWERUP
0x02 GYRO_OPR_MODE_DEEPSUSPEND
0x03 GYRO_OPR_MODE_SUSPEND
0x04 GYRO_OPR_MODE_ADVANCE_POWERSAVE
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_power_mode_u8: The value of gyro power mode
gyro_power_mode_u8 result
0x00 GYRO_OPR_MODE_NORMAL
0x01 GYRO_OPR_MODE_FASTPOWERUP
0x02 GYRO_OPR_MODE_DEEPSUSPEND
0x03 GYRO_OPR_MODE_SUSPEND
0x04 GYRO_OPR_MODE_ADVANCE_POWERSAVE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_gyro_auto_sleep_durn(), bno055_get_gyro_bw(), bno055_get_operation_mode(), BNO055_GYRO_POWER_MODE_ADVANCE_POWERSAVE, BNO055_GYRO_POWER_MODE_DEEPSUSPEND, BNO055_GYRO_POWER_MODE_FASTPOWERUP, BNO055_GYRO_POWER_MODE_NORMAL, BNO055_GYRO_POWER_MODE_REG, BNO055_GYRO_POWER_MODE_SUSPEND, BNO055_GYRO_RANGE, bno055_gyro_set_auto_sleep_durn(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_range ( u8  gyro_range_u8)

This API used to write the gyro range from page one register from 0x0A bit 0 to 3.

Parameters
v_gyro_range_u8: The value of gyro range
v_gyro_range_u8 result
0x00 GYRO_RANGE_2000DPS
0x01 GYRO_RANGE_1000DPS
0x02 GYRO_RANGE_500DPS
0x03 GYRO_RANGE_250DPS
0x04 GYRO_RANGE_125DPS
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_range_u8: The value of gyro range
gyro_range_u8 result
0x00 BNO055_GYRO_RANGE_2000DPS
0x01 BNO055_GYRO_RANGE_1000DPS
0x02 BNO055_GYRO_RANGE_500DPS
0x03 BNO055_GYRO_RANGE_250DPS
0x04 BNO055_GYRO_RANGE_125DPS
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_RANGE, BNO055_GYRO_RANGE_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

Referenced by bno055_initialize().

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_sleep_durn ( u8  sleep_durn_u8)

This API used to write the gyro sleep duration from page one register from 0x0D bit 0 to 2.

Parameters
v_sleep_durn_u8: The value of gyro sleep duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
sleep_durn_u8: The value of gyro sleep duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_AUTO_SLEEP_DURATION_RANGE, BNO055_GYRO_SLEEP_DURN_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_unit ( u8  gyro_unit_u8)

This API used to write the gyro unit from register from 0x3B bit 1.

Parameters
v_gyro_unit_u8: The value of accel unit
v_gyro_unit_u8 result
0x00 GYRO_UNIT_DPS
0x01 GYRO_UNIT_RPS
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
gyro_unit_u8: The value of accel unit
gyro_unit_u8 result
0x00 BNO055_GYRO_UNIT_DPS
0x01 BNO055_GYRO_UNIT_RPS
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_UNIT_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_accel_any_motion ( u8  accel_any_motion_u8)

This API used to write the accel anymotion interrupt from page one register from 0x10 bit 6.

Parameters
v_accel_any_motion_u8: The value of accel anymotion interrupt
v_accel_any_motion_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the accel anymotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Duration:

bno055_set_accel_any_motion_durn()

Threshold:

bno055_set_accel_any_motion_thres()

Parameters
accel_any_motion_u8: The value of accel anymotion interrupt
accel_any_motion_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the accel anymotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Duration:

bno055_set_accel_any_motion_durn()

Threshold:

bno055_set_accel_any_motion_thres()

References BNO055_ACCEL_ANY_MOTION_INTR_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_accel_high_g ( u8  accel_high_g_u8)

This API used to write the accel highg interrupt from page one register from 0x10 bit 5.

Parameters
v_accel_high_g_u8: The value of accel highg interrupt
v_accel_high_g_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the accel highg interrupt configure the below settings by using the following functions

Axis :

bno055_set_accel_high_g_axis_enable()

Threshold :

bno055_set_accel_high_g_thres()

Duration :

bno055_set_accel_high_g_durn()

Parameters
accel_high_g_u8: The value of accel highg interrupt
accel_high_g_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the accel highg interrupt configure the below settings by using the following APIs

Axis :

bno055_set_accel_high_g_axis_enable()

Threshold :

bno055_set_accel_high_g_thres()

Duration :

bno055_set_accel_high_g_durn()

References BNO055_ACCEL_HIGH_G_INTR_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_accel_no_motion ( u8  accel_nomotion_u8)

This API used to write the accel nomotion interrupt from page one register from 0x10 bit 6.

Parameters
v_accel_nomotion_u8: The value of accel nomotion interrupt
v_accel_nomotion_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the accel nomotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Threshold :

bno055_set_accel_slow_no_motion_thres()

Duration :

bno055_set_accel_slow_no_motion_durn()

Slow/no motion enable:

bno055_set_accel_slow_no_motion_enable()

Parameters
accel_nomotion_u8: The value of accel nomotion interrupt
accel_nomotion_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the accel nomotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Threshold :

bno055_set_accel_slow_no_motion_thres()

Duration :

bno055_set_accel_slow_no_motion_durn()

Slow/no motion enable:

bno055_set_accel_slow_no_motion_enable()

References BNO055_ACCEL_NO_MOTION_INTR_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_gyro_any_motion ( u8  gyro_any_motion_u8)

This API used to write the gyro anymotion interrupt from page one register from 0x10 bit 2.

Parameters
v_gyro_any_motion_u8: The value of gyro anymotion interrupt
v_gyro_any_motion_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the gyro anymotion interrupt configure the following settings

Axis: bno055_set_gyro_any_motion_axis_enable()

Filter setting: bno055_set_gyro_any_motion_filter()

Threshold :

bno055_set_gyro_any_motion_thres()

Slope samples :

bno055_set_gyro_any_motion_slope_samples()

Awake duration :

bno055_set_gyro_any_motion_awake_durn()

Parameters
gyro_any_motion_u8: The value of gyro anymotion interrupt
gyro_any_motion_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the gyro anymotion interrupt configure the following settings

Axis: bno055_set_gyro_any_motion_axis_enable()

Filter setting: bno055_set_gyro_any_motion_filter()

Threshold :

bno055_set_gyro_any_motion_thres()

Slope samples :

bno055_set_gyro_any_motion_slope_samples()

Awake duration :

bno055_set_gyro_any_motion_awake_durn()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GYRO_ANY_MOTION_INTR_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_gyro_highrate ( u8  gyro_highrate_u8)

This API used to write the gyro highrate interrupt from page one register from 0x10 bit 3.

Parameters
v_gyro_highrate_u8: The value of gyro highrate interrupt
v_gyro_highrate_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the gyro highrate interrupt configure the below settings by using the following functions

Axis :

bno055_set_gyro_highrate_axis_enable()

Filter :

bno055_set_gyro_highrate_filter()

Threshold :

bno055_get_gyro_highrate_x_thres()

bno055_get_gyro_highrate_y_thres()

bno055_get_gyro_highrate_z_thres()

Hysteresis :

bno055_set_gyro_highrate_x_hyst()

bno055_set_gyro_highrate_y_hyst()

bno055_set_gyro_highrate_z_hyst()

Duration :

bno055_set_gyro_highrate_x_durn()

bno055_set_gyro_highrate_y_durn()

bno055_set_gyro_highrate_z_durn()

Parameters
gyro_highrate_u8: The value of gyro highrate interrupt
gyro_highrate_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the gyro highrate interrupt configure the below settings by using the following APIs

Axis :

bno055_set_gyro_highrate_axis_enable()

Filter :

bno055_set_gyro_highrate_filter()

Threshold :

bno055_get_gyro_highrate_x_thres()

bno055_get_gyro_highrate_y_thres()

bno055_get_gyro_highrate_z_thres()

Hysteresis :

bno055_set_gyro_highrate_x_hyst()

bno055_set_gyro_highrate_y_hyst()

bno055_set_gyro_highrate_z_hyst()

Duration :

bno055_set_gyro_highrate_x_durn()

bno055_set_gyro_highrate_y_durn()

bno055_set_gyro_highrate_z_durn()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GYRO_HIGHRATE_INTR_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_mask_accel_any_motion ( u8  accel_any_motion_u8)

This API used to write the accel anymotion interrupt mask from page one register from 0x0F bit 6.

Parameters
v_accel_any_motion_u8: The value of accel anymotion interrupt mask
v_accel_any_motion_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the accel anymotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Duration:

bno055_set_accel_any_motion_durn()

Threshold:

bno055_set_accel_any_motion_thres()

Parameters
accel_any_motion_u8: The value of accel anymotion interrupt mask
accel_any_motion_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the accel anymotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Duration:

bno055_set_accel_any_motion_durn()

Threshold:

bno055_set_accel_any_motion_thres()

References BNO055_ACCEL_ANY_MOTION_INTR_MASK_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_mask_accel_high_g ( u8  accel_high_g_u8)

This API used to write the accel highg interrupt mask from page one register from 0x0F bit 5.

Parameters
v_accel_high_g_u8: The value of accel highg interrupt mask
v_accel_high_g_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the accel highg interrupt configure the below settings by using the following functions

Axis :

bno055_set_accel_high_g_axis_enable()

Threshold :

bno055_set_accel_high_g_thres()

Duration :

bno055_set_accel_high_g_durn()

Parameters
accel_high_g_u8: The value of accel highg interrupt mask
accel_high_g_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the accel highg interrupt configure the below settings by using the following APIs

Axis :

bno055_set_accel_high_g_axis_enable()

Threshold :

bno055_set_accel_high_g_thres()

Duration :

bno055_set_accel_high_g_durn()

References BNO055_ACCEL_HIGH_G_INTR_MASK_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_mask_accel_no_motion ( u8  accel_nomotion_u8)

This API used to write the accel nomotion interrupt mask from page one register from 0x0F bit 7.

Parameters
v_accel_nomotion_u8: The value of accel nomotion interrupt mask
v_accel_nomotion_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the accel nomotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Threshold :

bno055_set_accel_slow_no_motion_thres()

Duration :

bno055_set_accel_slow_no_motion_durn()

Slow/no motion enable:

bno055_set_accel_slow_no_motion_enable()

Parameters
accel_nomotion_u8: The value of accel nomotion interrupt mask
accel_nomotion_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the accel nomotion interrupt configure the following settings

Axis:

bno055_set_accel_any_motion_no_motion_axis_enable()

Threshold :

bno055_set_accel_slow_no_motion_thres()

Duration :

bno055_set_accel_slow_no_motion_durn()

Slow/no motion enable:

bno055_set_accel_slow_no_motion_enable()

References BNO055_ACCEL_NO_MOTION_INTR_MASK_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_mask_gyro_any_motion ( u8  gyro_any_motion_u8)

This API used to write the gyro anymotion interrupt mask from page one register from 0x0F bit 2.

Parameters
v_gyro_any_motion_u8: The value of gyro anymotion interrupt mask
v_gyro_any_motion_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the gyro anymotion interrupt configure the following settings

Axis: bno055_set_gyro_any_motion_axis_enable()

Filter setting: bno055_set_gyro_any_motion_filter()

Threshold :

bno055_set_gyro_any_motion_thres()

Slope samples :

bno055_set_gyro_any_motion_slope_samples()

Awake duration :

bno055_set_gyro_any_motion_awake_durn()

Parameters
gyro_any_motion_u8: The value of gyro anymotion interrupt mask
gyro_any_motion_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the gyro anymotion interrupt configure the following settings

Axis: bno055_set_gyro_any_motion_axis_enable()

Filter setting: bno055_set_gyro_any_motion_filter()

Threshold :

bno055_set_gyro_any_motion_thres()

Slope samples :

bno055_set_gyro_any_motion_slope_samples()

Awake duration :

bno055_set_gyro_any_motion_awake_durn()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GYRO_ANY_MOTION_INTR_MASK_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_mask_gyro_highrate ( u8  gyro_highrate_u8)

This API used to write the gyro highrate interrupt mask from page one register from 0x0F bit 3.

Parameters
v_gyro_highrate_u8: The value of gyro highrate interrupt mask
v_gyro_highrate_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
While enabling the gyro highrate interrupt configure the below settings by using the following functions

Axis :

bno055_set_gyro_highrate_axis_enable()

Filter :

bno055_set_gyro_highrate_filter()

Threshold :

bno055_get_gyro_highrate_x_thres()

bno055_get_gyro_highrate_y_thres()

bno055_get_gyro_highrate_z_thres()

Hysteresis :

bno055_set_gyro_highrate_x_hyst()

bno055_set_gyro_highrate_y_hyst()

bno055_set_gyro_highrate_z_hyst()

Duration :

bno055_set_gyro_highrate_x_durn()

bno055_set_gyro_highrate_y_durn()

bno055_set_gyro_highrate_z_durn()

Parameters
gyro_highrate_u8: The value of gyro highrate interrupt mask
gyro_highrate_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
While enabling the gyro highrate interrupt configure the below settings by using the following APIs

Axis :

bno055_set_gyro_highrate_axis_enable()

Filter :

bno055_set_gyro_highrate_filter()

Threshold :

bno055_get_gyro_highrate_x_thres()

bno055_get_gyro_highrate_y_thres()

bno055_get_gyro_highrate_z_thres()

Hysteresis :

bno055_set_gyro_highrate_x_hyst()

bno055_set_gyro_highrate_y_hyst()

bno055_set_gyro_highrate_z_hyst()

Duration :

bno055_set_gyro_highrate_x_durn()

bno055_set_gyro_highrate_y_durn()

bno055_set_gyro_highrate_z_durn()

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_GYRO_HIGHRATE_INTR_MASK_REG, BNO055_INIT_VALUE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_intr_rst ( u8  intr_rst_u8)

This API used to write the reset interrupt from register from 0x3F bit 6 It resets all the interrupt bit and interrupt output.

Parameters
v_intr_rst_u8: The value of reset interrupt
v_intr_rst_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
intr_rst_u8: The value of reset interrupt
intr_rst_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_INTR_RST_REG, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_mag_data_output_rate ( u8  mag_data_output_rate_u8)

This API used to write the mag output data rate from page one register from 0x09 bit 0 to 2.

Parameters
v_mag_data_output_rate_u8: The value of mag output data rate
v_mag_data_output_rate_u8 result
0x00 MAG_DATA_OUTPUT_RATE_2HZ
0x01 MAG_DATA_OUTPUT_RATE_6HZ
0x02 MAG_DATA_OUTPUT_RATE_8HZ
0x03 MAG_DATA_OUTPUT_RATE_10HZ
0x04 MAG_DATA_OUTPUT_RATE_15HZ
0x05 MAG_DATA_OUTPUT_RATE_20HZ
0x06 MAG_DATA_OUTPUT_RATE_25HZ
0x07 MAG_DATA_OUTPUT_RATE_30HZ
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
mag_data_output_rate_u8: The value of mag output data rate
mag_data_output_rate_u8 result
0x00 MAG_DATA_OUTPUT_RATE_2HZ
0x01 MAG_DATA_OUTPUT_RATE_6HZ
0x02 MAG_DATA_OUTPUT_RATE_8HZ
0x03 MAG_DATA_OUTPUT_RATE_10HZ
0x04 MAG_DATA_OUTPUT_RATE_15HZ
0x05 MAG_DATA_OUTPUT_RATE_20HZ
0x06 MAG_DATA_OUTPUT_RATE_25HZ
0x07 MAG_DATA_OUTPUT_RATE_30HZ
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_MAG_DATA_OUTPUT_RATE_REG, BNO055_MAG_OUTPUT_RANGE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_mag_operation_mode ( u8  mag_operation_mode_u8)

This API used to write the mag operation mode from page one register from 0x09 bit 3 to 4.

Parameters
v_mag_operation_mode_u8: The value of mag operation mode
v_mag_operation_mode_u8 result
0x00 MAG_OPR_MODE_LOWPOWER
0x01 MAG_OPR_MODE_REGULAR
0x02 MAG_OPR_MODE_ENHANCED_REGULAR
0x03 MAG_OPR_MODE_HIGH_ACCURACY
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
mag_operation_mode_u8: The value of mag operation mode
mag_operation_mode_u8 result
0x00 MAG_OPR_MODE_LOWPOWER
0x01 MAG_OPR_MODE_REGULAR
0x02 MAG_OPR_MODE_ENHANCED_REGULAR
0x03 MAG_OPR_MODE_HIGH_ACCURACY
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_MAG_OPERATION_MODE_REG, BNO055_MAG_OPR_MODE_RANGE, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_mag_power_mode ( u8  mag_power_mode_u8)

This API used to write the mag power mode from page one register from 0x09 bit 4 to 6.

Parameters
v_mag_power_mode_u8: The value of mag power mode
v_mag_power_mode_u8 result
0x00 MAG_POWER_MODE_NORMAL
0x01 MAG_POWER_MODE_SLEEP
0x02 MAG_POWER_MODE_SUSPEND
0x03 MAG_POWER_MODE_FORCE_MODE
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
mag_power_mode_u8: The value of mag power mode
mag_power_mode_u8 result
0x00 BNO055_MAG_POWER_MODE_NORMAL
0x01 BNO055_MAG_POWER_MODE_SLEEP
0x02 BNO055_MAG_POWER_MODE_SUSPEND
0x03 BNO055_MAG_POWER_MODE_FORCE_MODE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_MAG_POWER_MODE_RANGE, BNO055_MAG_POWER_MODE_REG, BNO055_OPERATION_MODE_CONFIG, BNO055_OUT_OF_RANGE, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_mag_sleep_durn ( u8  sleep_durn_u8)

This API used to write the mag sleep duration from page one register from 0x0E bit 1 to 4.

Parameters
v_sleep_durn_u8: The value of mag sleep duration
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
sleep_durn_u8: The value of mag sleep duration
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_MAG_SLEEP_DURN_REG, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_mag_sleep_mode ( u8  sleep_mode_u8)

This API used to write the mag sleep mode from page one register from 0x0E bit 0.

Parameters
v_sleep_mode_u8: The value of mag sleep mode
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
sleep_mode_u8: The value of mag sleep mode
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_MAG_SLEEP_MODE_REG, BNO055_OPERATION_MODE_CONFIG, BNO055_PAGE_ONE, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, bno055_write_page_id(), and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_operation_mode ( u8  operation_mode_u8)

This API used to write the operation mode from register from 0x3D bit 0 to 3.

Parameters
v_operation_mode_u8: The value of operation mode
v_operation_mode_u8 result comments
0x00 OPERATION_MODE_CONFIG Configuration mode
0x01 OPERATION_MODE_ACCONLY Reads accel data alone
0x02 OPERATION_MODE_MAGONLY Reads mag data alone
0x03 OPERATION_MODE_GYRONLY Reads gyro data alone
0x04 OPERATION_MODE_ACCMAG Reads accel and mag data
0x05 OPERATION_MODE_ACCGYRO Reads accel and gyro data
0x06 OPERATION_MODE_MAGGYRO Reads accel and mag data
0x07 OPERATION_MODE_ANY_MOTION Reads accel mag and gyro data
0x08 OPERATION_MODE_IMUPLUS Inertial measurement unit
- - Reads accel,gyro and fusion data
0x09 OPERATION_MODE_COMPASS Reads accel, mag data
- - and fusion data
0x0A OPERATION_MODE_M4G Reads accel, mag data
- - and fusion data
0x0B OPERATION_MODE_NDOF_FMC_OFFNine degrees of freedom with
- - fast magnetic calibration
- - Reads accel,mag, gyro
- - and fusion data
0x0C OPERATION_MODE_NDOF Nine degrees of freedom
- - Reads accel,mag, gyro
- - and fusion data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
In the config mode, all sensor and fusion data becomes zero and it is mainly derived to configure the various settings of the BNO
Parameters
operation_mode_u8: The value of operation mode
operation_mode_u8 result comments
0x00 BNO055_OPERATION_MODE_CONFIG Configuration mode
0x01 BNO055_OPERATION_MODE_ACCONLY Reads accel data alone
0x02 BNO055_OPERATION_MODE_MAGONLY Reads mag data alone
0x03 BNO055_OPERATION_MODE_GYRONLY Reads gyro data alone
0x04 BNO055_OPERATION_MODE_ACCMAG Reads accel and mag data
0x05 BNO055_OPERATION_MODE_ACCGYRO Reads accel and gyro data
0x06 BNO055_OPERATION_MODE_MAGGYRO Reads accel and mag data
0x07 OPERATION_MODE_ANY_MOTION Reads accel mag and

| - | gyro data 0x08 | BNO055_OPERATION_MODE_IMUPLUS | Inertial measurement unit

  • | | Reads accel,gyro and | - | fusion data 0x09 | BNO055_OPERATION_MODE_COMPASS | Reads accel, mag data
  • | - | and fusion data 0x0A | BNO055_OPERATION_MODE_M4G | Reads accel, mag data
    • | - | and fusion data 0x0B | BNO055_OPERATION_MODE_NDOF_FMC_OFF| Nine degrees of freedom with
  • | - | fast magnetic calibration
  • | - | Reads accel,mag, gyro
  • | - | and fusion data 0x0C | BNO055_OPERATION_MODE_NDOF | Nine degrees of freedom
  • | - | Reads accel,mag, gyro
  • | - | and fusion data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
In the config mode, all sensor and fusion data becomes zero and it is mainly derived to configure the various settings of the BNO

References BNO055_CONFIG_MODE_SWITCHING_DELAY, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_MODE_SWITCHING_DELAY, BNO055_OPERATION_MODE_CONFIG, BNO055_OPERATION_MODE_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_write_register(), bno055_t::delay_msec, and bno055_t::dev_addr.

Referenced by bno055_gyro_set_auto_sleep_durn(), bno055_initialize(), bno055_set_accel_any_motion_durn(), bno055_set_accel_any_motion_no_motion_axis_enable(), bno055_set_accel_any_motion_thres(), bno055_set_accel_bw(), bno055_set_accel_high_g_axis_enable(), bno055_set_accel_high_g_durn(), bno055_set_accel_high_g_thres(), bno055_set_accel_power_mode(), bno055_set_accel_range(), bno055_set_accel_sleep_durn(), bno055_set_accel_sleep_tmr_mode(), bno055_set_accel_slow_no_motion_durn(), bno055_set_accel_slow_no_motion_enable(), bno055_set_accel_slow_no_motion_thres(), bno055_set_accel_unit(), bno055_set_axis_remap_value(), bno055_set_data_output_format(), bno055_set_euler_unit(), bno055_set_gyro_any_motion_awake_durn(), bno055_set_gyro_any_motion_axis_enable(), bno055_set_gyro_any_motion_filter(), bno055_set_gyro_any_motion_slope_samples(), bno055_set_gyro_any_motion_thres(), bno055_set_gyro_bw(), bno055_set_gyro_highrate_axis_enable(), bno055_set_gyro_highrate_filter(), bno055_set_gyro_highrate_x_durn(), bno055_set_gyro_highrate_x_hyst(), bno055_set_gyro_highrate_x_thres(), bno055_set_gyro_highrate_y_durn(), bno055_set_gyro_highrate_y_hyst(), bno055_set_gyro_highrate_y_thres(), bno055_set_gyro_highrate_z_durn(), bno055_set_gyro_highrate_z_hyst(), bno055_set_gyro_highrate_z_thres(), bno055_set_gyro_power_mode(), bno055_set_gyro_range(), bno055_set_gyro_sleep_durn(), bno055_set_gyro_unit(), bno055_set_mag_data_output_rate(), bno055_set_mag_operation_mode(), bno055_set_mag_power_mode(), bno055_set_mag_sleep_durn(), bno055_set_mag_sleep_mode(), bno055_set_power_mode(), bno055_set_remap_x_sign(), bno055_set_remap_y_sign(), bno055_set_remap_z_sign(), bno055_set_selftest(), bno055_set_temp_source(), bno055_set_temp_unit(), bno055_set_tilt_unit(), bno055_write_accel_offset(), bno055_write_gyro_offset(), bno055_write_mag_offset(), and bno055_write_sic_matrix().

BNO055_RETURN_FUNCTION_TYPE bno055_set_power_mode ( u8  power_mode_u8)

This API used to write the power mode from register from 0x3E bit 0 to 1.

Parameters
v_power_mode_u8: The value of power mode
v_power_mode_u8 result comments
0x00 POWER_MODE_NORMAL In the NORMAL mode the register
- - map and the internal peripherals
- - of the MCU are always
- - operative in this mode
0x01 POWER_MODE_LOWPOWER This is first level of power saving mode
0x02 POWER_MODE_SUSPEND In suspend mode the system is
- - paused and all the sensors and
- - the micro controller are
- - put into sleep mode.
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
For detailed about LOWPOWER mode refer data sheet 3.4.2
Parameters
power_mode_u8: The value of power mode
power_mode_u8result comments
0x00 BNO055_POWER_MODE_NORMAL In the NORMAL mode the register
- - map and the internal peripherals
- - of the MCU are always
- - operative in this mode
0x01 BNO055_POWER_MODE_LOWPOWER This is first level of power

| - | saving mode 0x02 | BNO055_POWER_MODE_SUSPEND | In suspend mode the system is

  • | - | paused and all the sensors and
  • | - | the micro controller are
  • | - | put into sleep mode.
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
For detailed about LOWPOWER mode refer data sheet 3.4.2

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_POWER_MODE_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, and bno055_t::dev_addr.

Referenced by bno055_initialize().

BNO055_RETURN_FUNCTION_TYPE bno055_set_remap_x_sign ( u8  remap_x_sign_u8)

This API used to write the x-axis remap sign from register from 0x42 bit 2.

Parameters
v_remap_x_sign_u8: The value of x-axis remap sign
v_remap_x_sign_u8 result
0X00 REMAP_AXIS_POSITIVE
0X01 REMAP_AXIS_NEGATIVE
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
remap_x_sign_u8: The value of x-axis remap sign
remap_x_sign_u8 result
0X00 BNO055_REMAP_AXIS_POSITIVE
0X01 BNO055_REMAP_AXIS_NEGATIVE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_REMAP_X_SIGN_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_remap_y_sign ( u8  remap_y_sign_u8)

This API used to write the y-axis remap sign from register from 0x42 bit 1.

Parameters
v_remap_y_sign_u8: The value of y-axis remap sign
v_remap_y_sign_u8 result
0X00 REMAP_AXIS_POSITIVE
0X01 REMAP_AXIS_NEGATIVE
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
remap_y_sign_u8: The value of y-axis remap sign
remap_y_sign_u8 result
0X00 BNO055_REMAP_AXIS_POSITIVE
0X01 BNO055_REMAP_AXIS_NEGATIVE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_REMAP_Y_SIGN_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_remap_z_sign ( u8  remap_z_sign_u8)

This API used to write the z-axis remap sign from register from 0x42 bit 0.

Parameters
v_remap_z_sign_u8: The value of z-axis remap sign
v_remap_z_sign_u8 result
0X00 REMAP_AXIS_POSITIVE
0X01 REMAP_AXIS_NEGATIVE
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
remap_z_sign_u8: The value of z-axis remap sign
remap_z_sign_u8 result
0X00 BNO055_REMAP_AXIS_POSITIVE
0X01 BNO055_REMAP_AXIS_NEGATIVE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_REMAP_Z_SIGN_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_selftest ( u8  selftest_u8)

This API used to write the self test from register from 0x3F bit 0.

Parameters
v_selftest_u8: The value of self test
v_selftest_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
It triggers the self test
Parameters
selftest_u8: The value of self test
selftest_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
It triggers the self test

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SELFTEST_REG, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_sys_rst ( u8  sys_rst_u8)

This API used to write the reset system from register from 0x3F bit 5.

Parameters
v_sys_rst_u8: The value of reset system
v_sys_rst_u8 result
0x01 ENABLED
0x00 DISABLED
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
It resets the whole system
Parameters
sys_rst_u8: The value of reset system
sys_rst_u8 result
0x01 BNO055_BIT_ENABLE
0x00 BNO055_BIT_DISABLE
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
It resets the whole system

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_PAGE_ZERO, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, BNO055_SYS_RST_REG, bno055_write_page_id(), bno055_t::dev_addr, and bno055_t::page_id.

BNO055_RETURN_FUNCTION_TYPE bno055_set_temp_source ( u8  temp_source_u8)

This API used to write the temperature source from register from 0x40 bit 0 and 1.

Parameters
v_temp_source_u8: The value of selected temperature source
v_temp_source_u8 result
0x00 ACCEL_TEMP_EN
0X01 GYRO_TEMP_EN
0X03 MCU_TEMP_EN
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
temp_source_u8: The value of selected temperature source
temp_source_u8 result
0x00 BNO055_ACCEL_TEMP_EN
0X01 BNO055_GYRO_TEMP_EN
0X03 BNO055_MCU_TEMP_EN
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, BNO055_TEMP_SOURCE_REG, and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_temp_unit ( u8  temp_unit_u8)

This API used to write the temperature unit from register from 0x3B bit 4.

Parameters
v_temp_unit_u8: The value of temperature unit
v_temp_unit_u8 result
0x00 TEMP_UNIT_CELCIUS
0x01 TEMP_UNIT_FAHRENHEIT
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
temp_unit_u8: The value of temperature unit
temp_unit_u8 result
0x00 BNO055_TEMP_UNIT_CELSIUS
0x01 BNO055_TEMP_UNIT_FAHRENHEIT
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, BNO055_TEMP_UNIT_REG, and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_set_tilt_unit ( u8  tilt_unit_u8)

This API used to write the tilt unit from register from 0x3B bit 3.

Parameters
v_tilt_unit_u8: The value of tilt unit
v_tilt_unit_u8 result
0x00 degrees
0x01 radians
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Returns
Communication results
Parameters
tilt_unit_u8: The value of tilt unit
tilt_unit_u8 result
0x00 degrees
0x01 radians
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Returns
Communication results

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SUCCESS, BNO055_TILT_UNIT_REG, and bno055_t::dev_addr.

BNO055_RETURN_FUNCTION_TYPE bno055_write_accel_offset ( struct bno055_accel_offset_t accel_offset)

This API is used to write accel offset and accel radius offset form register 0x55 to 0x5A and radius form 0x67 and 0x68.

Parameters
accel_offset: The value of accel offset and radius
bno055_accel_offset_t |     result
------------------- | ----------------
         x          |  accel offset x
         y          |  accel offset y
         z          |  accel offset z
         r          |  accel offset r
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
The range of the accel offset varies based on the G-range of accel sensor.
accel G range offset range
ACCEL_RANGE_2G +/-2000
ACCEL_RANGE_4G +/-4000
ACCEL_RANGE_8G +/-8000
ACCEL_RANGE_16G +/-16000

accel G range can be configured by using the bno055_set_accel_range() function

Parameters
accel_offset: The value of accel offset and radius
bno055_accel_offset_t |     result
------------------- | ----------------
         x          |  accel offset x
         y          |  accel offset y
         z          |  accel offset z
         r          |  accel offset r
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
The range of the accel offset varies based on the G-range of accel sensor.
accel G range offset range
BNO055_ACCEL_RANGE_2G +/-2000
BNO055_ACCEL_RANGE_4G +/-4000
BNO055_ACCEL_RANGE_8G +/-8000
BNO055_ACCEL_RANGE_16G +/-16000

accel G range can be configured by using the bno055_set_accel_range() API

References BNO055_ACCEL_OFFSET_X_LSB_REG, BNO055_ACCEL_OFFSET_X_MSB_REG, BNO055_ACCEL_OFFSET_Y_LSB_REG, BNO055_ACCEL_OFFSET_Y_MSB_REG, BNO055_ACCEL_OFFSET_Z_LSB_REG, BNO055_ACCEL_OFFSET_Z_MSB_REG, BNO055_ACCEL_RADIUS_LSB_REG, BNO055_ACCEL_RADIUS_MSB_REG, BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SHIFT_EIGHT_BITS, BNO055_SIC_HEX_0_0_F_F_DATA, BNO055_SUCCESS, bno055_t::dev_addr, bno055_accel_offset_t::r, bno055_accel_offset_t::x, bno055_accel_offset_t::y, and bno055_accel_offset_t::z.

BNO055_RETURN_FUNCTION_TYPE bno055_write_gyro_offset ( struct bno055_gyro_offset_t gyro_offset)

This API is used to read gyro offset offset form register 0x61 to 0x66.

Parameters
gyro_offset: The value of gyro offset
bno055_gyro_offset_t  |     result
------------------- | ----------------
         x          |  gyro offset x
         y          |  gyro offset y
         z          |  gyro offset z
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
The range of the gyro offset varies based on the range of gyro sensor
gyro G range offset range
GYRO_RANGE_2000DPS +/-32000
GYRO_RANGE_1000DPS +/-16000
GYRO_RANGE_500DPS +/-8000
GYRO_RANGE_250DPS +/-4000
GYRO_RANGE_125DPS +/-2000

Gyro range can be configured by using the bno055_set_gyro_range() function

Parameters
gyro_offset: The value of gyro offset
bno055_gyro_offset_t  |     result
------------------- | ----------------
         x          |  gyro offset x
         y          |  gyro offset y
         z          |  gyro offset z
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
The range of the gyro offset varies based on the range of gyro sensor
gyro G range offset range
BNO055_GYRO_RANGE_2000DPS +/-32000
BNO055_GYRO_RANGE_1000DPS +/-16000
BNO055_GYRO_RANGE_500DPS +/-8000
BNO055_GYRO_RANGE_250DPS +/-4000
BNO055_GYRO_RANGE_125DPS +/-2000

Gyro range can be configured by using the bno055_set_gyro_range() API

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_GYRO_OFFSET_X_LSB_REG, BNO055_GYRO_OFFSET_X_MSB_REG, BNO055_GYRO_OFFSET_Y_LSB_REG, BNO055_GYRO_OFFSET_Y_MSB_REG, BNO055_GYRO_OFFSET_Z_LSB_REG, BNO055_GYRO_OFFSET_Z_MSB_REG, BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SHIFT_EIGHT_BITS, BNO055_SIC_HEX_0_0_F_F_DATA, BNO055_SUCCESS, bno055_t::dev_addr, bno055_gyro_offset_t::x, bno055_gyro_offset_t::y, and bno055_gyro_offset_t::z.

BNO055_RETURN_FUNCTION_TYPE bno055_write_mag_offset ( struct bno055_mag_offset_t mag_offset)

This API is used to read mag offset offset form register 0x69 to 0x6A.

Parameters
mag_offset: The value of mag offset and radius
bno055_mag_offset_t |     result
------------------- | ----------------
         x          |  mag offset x
         y          |  mag offset y
         z          |  mag offset z
         r          |  mag radius r
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
The range of the magnetometer offset is +/-6400 in LSB
Parameters
mag_offset: The value of mag offset and radius
bno055_mag_offset_t |     result
------------------- | ----------------
         x          |  mag offset x
         y          |  mag offset y
         z          |  mag offset z
         r          |  mag radius r
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
The range of the magnetometer offset is +/-6400 in LSB

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_MAG_OFFSET_X_LSB_REG, BNO055_MAG_OFFSET_X_MSB_REG, BNO055_MAG_OFFSET_Y_LSB_REG, BNO055_MAG_OFFSET_Y_MSB_REG, BNO055_MAG_OFFSET_Z_LSB_REG, BNO055_MAG_OFFSET_Z_MSB_REG, BNO055_MAG_RADIUS_LSB_REG, BNO055_MAG_RADIUS_MSB_REG, BNO055_OPERATION_MODE_CONFIG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SHIFT_EIGHT_BITS, BNO055_SIC_HEX_0_0_F_F_DATA, BNO055_SUCCESS, bno055_t::dev_addr, bno055_mag_offset_t::r, bno055_mag_offset_t::x, bno055_mag_offset_t::y, and bno055_mag_offset_t::z.

BNO055_RETURN_FUNCTION_TYPE bno055_write_page_id ( u8  page_id_u8)

This API used to write the page id register 0x07.

Parameters
v_page_id_u8: The value of page id

PAGE_ZERO -> 0x00 PAGE_ONE -> 0x01

Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
page_id_u8: The value of page id

BNO055_PAGE_ZERO -> 0x00 BNO055_PAGE_ONE -> 0x01

Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, BNO055_INIT_VALUE, BNO055_PAGE_ID_REG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, BNO055_SUCCESS, bno055_t::dev_addr, and bno055_t::page_id.

Referenced by bno055_get_accel_any_motion_durn(), bno055_get_accel_any_motion_no_motion_axis_enable(), bno055_get_accel_any_motion_thres(), bno055_get_accel_bw(), bno055_get_accel_calib_stat(), bno055_get_accel_high_g_axis_enable(), bno055_get_accel_high_g_durn(), bno055_get_accel_high_g_thres(), bno055_get_accel_power_mode(), bno055_get_accel_range(), bno055_get_accel_sleep_durn(), bno055_get_accel_sleep_tmr_mode(), bno055_get_accel_slow_no_motion_durn(), bno055_get_accel_slow_no_motion_enable(), bno055_get_accel_slow_no_motion_thres(), bno055_get_accel_unit(), bno055_get_axis_remap_value(), bno055_get_clk_src(), bno055_get_data_output_format(), bno055_get_euler_unit(), bno055_get_gyro_any_motion_awake_durn(), bno055_get_gyro_any_motion_axis_enable(), bno055_get_gyro_any_motion_filter(), bno055_get_gyro_any_motion_slope_samples(), bno055_get_gyro_any_motion_thres(), bno055_get_gyro_auto_sleep_durn(), bno055_get_gyro_bw(), bno055_get_gyro_calib_stat(), bno055_get_gyro_highrate_axis_enable(), bno055_get_gyro_highrate_filter(), bno055_get_gyro_highrate_x_durn(), bno055_get_gyro_highrate_x_hyst(), bno055_get_gyro_highrate_x_thres(), bno055_get_gyro_highrate_y_durn(), bno055_get_gyro_highrate_y_hyst(), bno055_get_gyro_highrate_y_thres(), bno055_get_gyro_highrate_z_durn(), bno055_get_gyro_highrate_z_hyst(), bno055_get_gyro_highrate_z_thres(), bno055_get_gyro_power_mode(), bno055_get_gyro_range(), bno055_get_gyro_sleep_durn(), bno055_get_gyro_unit(), bno055_get_intr_accel_any_motion(), bno055_get_intr_accel_high_g(), bno055_get_intr_accel_no_motion(), bno055_get_intr_gyro_any_motion(), bno055_get_intr_gyro_highrate(), bno055_get_intr_mask_accel_any_motion(), bno055_get_intr_mask_accel_high_g(), bno055_get_intr_mask_accel_no_motion(), bno055_get_intr_mask_gyro_any_motion(), bno055_get_intr_mask_gyro_highrate(), bno055_get_intr_rst(), bno055_get_intr_stat_accel_any_motion(), bno055_get_intr_stat_accel_high_g(), bno055_get_intr_stat_accel_no_motion(), bno055_get_intr_stat_gyro_any_motion(), bno055_get_intr_stat_gyro_highrate(), bno055_get_mag_calib_stat(), bno055_get_mag_data_output_rate(), bno055_get_mag_operation_mode(), bno055_get_mag_power_mode(), bno055_get_mag_sleep_durn(), bno055_get_mag_sleep_mode(), bno055_get_operation_mode(), bno055_get_power_mode(), bno055_get_remap_x_sign(), bno055_get_remap_y_sign(), bno055_get_remap_z_sign(), bno055_get_selftest(), bno055_get_selftest_accel(), bno055_get_selftest_gyro(), bno055_get_selftest_mag(), bno055_get_selftest_mcu(), bno055_get_stat_main_clk(), bno055_get_sys_calib_stat(), bno055_get_sys_error_code(), bno055_get_sys_rst(), bno055_get_sys_stat_code(), bno055_get_temp_source(), bno055_get_temp_unit(), bno055_get_tilt_unit(), bno055_gyro_set_auto_sleep_durn(), bno055_read_accel_offset(), bno055_read_accel_rev_id(), bno055_read_accel_x(), bno055_read_accel_xyz(), bno055_read_accel_y(), bno055_read_accel_z(), bno055_read_bl_rev_id(), bno055_read_chip_id(), bno055_read_euler_h(), bno055_read_euler_hrp(), bno055_read_euler_p(), bno055_read_euler_r(), bno055_read_gravity_x(), bno055_read_gravity_xyz(), bno055_read_gravity_y(), bno055_read_gravity_z(), bno055_read_gyro_offset(), bno055_read_gyro_rev_id(), bno055_read_gyro_x(), bno055_read_gyro_xyz(), bno055_read_gyro_y(), bno055_read_gyro_z(), bno055_read_linear_accel_x(), bno055_read_linear_accel_xyz(), bno055_read_linear_accel_y(), bno055_read_linear_accel_z(), bno055_read_mag_offset(), bno055_read_mag_rev_id(), bno055_read_mag_x(), bno055_read_mag_xyz(), bno055_read_mag_y(), bno055_read_mag_z(), bno055_read_quaternion_w(), bno055_read_quaternion_wxyz(), bno055_read_quaternion_x(), bno055_read_quaternion_y(), bno055_read_quaternion_z(), bno055_read_sic_matrix(), bno055_read_sw_rev_id(), bno055_read_temp_data(), bno055_set_accel_any_motion_durn(), bno055_set_accel_any_motion_no_motion_axis_enable(), bno055_set_accel_any_motion_thres(), bno055_set_accel_bw(), bno055_set_accel_high_g_axis_enable(), bno055_set_accel_high_g_durn(), bno055_set_accel_high_g_thres(), bno055_set_accel_power_mode(), bno055_set_accel_range(), bno055_set_accel_sleep_durn(), bno055_set_accel_sleep_tmr_mode(), bno055_set_accel_slow_no_motion_durn(), bno055_set_accel_slow_no_motion_enable(), bno055_set_accel_slow_no_motion_thres(), bno055_set_clk_src(), bno055_set_gyro_any_motion_awake_durn(), bno055_set_gyro_any_motion_axis_enable(), bno055_set_gyro_any_motion_filter(), bno055_set_gyro_any_motion_slope_samples(), bno055_set_gyro_any_motion_thres(), bno055_set_gyro_bw(), bno055_set_gyro_highrate_axis_enable(), bno055_set_gyro_highrate_filter(), bno055_set_gyro_highrate_x_durn(), bno055_set_gyro_highrate_x_hyst(), bno055_set_gyro_highrate_x_thres(), bno055_set_gyro_highrate_y_durn(), bno055_set_gyro_highrate_y_hyst(), bno055_set_gyro_highrate_y_thres(), bno055_set_gyro_highrate_z_durn(), bno055_set_gyro_highrate_z_hyst(), bno055_set_gyro_highrate_z_thres(), bno055_set_gyro_power_mode(), bno055_set_gyro_range(), bno055_set_gyro_sleep_durn(), bno055_set_intr_accel_any_motion(), bno055_set_intr_accel_high_g(), bno055_set_intr_accel_no_motion(), bno055_set_intr_gyro_any_motion(), bno055_set_intr_gyro_highrate(), bno055_set_intr_mask_accel_any_motion(), bno055_set_intr_mask_accel_high_g(), bno055_set_intr_mask_accel_no_motion(), bno055_set_intr_mask_gyro_any_motion(), bno055_set_intr_mask_gyro_highrate(), bno055_set_intr_rst(), bno055_set_mag_data_output_rate(), bno055_set_mag_operation_mode(), bno055_set_mag_power_mode(), bno055_set_mag_sleep_durn(), bno055_set_mag_sleep_mode(), and bno055_set_sys_rst().

BNO055_RETURN_FUNCTION_TYPE bno055_write_register ( u8  addr_u8,
u8 data_u8,
u8  len_u8 
)

This API gives data to the given register and the data is written in the corresponding register address.

Parameters
v_addr_u8: Address of the register
p_data_u8: Data to be written to the register
v_len_u8: Length of the Data
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Parameters
addr_u8: Address of the register
data_u8: Data to be written to the register
len_u8: Length of the Data
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_INIT_VALUE, BNO055_RETURN_FUNCTION_TYPE, and bno055_t::dev_addr.

Referenced by bno055_set_operation_mode().

BNO055_RETURN_FUNCTION_TYPE bno055_write_sic_matrix ( struct bno055_sic_matrix_t sic_matrix)

This API is used to write soft iron calibration matrix from the register 0x43 to 0x53 it is a 18 bytes of data.

Parameters
sic_matrix: The value of soft iron calibration matrix
sic_matrix result
sic_0 soft iron calibration matrix zero
sic_1 soft iron calibration matrix one
sic_2 soft iron calibration matrix two
sic_3 soft iron calibration matrix three
sic_4 soft iron calibration matrix four
sic_5 soft iron calibration matrix five
sic_6 soft iron calibration matrix six
sic_7 soft iron calibration matrix seven
sic_8 soft iron calibration matrix eight
Returns
results of bus communication function
Return values
0-> Success
1-> Error
Note
: Each soft iron calibration matrix range from -32768 to +32767
Parameters
sic_matrix: The value of soft iron calibration matrix
sic_matrix result
sic_0 soft iron calibration matrix zero
sic_1 soft iron calibration matrix one
sic_2 soft iron calibration matrix two
sic_3 soft iron calibration matrix three
sic_4 soft iron calibration matrix four
sic_5 soft iron calibration matrix five
sic_6 soft iron calibration matrix six
sic_7 soft iron calibration matrix seven
sic_8 soft iron calibration matrix eight
Returns
results of bus communication function
Return values
0-> BNO055_SUCCESS
1-> BNO055_ERROR
Note
: Each soft iron calibration matrix range from -32768 to +32767

References BNO055_E_NULL_PTR, BNO055_ERROR, BNO055_GEN_READ_WRITE_LENGTH, bno055_get_operation_mode(), BNO055_INIT_VALUE, BNO055_OPERATION_MODE_CONFIG, BNO055_RETURN_FUNCTION_TYPE, BNO055_SET_BITSLICE, bno055_set_operation_mode(), BNO055_SHIFT_EIGHT_BITS, BNO055_SIC_HEX_0_0_F_F_DATA, BNO055_SIC_MATRIX_0_LSB_REG, BNO055_SIC_MATRIX_0_MSB_REG, BNO055_SIC_MATRIX_1_LSB_REG, BNO055_SIC_MATRIX_1_MSB_REG, BNO055_SIC_MATRIX_2_LSB_REG, BNO055_SIC_MATRIX_2_MSB_REG, BNO055_SIC_MATRIX_3_LSB_REG, BNO055_SIC_MATRIX_3_MSB_REG, BNO055_SIC_MATRIX_4_LSB_REG, BNO055_SIC_MATRIX_4_MSB_REG, BNO055_SIC_MATRIX_5_LSB_REG, BNO055_SIC_MATRIX_5_MSB_REG, BNO055_SIC_MATRIX_6_LSB_REG, BNO055_SIC_MATRIX_6_MSB_REG, BNO055_SIC_MATRIX_7_LSB_REG, BNO055_SIC_MATRIX_7_MSB_REG, BNO055_SIC_MATRIX_8_LSB_REG, BNO055_SIC_MATRIX_8_MSB_REG, BNO055_SUCCESS, bno055_t::dev_addr, bno055_sic_matrix_t::sic_0, bno055_sic_matrix_t::sic_1, bno055_sic_matrix_t::sic_2, bno055_sic_matrix_t::sic_3, bno055_sic_matrix_t::sic_4, bno055_sic_matrix_t::sic_5, bno055_sic_matrix_t::sic_6, bno055_sic_matrix_t::sic_7, and bno055_sic_matrix_t::sic_8.

struct bno055_t* p_bno055
static

file <BNO055> brief <Sensor driver="" for="" bno055>="">