77 #include <linux/types.h>
85 typedef u_int16_t
u16;
86 typedef u_int32_t
u32;
87 typedef u_int64_t
u64;
96 # if !defined(__STDC_VERSION__)
101 #if (__STDC_VERSION__ == 201112L)
109 typedef uint16_t
u16;
110 typedef uint32_t
u32;
111 typedef uint64_t
u64;
122 #elif (__STDC_VERSION__ == 199901L)
132 typedef uint16_t
u16;
133 typedef uint32_t
u32;
134 typedef uint64_t
u64;
151 #define MACHINE_32_BIT
157 #ifdef MACHINE_16_BIT
160 typedef signed char s8;
161 typedef signed short int s16;
162 typedef signed long int s32;
164 #if defined(LONG_MAX) && LONG_MAX == 0x7fffffffffffffffL
165 typedef long int s64;
166 typedef unsigned long int u64;
167 #elif defined(LLONG_MAX) && (LLONG_MAX == 0x7fffffffffffffffLL)
168 typedef long long int s64;
169 typedef unsigned long long int u64;
171 #warning Either the correct data type for signed 64 bit integer \
172 could not be found, or 64 bit integers are not supported in your environment.
173 #warning If 64 bit integers are supported on your platform, \
174 please set s64 manually.
178 typedef unsigned char u8;
179 typedef unsigned short int u16;
180 typedef unsigned long int u32;
184 #elif defined MACHINE_32_BIT
186 typedef signed char s8;
187 typedef signed short int s16;
189 typedef signed long long int s64;
192 typedef unsigned char u8;
193 typedef unsigned short int u16;
194 typedef unsigned long u32;
195 typedef unsigned long long int u64;
199 #elif defined MACHINE_64_BIT
201 typedef signed char s8;
202 typedef signed short int s16;
203 typedef signed int s32;
204 typedef signed long int s64;
207 typedef unsigned char u8;
208 typedef unsigned short int u16;
209 typedef unsigned int u32;
210 typedef unsigned long int u64;
213 #warning The data types defined above which not supported \
214 define the data types manually
227 #define MACHINE_32_BIT
231 #ifdef MACHINE_16_BIT
234 typedef signed char s8;
235 typedef signed short int s16;
236 typedef signed long int s32;
238 #if defined(LONG_MAX) && LONG_MAX == 0x7fffffffffffffffL
239 typedef long int s64;
240 typedef unsigned long int u64;
241 #elif defined(LLONG_MAX) && (LLONG_MAX == 0x7fffffffffffffffLL)
242 typedef long long int s64;
243 typedef unsigned long long int u64;
245 #warning Either the correct data type for signed 64 bit integer \
246 could not be found, or 64 bit integers are not supported in your environment.
247 #warning If 64 bit integers are supported on your platform, \
248 please set s64 manually.
252 typedef unsigned char u8;
253 typedef unsigned short int u16;
254 typedef unsigned long int u32;
258 #elif defined MACHINE_32_BIT
260 typedef signed char s8;
261 typedef signed short int s16;
262 typedef signed int s32;
263 typedef signed long long int s64;
266 typedef unsigned char u8;
267 typedef unsigned short int u16;
268 typedef unsigned int u32;
269 typedef unsigned long long int u64;
273 #elif defined MACHINE_64_BIT
275 typedef signed char s8;
276 typedef signed short int s16;
277 typedef signed int s32;
278 typedef signed long int s64;
281 typedef unsigned char u8;
282 typedef unsigned short int u16;
283 typedef unsigned int u32;
284 typedef unsigned long int u64;
287 #warning The data types defined above which not supported \
288 define the data types manually
295 #define BNO055_WR_FUNC_PTR s8 (*bus_write)\
298 #define BNO055_BUS_WRITE_FUNC(dev_addr, reg_addr, reg_data, wr_len)\
299 bus_write(dev_addr, reg_addr, reg_data, wr_len)
301 #define BNO055_RD_FUNC_PTR s8 \
302 (*bus_read)(u8, u8, u8 *, u8)
304 #define BNO055_BUS_READ_FUNC(dev_addr, reg_addr, reg_data, r_len)\
305 bus_read(dev_addr, reg_addr, reg_data, r_len)
307 #define BNO055_DELAY_RETURN_TYPE void
309 #define BNO055_DELAY_PARAM_TYPES u32
311 #define BNO055_DELAY_FUNC(delay_in_msec)\
312 delay_func(delay_in_msec)
318 #define BNO055_I2C_ADDR1 (0x28)
319 #define BNO055_I2C_ADDR2 (0x29)
325 #define BNO055_PAGE_ID_ADDR (0X07)
328 #define BNO055_CHIP_ID_ADDR (0x00)
329 #define BNO055_ACCEL_REV_ID_ADDR (0x01)
330 #define BNO055_MAG_REV_ID_ADDR (0x02)
331 #define BNO055_GYRO_REV_ID_ADDR (0x03)
332 #define BNO055_SW_REV_ID_LSB_ADDR (0x04)
333 #define BNO055_SW_REV_ID_MSB_ADDR (0x05)
334 #define BNO055_BL_REV_ID_ADDR (0X06)
337 #define BNO055_ACCEL_DATA_X_LSB_ADDR (0X08)
338 #define BNO055_ACCEL_DATA_X_MSB_ADDR (0X09)
339 #define BNO055_ACCEL_DATA_Y_LSB_ADDR (0X0A)
340 #define BNO055_ACCEL_DATA_Y_MSB_ADDR (0X0B)
341 #define BNO055_ACCEL_DATA_Z_LSB_ADDR (0X0C)
342 #define BNO055_ACCEL_DATA_Z_MSB_ADDR (0X0D)
345 #define BNO055_MAG_DATA_X_LSB_ADDR (0X0E)
346 #define BNO055_MAG_DATA_X_MSB_ADDR (0X0F)
347 #define BNO055_MAG_DATA_Y_LSB_ADDR (0X10)
348 #define BNO055_MAG_DATA_Y_MSB_ADDR (0X11)
349 #define BNO055_MAG_DATA_Z_LSB_ADDR (0X12)
350 #define BNO055_MAG_DATA_Z_MSB_ADDR (0X13)
353 #define BNO055_GYRO_DATA_X_LSB_ADDR (0X14)
354 #define BNO055_GYRO_DATA_X_MSB_ADDR (0X15)
355 #define BNO055_GYRO_DATA_Y_LSB_ADDR (0X16)
356 #define BNO055_GYRO_DATA_Y_MSB_ADDR (0X17)
357 #define BNO055_GYRO_DATA_Z_LSB_ADDR (0X18)
358 #define BNO055_GYRO_DATA_Z_MSB_ADDR (0X19)
361 #define BNO055_EULER_H_LSB_ADDR (0X1A)
362 #define BNO055_EULER_H_MSB_ADDR (0X1B)
364 #define BNO055_EULER_R_LSB_ADDR (0X1C)
365 #define BNO055_EULER_R_MSB_ADDR (0X1D)
367 #define BNO055_EULER_P_LSB_ADDR (0X1E)
368 #define BNO055_EULER_P_MSB_ADDR (0X1F)
371 #define BNO055_QUATERNION_DATA_W_LSB_ADDR (0X20)
372 #define BNO055_QUATERNION_DATA_W_MSB_ADDR (0X21)
373 #define BNO055_QUATERNION_DATA_X_LSB_ADDR (0X22)
374 #define BNO055_QUATERNION_DATA_X_MSB_ADDR (0X23)
375 #define BNO055_QUATERNION_DATA_Y_LSB_ADDR (0X24)
376 #define BNO055_QUATERNION_DATA_Y_MSB_ADDR (0X25)
377 #define BNO055_QUATERNION_DATA_Z_LSB_ADDR (0X26)
378 #define BNO055_QUATERNION_DATA_Z_MSB_ADDR (0X27)
381 #define BNO055_LINEAR_ACCEL_DATA_X_LSB_ADDR (0X28)
382 #define BNO055_LINEAR_ACCEL_DATA_X_MSB_ADDR (0X29)
383 #define BNO055_LINEAR_ACCEL_DATA_Y_LSB_ADDR (0X2A)
384 #define BNO055_LINEAR_ACCEL_DATA_Y_MSB_ADDR (0X2B)
385 #define BNO055_LINEAR_ACCEL_DATA_Z_LSB_ADDR (0X2C)
386 #define BNO055_LINEAR_ACCEL_DATA_Z_MSB_ADDR (0X2D)
389 #define BNO055_GRAVITY_DATA_X_LSB_ADDR (0X2E)
390 #define BNO055_GRAVITY_DATA_X_MSB_ADDR (0X2F)
391 #define BNO055_GRAVITY_DATA_Y_LSB_ADDR (0X30)
392 #define BNO055_GRAVITY_DATA_Y_MSB_ADDR (0X31)
393 #define BNO055_GRAVITY_DATA_Z_LSB_ADDR (0X32)
394 #define BNO055_GRAVITY_DATA_Z_MSB_ADDR (0X33)
397 #define BNO055_TEMP_ADDR (0X34)
400 #define BNO055_CALIB_STAT_ADDR (0X35)
401 #define BNO055_SELFTEST_RESULT_ADDR (0X36)
402 #define BNO055_INTR_STAT_ADDR (0X37)
403 #define BNO055_SYS_CLK_STAT_ADDR (0X38)
404 #define BNO055_SYS_STAT_ADDR (0X39)
405 #define BNO055_SYS_ERR_ADDR (0X3A)
408 #define BNO055_UNIT_SEL_ADDR (0X3B)
409 #define BNO055_DATA_SELECT_ADDR (0X3C)
412 #define BNO055_OPR_MODE_ADDR (0X3D)
413 #define BNO055_PWR_MODE_ADDR (0X3E)
415 #define BNO055_SYS_TRIGGER_ADDR (0X3F)
416 #define BNO055_TEMP_SOURCE_ADDR (0X40)
418 #define BNO055_AXIS_MAP_CONFIG_ADDR (0X41)
419 #define BNO055_AXIS_MAP_SIGN_ADDR (0X42)
422 #define BNO055_SIC_MATRIX_0_LSB_ADDR (0X43)
423 #define BNO055_SIC_MATRIX_0_MSB_ADDR (0X44)
424 #define BNO055_SIC_MATRIX_1_LSB_ADDR (0X45)
425 #define BNO055_SIC_MATRIX_1_MSB_ADDR (0X46)
426 #define BNO055_SIC_MATRIX_2_LSB_ADDR (0X47)
427 #define BNO055_SIC_MATRIX_2_MSB_ADDR (0X48)
428 #define BNO055_SIC_MATRIX_3_LSB_ADDR (0X49)
429 #define BNO055_SIC_MATRIX_3_MSB_ADDR (0X4A)
430 #define BNO055_SIC_MATRIX_4_LSB_ADDR (0X4B)
431 #define BNO055_SIC_MATRIX_4_MSB_ADDR (0X4C)
432 #define BNO055_SIC_MATRIX_5_LSB_ADDR (0X4D)
433 #define BNO055_SIC_MATRIX_5_MSB_ADDR (0X4E)
434 #define BNO055_SIC_MATRIX_6_LSB_ADDR (0X4F)
435 #define BNO055_SIC_MATRIX_6_MSB_ADDR (0X50)
436 #define BNO055_SIC_MATRIX_7_LSB_ADDR (0X51)
437 #define BNO055_SIC_MATRIX_7_MSB_ADDR (0X52)
438 #define BNO055_SIC_MATRIX_8_LSB_ADDR (0X53)
439 #define BNO055_SIC_MATRIX_8_MSB_ADDR (0X54)
442 #define BNO055_ACCEL_OFFSET_X_LSB_ADDR (0X55)
443 #define BNO055_ACCEL_OFFSET_X_MSB_ADDR (0X56)
444 #define BNO055_ACCEL_OFFSET_Y_LSB_ADDR (0X57)
445 #define BNO055_ACCEL_OFFSET_Y_MSB_ADDR (0X58)
446 #define BNO055_ACCEL_OFFSET_Z_LSB_ADDR (0X59)
447 #define BNO055_ACCEL_OFFSET_Z_MSB_ADDR (0X5A)
450 #define BNO055_MAG_OFFSET_X_LSB_ADDR (0X5B)
451 #define BNO055_MAG_OFFSET_X_MSB_ADDR (0X5C)
452 #define BNO055_MAG_OFFSET_Y_LSB_ADDR (0X5D)
453 #define BNO055_MAG_OFFSET_Y_MSB_ADDR (0X5E)
454 #define BNO055_MAG_OFFSET_Z_LSB_ADDR (0X5F)
455 #define BNO055_MAG_OFFSET_Z_MSB_ADDR (0X60)
458 #define BNO055_GYRO_OFFSET_X_LSB_ADDR (0X61)
459 #define BNO055_GYRO_OFFSET_X_MSB_ADDR (0X62)
460 #define BNO055_GYRO_OFFSET_Y_LSB_ADDR (0X63)
461 #define BNO055_GYRO_OFFSET_Y_MSB_ADDR (0X64)
462 #define BNO055_GYRO_OFFSET_Z_LSB_ADDR (0X65)
463 #define BNO055_GYRO_OFFSET_Z_MSB_ADDR (0X66)
466 #define BNO055_ACCEL_RADIUS_LSB_ADDR (0X67)
467 #define BNO055_ACCEL_RADIUS_MSB_ADDR (0X68)
468 #define BNO055_MAG_RADIUS_LSB_ADDR (0X69)
469 #define BNO055_MAG_RADIUS_MSB_ADDR (0X6A)
474 #define BNO055_ACCEL_CONFIG_ADDR (0X08)
475 #define BNO055_MAG_CONFIG_ADDR (0X09)
476 #define BNO055_GYRO_CONFIG_ADDR (0X0A)
477 #define BNO055_GYRO_MODE_CONFIG_ADDR (0X0B)
478 #define BNO055_ACCEL_SLEEP_CONFIG_ADDR (0X0C)
479 #define BNO055_GYRO_SLEEP_CONFIG_ADDR (0X0D)
480 #define BNO055_MAG_SLEEP_CONFIG_ADDR (0x0E)
483 #define BNO055_INT_MASK_ADDR (0X0F)
484 #define BNO055_INT_ADDR (0X10)
485 #define BNO055_ACCEL_ANY_MOTION_THRES_ADDR (0X11)
486 #define BNO055_ACCEL_INTR_SETTINGS_ADDR (0X12)
487 #define BNO055_ACCEL_HIGH_G_DURN_ADDR (0X13)
488 #define BNO055_ACCEL_HIGH_G_THRES_ADDR (0X14)
489 #define BNO055_ACCEL_NO_MOTION_THRES_ADDR (0X15)
490 #define BNO055_ACCEL_NO_MOTION_SET_ADDR (0X16)
491 #define BNO055_GYRO_INTR_SETING_ADDR (0X17)
492 #define BNO055_GYRO_HIGHRATE_X_SET_ADDR (0X18)
493 #define BNO055_GYRO_DURN_X_ADDR (0X19)
494 #define BNO055_GYRO_HIGHRATE_Y_SET_ADDR (0X1A)
495 #define BNO055_GYRO_DURN_Y_ADDR (0X1B)
496 #define BNO055_GYRO_HIGHRATE_Z_SET_ADDR (0X1C)
497 #define BNO055_GYRO_DURN_Z_ADDR (0X1D)
498 #define BNO055_GYRO_ANY_MOTION_THRES_ADDR (0X1E)
499 #define BNO055_GYRO_ANY_MOTION_SET_ADDR (0X1F)
503 #define BNO055_MDELAY_DATA_TYPE u32
506 #define BNO055_RETURN_FUNCTION_TYPE s8
509 #define BNO055_FLOAT_ENABLE
510 #define BNO055_DOUBLE_ENABLE
587 #ifdef BNO055_DOUBLE_ENABLE
637 #ifdef BNO055_FLOAT_ENABLE
730 #define BNO055_INIT_VALUE ((u8)0)
731 #define BNO055_GEN_READ_WRITE_LENGTH ((u8)1)
732 #define BNO055_LSB_MSB_READ_LENGTH ((u8)2)
733 #define BNO055_MAG_POWER_MODE_RANGE ((u8)4)
734 #define BNO055_MAG_OPR_MODE_RANGE ((u8)5)
735 #define BNO055_ACCEL_POWER_MODE_RANGE ((u8)6)
736 #define BNO055_ACCEL_SLEEP_DURATION_RANGE ((u8)16)
737 #define BNO055_GYRO_AUTO_SLEEP_DURATION_RANGE ((u8)8)
738 #define BNO055_ACCEL_GYRO_BW_RANGE ((u8)8)
739 #define BNO055_MAG_OUTPUT_RANGE ((u8)8)
740 #define BNO055_ACCEL_RANGE ((u8)5)
741 #define BNO055_SHIFT_EIGHT_BITS ((u8)8)
742 #define BNO055_GYRO_RANGE ((u8)5)
743 #define BNO055_ACCEL_SLEEP_MODE_RANGE ((u8)2)
745 #define BNO055_E_NULL_PTR ((s8)-127)
746 #define BNO055_OUT_OF_RANGE ((s8)-2)
747 #define BNO055_SUCCESS ((u8)0)
748 #define BNO055_ERROR ((s8)-1)
751 #define BNO055_BIT_ENABLE (0x01)
752 #define BNO055_BIT_DISABLE (0x00)
755 #define BNO055_PAGE_ZERO (0X00)
756 #define BNO055_PAGE_ONE (0X01)
759 #define BNO055_ACCEL_TEMP_EN (0x00)
760 #define BNO055_GYRO_TEMP_EN (0x01)
761 #define BNO055_MCU_TEMP_EN (0x03)
764 #define BNO055_ACCEL_UNIT_MSQ (0x00)
765 #define BNO055_ACCEL_UNIT_MG (0x01)
768 #define BNO055_GYRO_UNIT_DPS (0x00)
769 #define BNO055_GYRO_UNIT_RPS (0x01)
772 #define BNO055_EULER_UNIT_DEG (0x00)
773 #define BNO055_EULER_UNIT_RAD (0x01)
776 #define BNO055_TEMP_UNIT_CELSIUS (0x00)
777 #define BNO055_TEMP_UNIT_FAHRENHEIT (0x01)
780 #define BNO055_ACCEL_DIV_MSQ (100.0)
781 #define BNO055_ACCEL_DIV_MG (1)
784 #define BNO055_MAG_DIV_UT (16.0)
787 #define BNO055_GYRO_DIV_DPS (16.0)
788 #define BNO055_GYRO_DIV_RPS (900.0)
791 #define BNO055_EULER_DIV_DEG (16.0)
792 #define BNO055_EULER_DIV_RAD (900.0)
795 #define BNO055_LINEAR_ACCEL_DIV_MSQ (100.0)
798 #define BNO055_GRAVITY_DIV_MSQ (100.0)
801 #define BNO055_TEMP_DIV_FAHRENHEIT (0.5)
802 #define BNO055_TEMP_DIV_CELSIUS (1)
804 #define BNO055_MODE_SWITCHING_DELAY (600)
805 #define BNO055_CONFIG_MODE_SWITCHING_DELAY ((u8)20)
810 #define BNO055_OPERATION_MODE_CONFIG (0X00)
811 #define BNO055_OPERATION_MODE_ACCONLY (0X01)
812 #define BNO055_OPERATION_MODE_MAGONLY (0X02)
813 #define BNO055_OPERATION_MODE_GYRONLY (0X03)
814 #define BNO055_OPERATION_MODE_ACCMAG (0X04)
815 #define BNO055_OPERATION_MODE_ACCGYRO (0X05)
816 #define BNO055_OPERATION_MODE_MAGGYRO (0X06)
817 #define BNO055_OPERATION_MODE_AMG (0X07)
818 #define BNO055_OPERATION_MODE_IMUPLUS (0X08)
819 #define BNO055_OPERATION_MODE_COMPASS (0X09)
820 #define BNO055_OPERATION_MODE_M4G (0X0A)
821 #define BNO055_OPERATION_MODE_NDOF_FMC_OFF (0X0B)
822 #define BNO055_OPERATION_MODE_NDOF (0X0C)
825 #define BNO055_POWER_MODE_NORMAL (0X00)
826 #define BNO055_POWER_MODE_LOWPOWER (0X01)
827 #define BNO055_POWER_MODE_SUSPEND (0X02)
832 #define BNO055_ACCEL_RANGE_2G (0X00)
833 #define BNO055_ACCEL_RANGE_4G (0X01)
834 #define BNO055_ACCEL_RANGE_8G (0X02)
835 #define BNO055_ACCEL_RANGE_16G (0X03)
838 #define BNO055_ACCEL_BW_7_81HZ (0x00)
839 #define BNO055_ACCEL_BW_15_63HZ (0x01)
840 #define BNO055_ACCEL_BW_31_25HZ (0x02)
841 #define BNO055_ACCEL_BW_62_5HZ (0X03)
842 #define BNO055_ACCEL_BW_125HZ (0X04)
843 #define BNO055_ACCEL_BW_250HZ (0X05)
844 #define BNO055_ACCEL_BW_500HZ (0X06)
845 #define BNO055_ACCEL_BW_1000HZ (0X07)
848 #define BNO055_ACCEL_NORMAL (0X00)
849 #define BNO055_ACCEL_SUSPEND (0X01)
850 #define BNO055_ACCEL_LOWPOWER_1 (0X02)
851 #define BNO055_ACCEL_STANDBY (0X03)
852 #define BNO055_ACCEL_LOWPOWER_2 (0X04)
853 #define BNO055_ACCEL_DEEPSUSPEND (0X05)
856 #define BNO055_MAG_DATA_OUTRATE_2HZ (0X00)
857 #define BNO055_MAG_DATA_OUTRATE_6HZ (0X01)
858 #define BNO055_MAG_DATA_OUTRATE_8HZ (0X02)
859 #define BNO055_MAG_DATA_OUTRATE_10HZ (0X03)
860 #define BNO055_MAG_DATA_OUTRATE_15HZ (0X04)
861 #define BNO055_MAG_DATA_OUTRATE_20HZ (0X05)
862 #define BNO055_MAG_DATA_OUTRATE_25HZ (0X06)
863 #define BNO055_MAG_DATA_OUTRATE_30HZ (0X07)
866 #define BNO055_MAG_OPERATION_MODE_LOWPOWER (0X00)
867 #define BNO055_MAG_OPERATION_MODE_REGULAR (0X01)
868 #define BNO055_MAG_OPERATION_MODE_ENHANCED_REGULAR (0X02)
869 #define BNO055_MAG_OPERATION_MODE_HIGH_ACCURACY (0X03)
872 #define BNO055_MAG_POWER_MODE_NORMAL (0X00)
873 #define BNO055_MAG_POWER_MODE_SLEEP (0X01)
874 #define BNO055_MAG_POWER_MODE_SUSPEND (0X02)
875 #define BNO055_MAG_POWER_MODE_FORCE_MODE (0X03)
878 #define BNO055_GYRO_RANGE_2000DPS (0x00)
879 #define BNO055_GYRO_RANGE_1000DPS (0x01)
880 #define BNO055_GYRO_RANGE_500DPS (0x02)
881 #define BNO055_GYRO_RANGE_250DPS (0x03)
882 #define BNO055_GYRO_RANGE_125DPS (0x04)
885 #define BNO055_GYRO_BW_523HZ (0x00)
886 #define BNO055_GYRO_BW_230HZ (0x01)
887 #define BNO055_GYRO_BW_116HZ (0x02)
888 #define BNO055_GYRO_BW_47HZ (0x03)
889 #define BNO055_GYRO_BW_23HZ (0x04)
890 #define BNO055_GYRO_BW_12HZ (0x05)
891 #define BNO055_GYRO_BW_64HZ (0x06)
892 #define BNO055_GYRO_BW_32HZ (0x07)
895 #define BNO055_GYRO_POWER_MODE_NORMAL (0X00)
896 #define BNO055_GYRO_POWER_MODE_FASTPOWERUP (0X01)
897 #define BNO055_GYRO_POWER_MODE_DEEPSUSPEND (0X02)
898 #define BNO055_GYRO_POWER_MODE_SUSPEND (0X03)
899 #define BNO055_GYRO_POWER_MODE_ADVANCE_POWERSAVE (0X04)
902 #define BNO055_ACCEL_SLEEP_DURN_0_5MS (0x05)
904 #define BNO055_ACCEL_SLEEP_DURN_1MS (0x06)
906 #define BNO055_ACCEL_SLEEP_DURN_2MS (0x07)
908 #define BNO055_ACCEL_SLEEP_DURN_4MS (0x08)
910 #define BNO055_ACCEL_SLEEP_DURN_6MS (0x09)
912 #define BNO055_ACCEL_SLEEP_DURN_10MS (0x0A)
914 #define BNO055_ACCEL_SLEEP_DURN_25MS (0x0B)
916 #define BNO055_ACCEL_SLEEP_DURN_50MS (0x0C)
918 #define BNO055_ACCEL_SLEEP_DURN_100MS (0x0D)
920 #define BNO055_ACCEL_SLEEP_DURN_500MS (0x0E)
922 #define BNO055_ACCEL_SLEEP_DURN_1S (0x0F)
926 #define BNO055_GYRO_No_AUTOSLPDUR (0x00)
927 #define BNO055_GYRO_4MS_AUTOSLPDUR (0x01)
928 #define BNO055_GYRO_5MS_AUTOSLPDUR (0x02)
929 #define BNO055_GYRO_8MS_AUTOSLPDUR (0x03)
930 #define BNO055_GYRO_10MS_AUTOSLPDUR (0x04)
931 #define BNO055_GYRO_15MS_AUTOSLPDUR (0x05)
932 #define BNO055_GYRO_20MS_AUTOSLPDUR (0x06)
933 #define BNO055_GYRO_40MS_AUTOSLPDUR (0x07)
936 #define BNO055_ACCEL_ANY_MOTION_NO_MOTION_X_AXIS (0)
937 #define BNO055_ACCEL_ANY_MOTION_NO_MOTION_Y_AXIS (1)
938 #define BNO055_ACCEL_ANY_MOTION_NO_MOTION_Z_AXIS (2)
941 #define BNO055_ACCEL_HIGH_G_X_AXIS (0)
942 #define BNO055_ACCEL_HIGH_G_Y_AXIS (1)
943 #define BNO055_ACCEL_HIGH_G_Z_AXIS (2)
946 #define BNO055_GYRO_ANY_MOTION_X_AXIS (0)
947 #define BNO055_GYRO_ANY_MOTION_Y_AXIS (1)
948 #define BNO055_GYRO_ANY_MOTION_Z_AXIS (2)
952 #define BNO055_GYRO_HIGHRATE_X_AXIS (0)
953 #define BNO055_GYRO_HIGHRATE_Y_AXIS (1)
954 #define BNO055_GYRO_HIGHRATE_Z_AXIS (2)
957 #define BNO055_REMAP_X_Y (0X21)
958 #define BNO055_REMAP_Y_Z (0X18)
959 #define BNO055_REMAP_Z_X (0X06)
960 #define BNO055_REMAP_X_Y_Z_TYPE0 (0X12)
961 #define BNO055_REMAP_X_Y_Z_TYPE1 (0X09)
962 #define BNO055_DEFAULT_AXIS (0X24)
965 #define BNO055_REMAP_AXIS_POSITIVE (0X00)
966 #define BNO055_REMAP_AXIS_NEGATIVE (0X01)
969 #define BNO055_GYRO_FILTERED_CONFIG (0x00)
970 #define BNO055_GYRO_UNFILTERED_CONFIG (0x01)
973 #define BNO055_SIC_HEX_0_0_F_F_DATA (0x00FF)
977 #define BNO055_REV_ID_SIZE (2)
978 #define BNO055_ACCEL_DATA_SIZE (2)
979 #define BNO055_ACCEL_XYZ_DATA_SIZE (6)
980 #define BNO055_MAG_DATA_SIZE (2)
981 #define BNO055_MAG_XYZ_DATA_SIZE (6)
982 #define BNO055_GYRO_DATA_SIZE (2)
983 #define BNO055_GYRO_XYZ_DATA_SIZE (6)
984 #define BNO055_EULER_DATA_SIZE (2)
985 #define BNO055_EULER_HRP_DATA_SIZE (6)
986 #define BNO055_QUATERNION_DATA_SIZE (2)
987 #define BNO055_QUATERNION_WXYZ_DATA_SIZE (8)
988 #define BNO055_GRAVITY_DATA_SIZE (2)
989 #define BNO055_GRAVITY_XYZ_DATA_SIZE (6)
990 #define BNO055_ACCEL_OFFSET_ARRAY (6)
991 #define BNO055_MAG_OFFSET_ARRAY (6)
992 #define BNO055_GYRO_OFFSET_ARRAY (6)
993 #define BNO055_SOFT_IRON_CALIBRATION_MATRIX_SIZE (18)
997 #define BNO055_SW_ID_LSB (0)
998 #define BNO055_SW_ID_MSB (1)
999 #define BNO055_SENSOR_DATA_LSB (0)
1000 #define BNO055_SENSOR_DATA_MSB (1)
1001 #define BNO055_SENSOR_DATA_EULER_LSB (0)
1002 #define BNO055_SENSOR_DATA_EULER_MSB (1)
1003 #define BNO055_SENSOR_DATA_QUATERNION_LSB (0)
1004 #define BNO055_SENSOR_DATA_QUATERNION_MSB (1)
1006 #define BNO055_SENSOR_DATA_QUATERNION_WXYZ_W_LSB (0)
1007 #define BNO055_SENSOR_DATA_QUATERNION_WXYZ_W_MSB (1)
1008 #define BNO055_SENSOR_DATA_QUATERNION_WXYZ_X_LSB (2)
1009 #define BNO055_SENSOR_DATA_QUATERNION_WXYZ_X_MSB (3)
1010 #define BNO055_SENSOR_DATA_QUATERNION_WXYZ_Y_LSB (4)
1011 #define BNO055_SENSOR_DATA_QUATERNION_WXYZ_Y_MSB (5)
1012 #define BNO055_SENSOR_DATA_QUATERNION_WXYZ_Z_LSB (6)
1013 #define BNO055_SENSOR_DATA_QUATERNION_WXYZ_Z_MSB (7)
1015 #define BNO055_SENSOR_DATA_XYZ_X_LSB (0)
1016 #define BNO055_SENSOR_DATA_XYZ_X_MSB (1)
1017 #define BNO055_SENSOR_DATA_XYZ_Y_LSB (2)
1018 #define BNO055_SENSOR_DATA_XYZ_Y_MSB (3)
1019 #define BNO055_SENSOR_DATA_XYZ_Z_LSB (4)
1020 #define BNO055_SENSOR_DATA_XYZ_Z_MSB (5)
1023 #define BNO055_SENSOR_DATA_EULER_HRP_H_LSB (0)
1024 #define BNO055_SENSOR_DATA_EULER_HRP_H_MSB (1)
1025 #define BNO055_SENSOR_DATA_EULER_HRP_R_LSB (2)
1026 #define BNO055_SENSOR_DATA_EULER_HRP_R_MSB (3)
1027 #define BNO055_SENSOR_DATA_EULER_HRP_P_LSB (4)
1028 #define BNO055_SENSOR_DATA_EULER_HRP_P_MSB (5)
1030 #define BNO055_SOFT_IRON_CALIB_0_LSB (0)
1031 #define BNO055_SOFT_IRON_CALIB_0_MSB (1)
1032 #define BNO055_SOFT_IRON_CALIB_1_LSB (2)
1033 #define BNO055_SOFT_IRON_CALIB_1_MSB (3)
1034 #define BNO055_SOFT_IRON_CALIB_2_LSB (4)
1035 #define BNO055_SOFT_IRON_CALIB_2_MSB (5)
1036 #define BNO055_SOFT_IRON_CALIB_3_LSB (6)
1037 #define BNO055_SOFT_IRON_CALIB_3_MSB (7)
1038 #define BNO055_SOFT_IRON_CALIB_4_LSB (8)
1039 #define BNO055_SOFT_IRON_CALIB_4_MSB (9)
1040 #define BNO055_SOFT_IRON_CALIB_5_LSB (10)
1041 #define BNO055_SOFT_IRON_CALIB_5_MSB (11)
1042 #define BNO055_SOFT_IRON_CALIB_6_LSB (12)
1043 #define BNO055_SOFT_IRON_CALIB_6_MSB (13)
1044 #define BNO055_SOFT_IRON_CALIB_7_LSB (14)
1045 #define BNO055_SOFT_IRON_CALIB_7_MSB (15)
1046 #define BNO055_SOFT_IRON_CALIB_8_LSB (16)
1047 #define BNO055_SOFT_IRON_CALIB_8_MSB (17)
1049 #define BNO055_SENSOR_OFFSET_DATA_X_LSB (0)
1050 #define BNO055_SENSOR_OFFSET_DATA_X_MSB (1)
1051 #define BNO055_SENSOR_OFFSET_DATA_Y_LSB (2)
1052 #define BNO055_SENSOR_OFFSET_DATA_Y_MSB (3)
1053 #define BNO055_SENSOR_OFFSET_DATA_Z_LSB (4)
1054 #define BNO055_SENSOR_OFFSET_DATA_Z_MSB (5)
1056 #define BNO055_OFFSET_RADIUS_LSB (0)
1057 #define BNO055_OFFSET_RADIUS_MSB (1)
1062 #define BNO055_CHIP_ID_POS (0)
1063 #define BNO055_CHIP_ID_MSK (0xFF)
1064 #define BNO055_CHIP_ID_LEN (8)
1065 #define BNO055_CHIP_ID_REG BNO055_CHIP_ID_ADDR
1068 #define BNO055_ACCEL_REV_ID_POS (0)
1069 #define BNO055_ACCEL_REV_ID_MSK (0xFF)
1070 #define BNO055_ACCEL_REV_ID_LEN (8)
1071 #define BNO055_ACCEL_REV_ID_REG BNO055_ACCEL_REV_ID_ADDR
1074 #define BNO055_MAG_REV_ID_POS (0)
1075 #define BNO055_MAG_REV_ID_MSK (0xFF)
1076 #define BNO055_MAG_REV_ID_LEN (8)
1077 #define BNO055_MAG_REV_ID_REG BNO055_MAG_REV_ID_ADDR
1080 #define BNO055_GYRO_REV_ID_POS (0)
1081 #define BNO055_GYRO_REV_ID_MSK (0xFF)
1082 #define BNO055_GYRO_REV_ID_LEN (8)
1083 #define BNO055_GYRO_REV_ID_REG BNO055_GYRO_REV_ID_ADDR
1086 #define BNO055_SW_REV_ID_LSB_POS (0)
1087 #define BNO055_SW_REV_ID_LSB_MSK (0xFF)
1088 #define BNO055_SW_REV_ID_LSB_LEN (8)
1089 #define BNO055_SW_REV_ID_LSB_REG BNO055_SW_REV_ID_LSB_ADDR
1092 #define BNO055_SW_REV_ID_MSB_POS (0)
1093 #define BNO055_SW_REV_ID_MSB_MSK (0xFF)
1094 #define BNO055_SW_REV_ID_MSB_LEN (8)
1095 #define BNO055_SW_REV_ID_MSB_REG BNO055_SW_REV_ID_MSB_ADDR
1098 #define BNO055_BL_REV_ID_POS (0)
1099 #define BNO055_BL_REV_ID_MSK (0xFF)
1100 #define BNO055_BL_REV_ID_LEN (8)
1101 #define BNO055_BL_REV_ID_REG BNO055_BL_REV_ID_ADDR
1104 #define BNO055_PAGE_ID_POS (0)
1105 #define BNO055_PAGE_ID_MSK (0xFF)
1106 #define BNO055_PAGE_ID_LEN (8)
1107 #define BNO055_PAGE_ID_REG BNO055_PAGE_ID_ADDR
1110 #define BNO055_ACCEL_DATA_X_LSB_VALUEX_POS (0)
1111 #define BNO055_ACCEL_DATA_X_LSB_VALUEX_MSK (0xFF)
1112 #define BNO055_ACCEL_DATA_X_LSB_VALUEX_LEN (8)
1113 #define BNO055_ACCEL_DATA_X_LSB_VALUEX_REG \
1114 BNO055_ACCEL_DATA_X_LSB_ADDR
1117 #define BNO055_ACCEL_DATA_X_MSB_VALUEX_POS (0)
1118 #define BNO055_ACCEL_DATA_X_MSB_VALUEX_MSK (0xFF)
1119 #define BNO055_ACCEL_DATA_X_MSB_VALUEX_LEN (8)
1120 #define BNO055_ACCEL_DATA_X_MSB_VALUEX_REG \
1121 BNO055_ACCEL_DATA_X_MSB_ADDR
1124 #define BNO055_ACCEL_DATA_Y_LSB_VALUEY_POS (0)
1125 #define BNO055_ACCEL_DATA_Y_LSB_VALUEY_MSK (0xFF)
1126 #define BNO055_ACCEL_DATA_Y_LSB_VALUEY_LEN (8)
1127 #define BNO055_ACCEL_DATA_Y_LSB_VALUEY_REG \
1128 BNO055_ACCEL_DATA_Y_LSB_ADDR
1131 #define BNO055_ACCEL_DATA_Y_MSB_VALUEY_POS (0)
1132 #define BNO055_ACCEL_DATA_Y_MSB_VALUEY_MSK (0xFF)
1133 #define BNO055_ACCEL_DATA_Y_MSB_VALUEY_LEN (8)
1134 #define BNO055_ACCEL_DATA_Y_MSB_VALUEY_REG \
1135 BNO055_ACCEL_DATA_Y_MSB_ADDR
1138 #define BNO055_ACCEL_DATA_Z_LSB_VALUEZ_POS (0)
1139 #define BNO055_ACCEL_DATA_Z_LSB_VALUEZ_MSK (0xFF)
1140 #define BNO055_ACCEL_DATA_Z_LSB_VALUEZ_LEN (8)
1141 #define BNO055_ACCEL_DATA_Z_LSB_VALUEZ_REG \
1142 BNO055_ACCEL_DATA_Z_LSB_ADDR
1145 #define BNO055_ACCEL_DATA_Z_MSB_VALUEZ_POS (0)
1146 #define BNO055_ACCEL_DATA_Z_MSB_VALUEZ_MSK (0xFF)
1147 #define BNO055_ACCEL_DATA_Z_MSB_VALUEZ_LEN (8)
1148 #define BNO055_ACCEL_DATA_Z_MSB_VALUEZ_REG \
1149 BNO055_ACCEL_DATA_Z_MSB_ADDR
1152 #define BNO055_MAG_DATA_X_LSB_VALUEX_POS (0)
1153 #define BNO055_MAG_DATA_X_LSB_VALUEX_MSK (0xFF)
1154 #define BNO055_MAG_DATA_X_LSB_VALUEX_LEN (8)
1155 #define BNO055_MAG_DATA_X_LSB_VALUEX_REG \
1156 BNO055_MAG_DATA_X_LSB_ADDR
1159 #define BNO055_MAG_DATA_X_MSB_VALUEX_POS (0)
1160 #define BNO055_MAG_DATA_X_MSB_VALUEX_MSK (0xFF)
1161 #define BNO055_MAG_DATA_X_MSB_VALUEX_LEN (8)
1162 #define BNO055_MAG_DATA_X_MSB_VALUEX_REG BNO055_MAG_DATA_X_MSB_ADDR
1165 #define BNO055_MAG_DATA_Y_LSB_VALUEY_POS (0)
1166 #define BNO055_MAG_DATA_Y_LSB_VALUEY_MSK (0xFF)
1167 #define BNO055_MAG_DATA_Y_LSB_VALUEY_LEN (8)
1168 #define BNO055_MAG_DATA_Y_LSB_VALUEY_REG BNO055_MAG_DATA_Y_LSB_ADDR
1171 #define BNO055_MAG_DATA_Y_MSB_VALUEY_POS (0)
1172 #define BNO055_MAG_DATA_Y_MSB_VALUEY_MSK (0xFF)
1173 #define BNO055_MAG_DATA_Y_MSB_VALUEY_LEN (8)
1174 #define BNO055_MAG_DATA_Y_MSB_VALUEY_REG BNO055_MAG_DATA_Y_MSB_ADDR
1177 #define BNO055_MAG_DATA_Z_LSB_VALUEZ_POS (0)
1178 #define BNO055_MAG_DATA_Z_LSB_VALUEZ_MSK (0xFF)
1179 #define BNO055_MAG_DATA_Z_LSB_VALUEZ_LEN (8)
1180 #define BNO055_MAG_DATA_Z_LSB_VALUEZ_REG BNO055_MAG_DATA_Z_LSB_ADDR
1183 #define BNO055_MAG_DATA_Z_MSB_VALUEZ_POS (0)
1184 #define BNO055_MAG_DATA_Z_MSB_VALUEZ_MSK (0xFF)
1185 #define BNO055_MAG_DATA_Z_MSB_VALUEZ_LEN (8)
1186 #define BNO055_MAG_DATA_Z_MSB_VALUEZ_REG BNO055_MAG_DATA_Z_MSB_ADDR
1189 #define BNO055_GYRO_DATA_X_LSB_VALUEX_POS (0)
1190 #define BNO055_GYRO_DATA_X_LSB_VALUEX_MSK (0xFF)
1191 #define BNO055_GYRO_DATA_X_LSB_VALUEX_LEN (8)
1192 #define BNO055_GYRO_DATA_X_LSB_VALUEX_REG BNO055_GYRO_DATA_X_LSB_ADDR
1195 #define BNO055_GYRO_DATA_X_MSB_VALUEX_POS (0)
1196 #define BNO055_GYRO_DATA_X_MSB_VALUEX_MSK (0xFF)
1197 #define BNO055_GYRO_DATA_X_MSB_VALUEX_LEN (8)
1198 #define BNO055_GYRO_DATA_X_MSB_VALUEX_REG BNO055_GYRO_DATA_X_MSB_ADDR
1201 #define BNO055_GYRO_DATA_Y_LSB_VALUEY_POS (0)
1202 #define BNO055_GYRO_DATA_Y_LSB_VALUEY_MSK (0xFF)
1203 #define BNO055_GYRO_DATA_Y_LSB_VALUEY_LEN (8)
1204 #define BNO055_GYRO_DATA_Y_LSB_VALUEY_REG BNO055_GYRO_DATA_Y_LSB_ADDR
1207 #define BNO055_GYRO_DATA_Y_MSB_VALUEY_POS (0)
1208 #define BNO055_GYRO_DATA_Y_MSB_VALUEY_MSK (0xFF)
1209 #define BNO055_GYRO_DATA_Y_MSB_VALUEY_LEN (8)
1210 #define BNO055_GYRO_DATA_Y_MSB_VALUEY_REG BNO055_GYRO_DATA_Y_MSB_ADDR
1213 #define BNO055_GYRO_DATA_Z_LSB_VALUEZ_POS (0)
1214 #define BNO055_GYRO_DATA_Z_LSB_VALUEZ_MSK (0xFF)
1215 #define BNO055_GYRO_DATA_Z_LSB_VALUEZ_LEN (8)
1216 #define BNO055_GYRO_DATA_Z_LSB_VALUEZ_REG BNO055_GYRO_DATA_Z_LSB_ADDR
1219 #define BNO055_GYRO_DATA_Z_MSB_VALUEZ_POS (0)
1220 #define BNO055_GYRO_DATA_Z_MSB_VALUEZ_MSK (0xFF)
1221 #define BNO055_GYRO_DATA_Z_MSB_VALUEZ_LEN (8)
1222 #define BNO055_GYRO_DATA_Z_MSB_VALUEZ_REG BNO055_GYRO_DATA_Z_MSB_ADDR
1225 #define BNO055_EULER_H_LSB_VALUEH_POS (0)
1226 #define BNO055_EULER_H_LSB_VALUEH_MSK (0xFF)
1227 #define BNO055_EULER_H_LSB_VALUEH_LEN (8)
1228 #define BNO055_EULER_H_LSB_VALUEH_REG BNO055_EULER_H_LSB_ADDR
1231 #define BNO055_EULER_H_MSB_VALUEH_POS (0)
1232 #define BNO055_EULER_H_MSB_VALUEH_MSK (0xFF)
1233 #define BNO055_EULER_H_MSB_VALUEH_LEN (8)
1234 #define BNO055_EULER_H_MSB_VALUEH_REG BNO055_EULER_H_MSB_ADDR
1237 #define BNO055_EULER_R_LSB_VALUER_POS (0)
1238 #define BNO055_EULER_R_LSB_VALUER_MSK (0xFF)
1239 #define BNO055_EULER_R_LSB_VALUER_LEN (8)
1240 #define BNO055_EULER_R_LSB_VALUER_REG BNO055_EULER_R_LSB_ADDR
1243 #define BNO055_EULER_R_MSB_VALUER_POS (0)
1244 #define BNO055_EULER_R_MSB_VALUER_MSK (0xFF)
1245 #define BNO055_EULER_R_MSB_VALUER_LEN (8)
1246 #define BNO055_EULER_R_MSB_VALUER_REG BNO055_EULER_R_MSB_ADDR
1249 #define BNO055_EULER_P_LSB_VALUEP_POS (0)
1250 #define BNO055_EULER_P_LSB_VALUEP_MSK (0xFF)
1251 #define BNO055_EULER_P_LSB_VALUEP_LEN (8)
1252 #define BNO055_EULER_P_LSB_VALUEP_REG BNO055_EULER_P_LSB_ADDR
1255 #define BNO055_EULER_P_MSB_VALUEP_POS (0)
1256 #define BNO055_EULER_P_MSB_VALUEP_MSK (0xFF)
1257 #define BNO055_EULER_P_MSB_VALUEP_LEN (8)
1258 #define BNO055_EULER_P_MSB_VALUEP_REG BNO055_EULER_P_MSB_ADDR
1261 #define BNO055_QUATERNION_DATA_W_LSB_VALUEW_POS (0)
1262 #define BNO055_QUATERNION_DATA_W_LSB_VALUEW_MSK (0xFF)
1263 #define BNO055_QUATERNION_DATA_W_LSB_VALUEW_LEN (8)
1264 #define BNO055_QUATERNION_DATA_W_LSB_VALUEW_REG \
1265 BNO055_QUATERNION_DATA_W_LSB_ADDR
1268 #define BNO055_QUATERNION_DATA_W_MSB_VALUEW_POS (0)
1269 #define BNO055_QUATERNION_DATA_W_MSB_VALUEW_MSK (0xFF)
1270 #define BNO055_QUATERNION_DATA_W_MSB_VALUEW_LEN (8)
1271 #define BNO055_QUATERNION_DATA_W_MSB_VALUEW_REG \
1272 BNO055_QUATERNION_DATA_W_MSB_ADDR
1275 #define BNO055_QUATERNION_DATA_X_LSB_VALUEX_POS (0)
1276 #define BNO055_QUATERNION_DATA_X_LSB_VALUEX_MSK (0xFF)
1277 #define BNO055_QUATERNION_DATA_X_LSB_VALUEX_LEN (8)
1278 #define BNO055_QUATERNION_DATA_X_LSB_VALUEX_REG \
1279 BNO055_QUATERNION_DATA_X_LSB_ADDR
1282 #define BNO055_QUATERNION_DATA_X_MSB_VALUEX_POS (0)
1283 #define BNO055_QUATERNION_DATA_X_MSB_VALUEX_MSK (0xFF)
1284 #define BNO055_QUATERNION_DATA_X_MSB_VALUEX_LEN (8)
1285 #define BNO055_QUATERNION_DATA_X_MSB_VALUEX_REG \
1286 BNO055_QUATERNION_DATA_X_MSB_ADDR
1289 #define BNO055_QUATERNION_DATA_Y_LSB_VALUEY_POS (0)
1290 #define BNO055_QUATERNION_DATA_Y_LSB_VALUEY_MSK (0xFF)
1291 #define BNO055_QUATERNION_DATA_Y_LSB_VALUEY_LEN (8)
1292 #define BNO055_QUATERNION_DATA_Y_LSB_VALUEY_REG \
1293 BNO055_QUATERNION_DATA_Y_LSB_ADDR
1296 #define BNO055_QUATERNION_DATA_Y_MSB_VALUEY_POS (0)
1297 #define BNO055_QUATERNION_DATA_Y_MSB_VALUEY_MSK (0xFF)
1298 #define BNO055_QUATERNION_DATA_Y_MSB_VALUEY_LEN (8)
1299 #define BNO055_QUATERNION_DATA_Y_MSB_VALUEY_REG \
1300 BNO055_QUATERNION_DATA_Y_MSB_ADDR
1303 #define BNO055_QUATERNION_DATA_Z_LSB_VALUEZ_POS (0)
1304 #define BNO055_QUATERNION_DATA_Z_LSB_VALUEZ_MSK (0xFF)
1305 #define BNO055_QUATERNION_DATA_Z_LSB_VALUEZ_LEN (8)
1306 #define BNO055_QUATERNION_DATA_Z_LSB_VALUEZ_REG \
1307 BNO055_QUATERNION_DATA_Z_LSB_ADDR
1310 #define BNO055_QUATERNION_DATA_Z_MSB_VALUEZ_POS (0)
1311 #define BNO055_QUATERNION_DATA_Z_MSB_VALUEZ_MSK (0xFF)
1312 #define BNO055_QUATERNION_DATA_Z_MSB_VALUEZ_LEN (8)
1313 #define BNO055_QUATERNION_DATA_Z_MSB_VALUEZ_REG \
1314 BNO055_QUATERNION_DATA_Z_MSB_ADDR
1317 #define BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX_POS (0)
1318 #define BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX_MSK (0xFF)
1319 #define BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX_LEN (8)
1320 #define BNO055_LINEAR_ACCEL_DATA_X_LSB_VALUEX_REG \
1321 BNO055_LINEAR_ACCEL_DATA_X_LSB_ADDR
1324 #define BNO055_LINEAR_ACCEL_DATA_X_MSB_VALUEX_POS (0)
1325 #define BNO055_LINEAR_ACCEL_DATA_X_MSB_VALUEX_MSK (0xFF)
1326 #define BNO055_LINEAR_ACCEL_DATA_X_MSB_VALUEX_LEN (8)
1327 #define BNO055_LINEAR_ACCEL_DATA_X_MSB_VALUEX_REG \
1328 BNO055_LINEAR_ACCEL_DATA_X_MSB_ADDR
1331 #define BNO055_LINEAR_ACCEL_DATA_Y_LSB_VALUEY_POS (0)
1332 #define BNO055_LINEAR_ACCEL_DATA_Y_LSB_VALUEY_MSK (0xFF)
1333 #define BNO055_LINEAR_ACCEL_DATA_Y_LSB_VALUEY_LEN (8)
1334 #define BNO055_LINEAR_ACCEL_DATA_Y_LSB_VALUEY_REG \
1335 BNO055_LINEAR_ACCEL_DATA_Y_LSB_ADDR
1338 #define BNO055_LINEAR_ACCEL_DATA_Y_MSB_VALUEY_POS (0)
1339 #define BNO055_LINEAR_ACCEL_DATA_Y_MSB_VALUEY_MSK (0xFF)
1340 #define BNO055_LINEAR_ACCEL_DATA_Y_MSB_VALUEY_LEN (8)
1341 #define BNO055_LINEAR_ACCEL_DATA_Y_MSB_VALUEY_REG \
1342 BNO055_LINEAR_ACCEL_DATA_Y_MSB_ADDR
1345 #define BNO055_LINEAR_ACCEL_DATA_Z_LSB_VALUEZ_POS (0)
1346 #define BNO055_LINEAR_ACCEL_DATA_Z_LSB_VALUEZ_MSK (0xFF)
1347 #define BNO055_LINEAR_ACCEL_DATA_Z_LSB_VALUEZ_LEN (8)
1348 #define BNO055_LINEAR_ACCEL_DATA_Z_LSB_VALUEZ_REG \
1349 BNO055_LINEAR_ACCEL_DATA_Z_LSB_ADDR
1352 #define BNO055_LINEAR_ACCEL_DATA_Z_MSB_VALUEZ_POS (0)
1353 #define BNO055_LINEAR_ACCEL_DATA_Z_MSB_VALUEZ_MSK (0xFF)
1354 #define BNO055_LINEAR_ACCEL_DATA_Z_MSB_VALUEZ_LEN (8)
1355 #define BNO055_LINEAR_ACCEL_DATA_Z_MSB_VALUEZ_REG \
1356 BNO055_LINEAR_ACCEL_DATA_Z_MSB_ADDR
1359 #define BNO055_GRAVITY_DATA_X_LSB_VALUEX_POS (0)
1360 #define BNO055_GRAVITY_DATA_X_LSB_VALUEX_MSK (0xFF)
1361 #define BNO055_GRAVITY_DATA_X_LSB_VALUEX_LEN (8)
1362 #define BNO055_GRAVITY_DATA_X_LSB_VALUEX_REG \
1363 BNO055_GRAVITY_DATA_X_LSB_ADDR
1366 #define BNO055_GRAVITY_DATA_X_MSB_VALUEX_POS (0)
1367 #define BNO055_GRAVITY_DATA_X_MSB_VALUEX_MSK (0xFF)
1368 #define BNO055_GRAVITY_DATA_X_MSB_VALUEX_LEN (8)
1369 #define BNO055_GRAVITY_DATA_X_MSB_VALUEX_REG \
1370 BNO055_GRAVITY_DATA_X_MSB_ADDR
1373 #define BNO055_GRAVITY_DATA_Y_LSB_VALUEY_POS (0)
1374 #define BNO055_GRAVITY_DATA_Y_LSB_VALUEY_MSK (0xFF)
1375 #define BNO055_GRAVITY_DATA_Y_LSB_VALUEY_LEN (8)
1376 #define BNO055_GRAVITY_DATA_Y_LSB_VALUEY_REG \
1377 BNO055_GRAVITY_DATA_Y_LSB_ADDR
1380 #define BNO055_GRAVITY_DATA_Y_MSB_VALUEY_POS (0)
1381 #define BNO055_GRAVITY_DATA_Y_MSB_VALUEY_MSK (0xFF)
1382 #define BNO055_GRAVITY_DATA_Y_MSB_VALUEY_LEN (8)
1383 #define BNO055_GRAVITY_DATA_Y_MSB_VALUEY_REG \
1384 BNO055_GRAVITY_DATA_Y_MSB_ADDR
1387 #define BNO055_GRAVITY_DATA_Z_LSB_VALUEZ_POS (0)
1388 #define BNO055_GRAVITY_DATA_Z_LSB_VALUEZ_MSK (0xFF)
1389 #define BNO055_GRAVITY_DATA_Z_LSB_VALUEZ_LEN (8)
1390 #define BNO055_GRAVITY_DATA_Z_LSB_VALUEZ_REG \
1391 BNO055_GRAVITY_DATA_Z_LSB_ADDR
1394 #define BNO055_GRAVITY_DATA_Z_MSB_VALUEZ_POS (0)
1395 #define BNO055_GRAVITY_DATA_Z_MSB_VALUEZ_MSK (0xFF)
1396 #define BNO055_GRAVITY_DATA_Z_MSB_VALUEZ_LEN (8)
1397 #define BNO055_GRAVITY_DATA_Z_MSB_VALUEZ_REG \
1398 BNO055_GRAVITY_DATA_Z_MSB_ADDR
1401 #define BNO055_TEMP_POS (0)
1402 #define BNO055_TEMP_MSK (0xFF)
1403 #define BNO055_TEMP_LEN (8)
1404 #define BNO055_TEMP_REG BNO055_TEMP_ADDR
1407 #define BNO055_MAG_CALIB_STAT_POS (0)
1408 #define BNO055_MAG_CALIB_STAT_MSK (0X03)
1409 #define BNO055_MAG_CALIB_STAT_LEN (2)
1410 #define BNO055_MAG_CALIB_STAT_REG BNO055_CALIB_STAT_ADDR
1413 #define BNO055_ACCEL_CALIB_STAT_POS (2)
1414 #define BNO055_ACCEL_CALIB_STAT_MSK (0X0C)
1415 #define BNO055_ACCEL_CALIB_STAT_LEN (2)
1416 #define BNO055_ACCEL_CALIB_STAT_REG BNO055_CALIB_STAT_ADDR
1419 #define BNO055_GYRO_CALIB_STAT_POS (4)
1420 #define BNO055_GYRO_CALIB_STAT_MSK (0X30)
1421 #define BNO055_GYRO_CALIB_STAT_LEN (2)
1422 #define BNO055_GYRO_CALIB_STAT_REG BNO055_CALIB_STAT_ADDR
1425 #define BNO055_SYS_CALIB_STAT_POS (6)
1426 #define BNO055_SYS_CALIB_STAT_MSK (0XC0)
1427 #define BNO055_SYS_CALIB_STAT_LEN (2)
1428 #define BNO055_SYS_CALIB_STAT_REG BNO055_CALIB_STAT_ADDR
1431 #define BNO055_SELFTEST_ACCEL_POS (0)
1432 #define BNO055_SELFTEST_ACCEL_MSK (0X01)
1433 #define BNO055_SELFTEST_ACCEL_LEN (1)
1434 #define BNO055_SELFTEST_ACCEL_REG BNO055_SELFTEST_RESULT_ADDR
1437 #define BNO055_SELFTEST_MAG_POS (1)
1438 #define BNO055_SELFTEST_MAG_MSK (0X02)
1439 #define BNO055_SELFTEST_MAG_LEN (1)
1440 #define BNO055_SELFTEST_MAG_REG BNO055_SELFTEST_RESULT_ADDR
1443 #define BNO055_SELFTEST_GYRO_POS (2)
1444 #define BNO055_SELFTEST_GYRO_MSK (0X04)
1445 #define BNO055_SELFTEST_GYRO_LEN (1)
1446 #define BNO055_SELFTEST_GYRO_REG BNO055_SELFTEST_RESULT_ADDR
1449 #define BNO055_SELFTEST_MCU_POS (3)
1450 #define BNO055_SELFTEST_MCU_MSK (0X08)
1451 #define BNO055_SELFTEST_MCU_LEN (1)
1452 #define BNO055_SELFTEST_MCU_REG BNO055_SELFTEST_RESULT_ADDR
1455 #define BNO055_INTR_STAT_GYRO_ANY_MOTION_POS (2)
1456 #define BNO055_INTR_STAT_GYRO_ANY_MOTION_MSK (0X04)
1457 #define BNO055_INTR_STAT_GYRO_ANY_MOTION_LEN (1)
1458 #define BNO055_INTR_STAT_GYRO_ANY_MOTION_REG BNO055_INTR_STAT_ADDR
1460 #define BNO055_INTR_STAT_GYRO_HIGHRATE_POS (3)
1461 #define BNO055_INTR_STAT_GYRO_HIGHRATE_MSK (0X08)
1462 #define BNO055_INTR_STAT_GYRO_HIGHRATE_LEN (1)
1463 #define BNO055_INTR_STAT_GYRO_HIGHRATE_REG BNO055_INTR_STAT_ADDR
1465 #define BNO055_INTR_STAT_ACCEL_HIGH_G_POS (5)
1466 #define BNO055_INTR_STAT_ACCEL_HIGH_G_MSK (0X20)
1467 #define BNO055_INTR_STAT_ACCEL_HIGH_G_LEN (1)
1468 #define BNO055_INTR_STAT_ACCEL_HIGH_G_REG BNO055_INTR_STAT_ADDR
1470 #define BNO055_INTR_STAT_ACCEL_ANY_MOTION_POS (6)
1471 #define BNO055_INTR_STAT_ACCEL_ANY_MOTION_MSK (0X40)
1472 #define BNO055_INTR_STAT_ACCEL_ANY_MOTION_LEN (1)
1473 #define BNO055_INTR_STAT_ACCEL_ANY_MOTION_REG BNO055_INTR_STAT_ADDR
1475 #define BNO055_INTR_STAT_ACCEL_NO_MOTION_POS (7)
1476 #define BNO055_INTR_STAT_ACCEL_NO_MOTION_MSK (0X80)
1477 #define BNO055_INTR_STAT_ACCEL_NO_MOTION_LEN (1)
1478 #define BNO055_INTR_STAT_ACCEL_NO_MOTION_REG BNO055_INTR_STAT_ADDR
1481 #define BNO055_SYS_MAIN_CLK_POS (0)
1482 #define BNO055_SYS_MAIN_CLK_MSK (0X10)
1483 #define BNO055_SYS_MAIN_CLK_LEN (1)
1484 #define BNO055_SYS_MAIN_CLK_REG BNO055_SYS_CLK_STAT_ADDR
1487 #define BNO055_SYS_STAT_CODE_POS (0)
1488 #define BNO055_SYS_STAT_CODE_MSK (0XFF)
1489 #define BNO055_SYS_STAT_CODE_LEN (8)
1490 #define BNO055_SYS_STAT_CODE_REG BNO055_SYS_STAT_ADDR
1492 #define BNO055_SYS_ERROR_CODE_POS (0)
1493 #define BNO055_SYS_ERROR_CODE_MSK (0XFF)
1494 #define BNO055_SYS_ERROR_CODE_LEN (8)
1495 #define BNO055_SYS_ERROR_CODE_REG BNO055_SYS_ERR_ADDR
1498 #define BNO055_ACCEL_UNIT_POS (0)
1499 #define BNO055_ACCEL_UNIT_MSK (0X01)
1500 #define BNO055_ACCEL_UNIT_LEN (1)
1501 #define BNO055_ACCEL_UNIT_REG BNO055_UNIT_SEL_ADDR
1504 #define BNO055_GYRO_UNIT_POS (1)
1505 #define BNO055_GYRO_UNIT_MSK (0X02)
1506 #define BNO055_GYRO_UNIT_LEN (1)
1507 #define BNO055_GYRO_UNIT_REG BNO055_UNIT_SEL_ADDR
1510 #define BNO055_EULER_UNIT_POS (2)
1511 #define BNO055_EULER_UNIT_MSK (0X04)
1512 #define BNO055_EULER_UNIT_LEN (1)
1513 #define BNO055_EULER_UNIT_REG BNO055_UNIT_SEL_ADDR
1516 #define BNO055_TILT_UNIT_POS (3)
1517 #define BNO055_TILT_UNIT_MSK (0X08)
1518 #define BNO055_TILT_UNIT_LEN (1)
1519 #define BNO055_TILT_UNIT_REG BNO055_UNIT_SEL_ADDR
1522 #define BNO055_TEMP_UNIT_POS (4)
1523 #define BNO055_TEMP_UNIT_MSK (0X10)
1524 #define BNO055_TEMP_UNIT_LEN (1)
1525 #define BNO055_TEMP_UNIT_REG BNO055_UNIT_SEL_ADDR
1528 #define BNO055_DATA_OUTPUT_FORMAT_POS (7)
1529 #define BNO055_DATA_OUTPUT_FORMAT_MSK (0X80)
1530 #define BNO055_DATA_OUTPUT_FORMAT_LEN (1)
1531 #define BNO055_DATA_OUTPUT_FORMAT_REG BNO055_UNIT_SEL_ADDR
1533 #define BNO055_OPERATION_MODE_POS (0)
1534 #define BNO055_OPERATION_MODE_MSK (0X0F)
1535 #define BNO055_OPERATION_MODE_LEN (4)
1536 #define BNO055_OPERATION_MODE_REG BNO055_OPR_MODE_ADDR
1538 #define BNO055_POWER_MODE_POS (0)
1539 #define BNO055_POWER_MODE_MSK (0X03)
1540 #define BNO055_POWER_MODE_LEN (2)
1541 #define BNO055_POWER_MODE_REG BNO055_PWR_MODE_ADDR
1544 #define BNO055_SELFTEST_POS (0)
1545 #define BNO055_SELFTEST_MSK (0X01)
1546 #define BNO055_SELFTEST_LEN (1)
1547 #define BNO055_SELFTEST_REG BNO055_SYS_TRIGGER_ADDR
1550 #define BNO055_SYS_RST_POS (5)
1551 #define BNO055_SYS_RST_MSK (0X20)
1552 #define BNO055_SYS_RST_LEN (1)
1553 #define BNO055_SYS_RST_REG BNO055_SYS_TRIGGER_ADDR
1556 #define BNO055_INTR_RST_POS (6)
1557 #define BNO055_INTR_RST_MSK (0X40)
1558 #define BNO055_INTR_RST_LEN (1)
1559 #define BNO055_INTR_RST_REG BNO055_SYS_TRIGGER_ADDR
1562 #define BNO055_CLK_SRC_POS (7)
1563 #define BNO055_CLK_SRC_MSK (0X80)
1564 #define BNO055_CLK_SRC_LEN (1)
1565 #define BNO055_CLK_SRC_REG BNO055_SYS_TRIGGER_ADDR
1568 #define BNO055_TEMP_SOURCE_POS (0)
1569 #define BNO055_TEMP_SOURCE_MSK (0X03)
1570 #define BNO055_TEMP_SOURCE_LEN (2)
1571 #define BNO055_TEMP_SOURCE_REG BNO055_TEMP_SOURCE_ADDR
1574 #define BNO055_REMAP_AXIS_VALUE_POS (0)
1575 #define BNO055_REMAP_AXIS_VALUE_MSK (0X3F)
1576 #define BNO055_REMAP_AXIS_VALUE_LEN (6)
1577 #define BNO055_REMAP_AXIS_VALUE_REG BNO055_AXIS_MAP_CONFIG_ADDR
1580 #define BNO055_REMAP_Z_SIGN_POS (0)
1581 #define BNO055_REMAP_Z_SIGN_MSK (0X01)
1582 #define BNO055_REMAP_Z_SIGN_LEN (1)
1583 #define BNO055_REMAP_Z_SIGN_REG BNO055_AXIS_MAP_SIGN_ADDR
1585 #define BNO055_REMAP_Y_SIGN_POS (1)
1586 #define BNO055_REMAP_Y_SIGN_MSK (0X02)
1587 #define BNO055_REMAP_Y_SIGN_LEN (1)
1588 #define BNO055_REMAP_Y_SIGN_REG BNO055_AXIS_MAP_SIGN_ADDR
1590 #define BNO055_REMAP_X_SIGN_POS (2)
1591 #define BNO055_REMAP_X_SIGN_MSK (0X04)
1592 #define BNO055_REMAP_X_SIGN_LEN (1)
1593 #define BNO055_REMAP_X_SIGN_REG BNO055_AXIS_MAP_SIGN_ADDR
1596 #define BNO055_SIC_MATRIX_0_LSB_POS (0)
1597 #define BNO055_SIC_MATRIX_0_LSB_MSK (0XFF)
1598 #define BNO055_SIC_MATRIX_0_LSB_LEN (8)
1599 #define BNO055_SIC_MATRIX_0_LSB_REG BNO055_SIC_MATRIX_0_LSB_ADDR
1601 #define BNO055_SIC_MATRIX_0_MSB_POS (0)
1602 #define BNO055_SIC_MATRIX_0_MSB_MSK (0XFF)
1603 #define BNO055_SIC_MATRIX_0_MSB_LEN (8)
1604 #define BNO055_SIC_MATRIX_0_MSB_REG BNO055_SIC_MATRIX_0_MSB_ADDR
1606 #define BNO055_SIC_MATRIX_1_LSB_POS (0)
1607 #define BNO055_SIC_MATRIX_1_LSB_MSK (0XFF)
1608 #define BNO055_SIC_MATRIX_1_LSB_LEN (8)
1609 #define BNO055_SIC_MATRIX_1_LSB_REG BNO055_SIC_MATRIX_1_LSB_ADDR
1611 #define BNO055_SIC_MATRIX_1_MSB_POS (0)
1612 #define BNO055_SIC_MATRIX_1_MSB_MSK (0XFF)
1613 #define BNO055_SIC_MATRIX_1_MSB_LEN (8)
1614 #define BNO055_SIC_MATRIX_1_MSB_REG BNO055_SIC_MATRIX_1_MSB_ADDR
1616 #define BNO055_SIC_MATRIX_2_LSB_POS (0)
1617 #define BNO055_SIC_MATRIX_2_LSB_MSK (0XFF)
1618 #define BNO055_SIC_MATRIX_2_LSB_LEN (8)
1619 #define BNO055_SIC_MATRIX_2_LSB_REG BNO055_SIC_MATRIX_2_LSB_ADDR
1621 #define BNO055_SIC_MATRIX_2_MSB_POS (0)
1622 #define BNO055_SIC_MATRIX_2_MSB_MSK (0XFF)
1623 #define BNO055_SIC_MATRIX_2_MSB_LEN (8)
1624 #define BNO055_SIC_MATRIX_2_MSB_REG BNO055_SIC_MATRIX_2_MSB_ADDR
1626 #define BNO055_SIC_MATRIX_3_LSB_POS (0)
1627 #define BNO055_SIC_MATRIX_3_LSB_MSK (0XFF)
1628 #define BNO055_SIC_MATRIX_3_LSB_LEN (8)
1629 #define BNO055_SIC_MATRIX_3_LSB_REG BNO055_SIC_MATRIX_3_LSB_ADDR
1631 #define BNO055_SIC_MATRIX_3_MSB_POS (0)
1632 #define BNO055_SIC_MATRIX_3_MSB_MSK (0XFF)
1633 #define BNO055_SIC_MATRIX_3_MSB_LEN (8)
1634 #define BNO055_SIC_MATRIX_3_MSB_REG BNO055_SIC_MATRIX_3_MSB_ADDR
1636 #define BNO055_SIC_MATRIX_4_LSB_POS (0)
1637 #define BNO055_SIC_MATRIX_4_LSB_MSK (0XFF)
1638 #define BNO055_SIC_MATRIX_4_LSB_LEN (8)
1639 #define BNO055_SIC_MATRIX_4_LSB_REG BNO055_SIC_MATRIX_4_LSB_ADDR
1641 #define BNO055_SIC_MATRIX_4_MSB_POS (0)
1642 #define BNO055_SIC_MATRIX_4_MSB_MSK (0XFF)
1643 #define BNO055_SIC_MATRIX_4_MSB_LEN (8)
1644 #define BNO055_SIC_MATRIX_4_MSB_REG BNO055_SIC_MATRIX_4_MSB_ADDR
1646 #define BNO055_SIC_MATRIX_5_LSB_POS (0)
1647 #define BNO055_SIC_MATRIX_5_LSB_MSK (0XFF)
1648 #define BNO055_SIC_MATRIX_5_LSB_LEN (8)
1649 #define BNO055_SIC_MATRIX_5_LSB_REG BNO055_SIC_MATRIX_5_LSB_ADDR
1651 #define BNO055_SIC_MATRIX_5_MSB_POS (0)
1652 #define BNO055_SIC_MATRIX_5_MSB_MSK (0XFF)
1653 #define BNO055_SIC_MATRIX_5_MSB_LEN (8)
1654 #define BNO055_SIC_MATRIX_5_MSB_REG BNO055_SIC_MATRIX_5_MSB_ADDR
1656 #define BNO055_SIC_MATRIX_6_LSB_POS (0)
1657 #define BNO055_SIC_MATRIX_6_LSB_MSK (0XFF)
1658 #define BNO055_SIC_MATRIX_6_LSB_LEN (8)
1659 #define BNO055_SIC_MATRIX_6_LSB_REG BNO055_SIC_MATRIX_6_LSB_ADDR
1661 #define BNO055_SIC_MATRIX_6_MSB_POS (0)
1662 #define BNO055_SIC_MATRIX_6_MSB_MSK (0XFF)
1663 #define BNO055_SIC_MATRIX_6_MSB_LEN (8)
1664 #define BNO055_SIC_MATRIX_6_MSB_REG BNO055_SIC_MATRIX_6_MSB_ADDR
1666 #define BNO055_SIC_MATRIX_7_LSB_POS (0)
1667 #define BNO055_SIC_MATRIX_7_LSB_MSK (0XFF)
1668 #define BNO055_SIC_MATRIX_7_LSB_LEN (8)
1669 #define BNO055_SIC_MATRIX_7_LSB_REG BNO055_SIC_MATRIX_7_LSB_ADDR
1671 #define BNO055_SIC_MATRIX_7_MSB_POS (0)
1672 #define BNO055_SIC_MATRIX_7_MSB_MSK (0XFF)
1673 #define BNO055_SIC_MATRIX_7_MSB_LEN (8)
1674 #define BNO055_SIC_MATRIX_7_MSB_REG BNO055_SIC_MATRIX_7_MSB_ADDR
1676 #define BNO055_SIC_MATRIX_8_LSB_POS (0)
1677 #define BNO055_SIC_MATRIX_8_LSB_MSK (0XFF)
1678 #define BNO055_SIC_MATRIX_8_LSB_LEN (8)
1679 #define BNO055_SIC_MATRIX_8_LSB_REG BNO055_SIC_MATRIX_8_LSB_ADDR
1681 #define BNO055_SIC_MATRIX_8_MSB_POS (0)
1682 #define BNO055_SIC_MATRIX_8_MSB_MSK (0XFF)
1683 #define BNO055_SIC_MATRIX_8_MSB_LEN (8)
1684 #define BNO055_SIC_MATRIX_8_MSB_REG BNO055_SIC_MATRIX_8_MSB_ADDR
1687 #define BNO055_ACCEL_OFFSET_X_LSB_POS (0)
1688 #define BNO055_ACCEL_OFFSET_X_LSB_MSK (0XFF)
1689 #define BNO055_ACCEL_OFFSET_X_LSB_LEN (8)
1690 #define BNO055_ACCEL_OFFSET_X_LSB_REG BNO055_ACCEL_OFFSET_X_LSB_ADDR
1692 #define BNO055_ACCEL_OFFSET_X_MSB_POS (0)
1693 #define BNO055_ACCEL_OFFSET_X_MSB_MSK (0XFF)
1694 #define BNO055_ACCEL_OFFSET_X_MSB_LEN (8)
1695 #define BNO055_ACCEL_OFFSET_X_MSB_REG BNO055_ACCEL_OFFSET_X_MSB_ADDR
1697 #define BNO055_ACCEL_OFFSET_Y_LSB_POS (0)
1698 #define BNO055_ACCEL_OFFSET_Y_LSB_MSK (0XFF)
1699 #define BNO055_ACCEL_OFFSET_Y_LSB_LEN (8)
1700 #define BNO055_ACCEL_OFFSET_Y_LSB_REG BNO055_ACCEL_OFFSET_Y_LSB_ADDR
1702 #define BNO055_ACCEL_OFFSET_Y_MSB_POS (0)
1703 #define BNO055_ACCEL_OFFSET_Y_MSB_MSK (0XFF)
1704 #define BNO055_ACCEL_OFFSET_Y_MSB_LEN (8)
1705 #define BNO055_ACCEL_OFFSET_Y_MSB_REG BNO055_ACCEL_OFFSET_Y_MSB_ADDR
1707 #define BNO055_ACCEL_OFFSET_Z_LSB_POS (0)
1708 #define BNO055_ACCEL_OFFSET_Z_LSB_MSK (0XFF)
1709 #define BNO055_ACCEL_OFFSET_Z_LSB_LEN (8)
1710 #define BNO055_ACCEL_OFFSET_Z_LSB_REG BNO055_ACCEL_OFFSET_Z_LSB_ADDR
1712 #define BNO055_ACCEL_OFFSET_Z_MSB_POS (0)
1713 #define BNO055_ACCEL_OFFSET_Z_MSB_MSK (0XFF)
1714 #define BNO055_ACCEL_OFFSET_Z_MSB_LEN (8)
1715 #define BNO055_ACCEL_OFFSET_Z_MSB_REG BNO055_ACCEL_OFFSET_Z_MSB_ADDR
1718 #define BNO055_MAG_OFFSET_X_LSB_POS (0)
1719 #define BNO055_MAG_OFFSET_X_LSB_MSK (0XFF)
1720 #define BNO055_MAG_OFFSET_X_LSB_LEN (8)
1721 #define BNO055_MAG_OFFSET_X_LSB_REG BNO055_MAG_OFFSET_X_LSB_ADDR
1723 #define BNO055_MAG_OFFSET_X_MSB_POS (0)
1724 #define BNO055_MAG_OFFSET_X_MSB_MSK (0XFF)
1725 #define BNO055_MAG_OFFSET_X_MSB_LEN (8)
1726 #define BNO055_MAG_OFFSET_X_MSB_REG BNO055_MAG_OFFSET_X_MSB_ADDR
1728 #define BNO055_MAG_OFFSET_Y_LSB_POS (0)
1729 #define BNO055_MAG_OFFSET_Y_LSB_MSK (0XFF)
1730 #define BNO055_MAG_OFFSET_Y_LSB_LEN (8)
1731 #define BNO055_MAG_OFFSET_Y_LSB_REG BNO055_MAG_OFFSET_Y_LSB_ADDR
1733 #define BNO055_MAG_OFFSET_Y_MSB_POS (0)
1734 #define BNO055_MAG_OFFSET_Y_MSB_MSK (0XFF)
1735 #define BNO055_MAG_OFFSET_Y_MSB_LEN (8)
1736 #define BNO055_MAG_OFFSET_Y_MSB_REG BNO055_MAG_OFFSET_Y_MSB_ADDR
1738 #define BNO055_MAG_OFFSET_Z_LSB_POS (0)
1739 #define BNO055_MAG_OFFSET_Z_LSB_MSK (0XFF)
1740 #define BNO055_MAG_OFFSET_Z_LSB_LEN (8)
1741 #define BNO055_MAG_OFFSET_Z_LSB_REG BNO055_MAG_OFFSET_Z_LSB_ADDR
1743 #define BNO055_MAG_OFFSET_Z_MSB_POS (0)
1744 #define BNO055_MAG_OFFSET_Z_MSB_MSK (0XFF)
1745 #define BNO055_MAG_OFFSET_Z_MSB_LEN (8)
1746 #define BNO055_MAG_OFFSET_Z_MSB_REG BNO055_MAG_OFFSET_Z_MSB_ADDR
1749 #define BNO055_GYRO_OFFSET_X_LSB_POS (0)
1750 #define BNO055_GYRO_OFFSET_X_LSB_MSK (0XFF)
1751 #define BNO055_GYRO_OFFSET_X_LSB_LEN (8)
1752 #define BNO055_GYRO_OFFSET_X_LSB_REG BNO055_GYRO_OFFSET_X_LSB_ADDR
1754 #define BNO055_GYRO_OFFSET_X_MSB_POS (0)
1755 #define BNO055_GYRO_OFFSET_X_MSB_MSK (0XFF)
1756 #define BNO055_GYRO_OFFSET_X_MSB_LEN (8)
1757 #define BNO055_GYRO_OFFSET_X_MSB_REG BNO055_GYRO_OFFSET_X_MSB_ADDR
1759 #define BNO055_GYRO_OFFSET_Y_LSB_POS (0)
1760 #define BNO055_GYRO_OFFSET_Y_LSB_MSK (0XFF)
1761 #define BNO055_GYRO_OFFSET_Y_LSB_LEN (8)
1762 #define BNO055_GYRO_OFFSET_Y_LSB_REG BNO055_GYRO_OFFSET_Y_LSB_ADDR
1764 #define BNO055_GYRO_OFFSET_Y_MSB_POS (0)
1765 #define BNO055_GYRO_OFFSET_Y_MSB_MSK (0XFF)
1766 #define BNO055_GYRO_OFFSET_Y_MSB_LEN (8)
1767 #define BNO055_GYRO_OFFSET_Y_MSB_REG BNO055_GYRO_OFFSET_Y_MSB_ADDR
1769 #define BNO055_GYRO_OFFSET_Z_LSB_POS (0)
1770 #define BNO055_GYRO_OFFSET_Z_LSB_MSK (0XFF)
1771 #define BNO055_GYRO_OFFSET_Z_LSB_LEN (8)
1772 #define BNO055_GYRO_OFFSET_Z_LSB_REG BNO055_GYRO_OFFSET_Z_LSB_ADDR
1774 #define BNO055_GYRO_OFFSET_Z_MSB_POS (0)
1775 #define BNO055_GYRO_OFFSET_Z_MSB_MSK (0XFF)
1776 #define BNO055_GYRO_OFFSET_Z_MSB_LEN (8)
1777 #define BNO055_GYRO_OFFSET_Z_MSB_REG BNO055_GYRO_OFFSET_Z_MSB_ADDR
1780 #define BNO055_ACCEL_RADIUS_LSB_POS (0)
1781 #define BNO055_ACCEL_RADIUS_LSB_MSK (0XFF)
1782 #define BNO055_ACCEL_RADIUS_LSB_LEN (8)
1783 #define BNO055_ACCEL_RADIUS_LSB_REG BNO055_ACCEL_RADIUS_LSB_ADDR
1785 #define BNO055_ACCEL_RADIUS_MSB_POS (0)
1786 #define BNO055_ACCEL_RADIUS_MSB_MSK (0XFF)
1787 #define BNO055_ACCEL_RADIUS_MSB_LEN (8)
1788 #define BNO055_ACCEL_RADIUS_MSB_REG BNO055_ACCEL_RADIUS_MSB_ADDR
1790 #define BNO055_MAG_RADIUS_LSB_POS (0)
1791 #define BNO055_MAG_RADIUS_LSB_MSK (0XFF)
1792 #define BNO055_MAG_RADIUS_LSB_LEN (8)
1793 #define BNO055_MAG_RADIUS_LSB_REG BNO055_MAG_RADIUS_LSB_ADDR
1795 #define BNO055_MAG_RADIUS_MSB_POS (0)
1796 #define BNO055_MAG_RADIUS_MSB_MSK (0XFF)
1797 #define BNO055_MAG_RADIUS_MSB_LEN (8)
1798 #define BNO055_MAG_RADIUS_MSB_REG BNO055_MAG_RADIUS_MSB_ADDR
1806 #define BNO055_ACCEL_RANGE_POS (0)
1807 #define BNO055_ACCEL_RANGE_MSK (0X03)
1808 #define BNO055_ACCEL_RANGE_LEN (2)
1809 #define BNO055_ACCEL_RANGE_REG BNO055_ACCEL_CONFIG_ADDR
1812 #define BNO055_ACCEL_BW_POS (2)
1813 #define BNO055_ACCEL_BW_MSK (0X1C)
1814 #define BNO055_ACCEL_BW_LEN (3)
1815 #define BNO055_ACCEL_BW_REG BNO055_ACCEL_CONFIG_ADDR
1818 #define BNO055_ACCEL_POWER_MODE_POS (5)
1819 #define BNO055_ACCEL_POWER_MODE_MSK (0XE0)
1820 #define BNO055_ACCEL_POWER_MODE_LEN (3)
1821 #define BNO055_ACCEL_POWER_MODE_REG BNO055_ACCEL_CONFIG_ADDR
1824 #define BNO055_MAG_DATA_OUTPUT_RATE_POS (0)
1825 #define BNO055_MAG_DATA_OUTPUT_RATE_MSK (0X07)
1826 #define BNO055_MAG_DATA_OUTPUT_RATE_LEN (3)
1827 #define BNO055_MAG_DATA_OUTPUT_RATE_REG BNO055_MAG_CONFIG_ADDR
1830 #define BNO055_MAG_OPERATION_MODE_POS (3)
1831 #define BNO055_MAG_OPERATION_MODE_MSK (0X18)
1832 #define BNO055_MAG_OPERATION_MODE_LEN (2)
1833 #define BNO055_MAG_OPERATION_MODE_REG BNO055_MAG_CONFIG_ADDR
1836 #define BNO055_MAG_POWER_MODE_POS (5)
1837 #define BNO055_MAG_POWER_MODE_MSK (0X60)
1838 #define BNO055_MAG_POWER_MODE_LEN (2)
1839 #define BNO055_MAG_POWER_MODE_REG BNO055_MAG_CONFIG_ADDR
1842 #define BNO055_GYRO_RANGE_POS (0)
1843 #define BNO055_GYRO_RANGE_MSK (0X07)
1844 #define BNO055_GYRO_RANGE_LEN (3)
1845 #define BNO055_GYRO_RANGE_REG BNO055_GYRO_CONFIG_ADDR
1848 #define BNO055_GYRO_BW_POS (3)
1849 #define BNO055_GYRO_BW_MSK (0X38)
1850 #define BNO055_GYRO_BW_LEN (3)
1851 #define BNO055_GYRO_BW_REG BNO055_GYRO_CONFIG_ADDR
1854 #define BNO055_GYRO_POWER_MODE_POS (0)
1855 #define BNO055_GYRO_POWER_MODE_MSK (0X07)
1856 #define BNO055_GYRO_POWER_MODE_LEN (3)
1857 #define BNO055_GYRO_POWER_MODE_REG BNO055_GYRO_MODE_CONFIG_ADDR
1861 #define BNO055_ACCEL_SLEEP_MODE_POS (0)
1862 #define BNO055_ACCEL_SLEEP_MODE_MSK (0X01)
1863 #define BNO055_ACCEL_SLEEP_MODE_LEN (1)
1864 #define BNO055_ACCEL_SLEEP_MODE_REG BNO055_ACCEL_SLEEP_CONFIG_ADDR
1867 #define BNO055_ACCEL_SLEEP_DURN_POS (1)
1868 #define BNO055_ACCEL_SLEEP_DURN_MSK (0X1E)
1869 #define BNO055_ACCEL_SLEEP_DURN_LEN (4)
1870 #define BNO055_ACCEL_SLEEP_DURN_REG BNO055_ACCEL_SLEEP_CONFIG_ADDR
1873 #define BNO055_GYRO_SLEEP_DURN_POS (0)
1874 #define BNO055_GYRO_SLEEP_DURN_MSK (0X07)
1875 #define BNO055_GYRO_SLEEP_DURN_LEN (3)
1876 #define BNO055_GYRO_SLEEP_DURN_REG BNO055_GYRO_SLEEP_CONFIG_ADDR
1879 #define BNO055_GYRO_AUTO_SLEEP_DURN_POS (3)
1880 #define BNO055_GYRO_AUTO_SLEEP_DURN_MSK (0X38)
1881 #define BNO055_GYRO_AUTO_SLEEP_DURN_LEN (3)
1882 #define BNO055_GYRO_AUTO_SLEEP_DURN_REG BNO055_GYRO_SLEEP_CONFIG_ADDR
1885 #define BNO055_MAG_SLEEP_MODE_POS (0)
1886 #define BNO055_MAG_SLEEP_MODE_MSK (0X01)
1887 #define BNO055_MAG_SLEEP_MODE_LEN (1)
1888 #define BNO055_MAG_SLEEP_MODE_REG BNO055_MAG_SLEEP_CONFIG_ADDR
1891 #define BNO055_MAG_SLEEP_DURN_POS (1)
1892 #define BNO055_MAG_SLEEP_DURN_MSK (0X1E)
1893 #define BNO055_MAG_SLEEP_DURN_LEN (4)
1894 #define BNO055_MAG_SLEEP_DURN_REG BNO055_MAG_SLEEP_CONFIG_ADDR
1898 #define BNO055_GYRO_ANY_MOTION_INTR_MASK_POS (2)
1899 #define BNO055_GYRO_ANY_MOTION_INTR_MASK_MSK (0X04)
1900 #define BNO055_GYRO_ANY_MOTION_INTR_MASK_LEN (1)
1901 #define BNO055_GYRO_ANY_MOTION_INTR_MASK_REG BNO055_INT_MASK_ADDR
1904 #define BNO055_GYRO_HIGHRATE_INTR_MASK_POS (3)
1905 #define BNO055_GYRO_HIGHRATE_INTR_MASK_MSK (0X08)
1906 #define BNO055_GYRO_HIGHRATE_INTR_MASK_LEN (1)
1907 #define BNO055_GYRO_HIGHRATE_INTR_MASK_REG BNO055_INT_MASK_ADDR
1910 #define BNO055_ACCEL_HIGH_G_INTR_MASK_POS (5)
1911 #define BNO055_ACCEL_HIGH_G_INTR_MASK_MSK (0X20)
1912 #define BNO055_ACCEL_HIGH_G_INTR_MASK_LEN (1)
1913 #define BNO055_ACCEL_HIGH_G_INTR_MASK_REG BNO055_INT_MASK_ADDR
1916 #define BNO055_ACCEL_ANY_MOTION_INTR_MASK_POS (6)
1917 #define BNO055_ACCEL_ANY_MOTION_INTR_MASK_MSK (0X40)
1918 #define BNO055_ACCEL_ANY_MOTION_INTR_MASK_LEN (1)
1919 #define BNO055_ACCEL_ANY_MOTION_INTR_MASK_REG BNO055_INT_MASK_ADDR
1922 #define BNO055_ACCEL_NO_MOTION_INTR_MASK_POS (7)
1923 #define BNO055_ACCEL_NO_MOTION_INTR_MASK_MSK (0X80)
1924 #define BNO055_ACCEL_NO_MOTION_INTR_MASK_LEN (1)
1925 #define BNO055_ACCEL_NO_MOTION_INTR_MASK_REG BNO055_INT_MASK_ADDR
1928 #define BNO055_GYRO_ANY_MOTION_INTR_POS (2)
1929 #define BNO055_GYRO_ANY_MOTION_INTR_MSK (0X04)
1930 #define BNO055_GYRO_ANY_MOTION_INTR_LEN (1)
1931 #define BNO055_GYRO_ANY_MOTION_INTR_REG BNO055_INT_ADDR
1934 #define BNO055_GYRO_HIGHRATE_INTR_POS (3)
1935 #define BNO055_GYRO_HIGHRATE_INTR_MSK (0X08)
1936 #define BNO055_GYRO_HIGHRATE_INTR_LEN (1)
1937 #define BNO055_GYRO_HIGHRATE_INTR_REG BNO055_INT_ADDR
1940 #define BNO055_ACCEL_HIGH_G_INTR_POS (5)
1941 #define BNO055_ACCEL_HIGH_G_INTR_MSK (0X20)
1942 #define BNO055_ACCEL_HIGH_G_INTR_LEN (1)
1943 #define BNO055_ACCEL_HIGH_G_INTR_REG BNO055_INT_ADDR
1946 #define BNO055_ACCEL_ANY_MOTION_INTR_POS (6)
1947 #define BNO055_ACCEL_ANY_MOTION_INTR_MSK (0X40)
1948 #define BNO055_ACCEL_ANY_MOTION_INTR_LEN (1)
1949 #define BNO055_ACCEL_ANY_MOTION_INTR_REG BNO055_INT_ADDR
1952 #define BNO055_ACCEL_NO_MOTION_INTR_POS (7)
1953 #define BNO055_ACCEL_NO_MOTION_INTR_MSK (0X80)
1954 #define BNO055_ACCEL_NO_MOTION_INTR_LEN (1)
1955 #define BNO055_ACCEL_NO_MOTION_INTR_REG BNO055_INT_ADDR
1958 #define BNO055_ACCEL_ANY_MOTION_THRES_POS (0)
1959 #define BNO055_ACCEL_ANY_MOTION_THRES_MSK (0XFF)
1960 #define BNO055_ACCEL_ANY_MOTION_THRES_LEN (8)
1961 #define BNO055_ACCEL_ANY_MOTION_THRES_REG BNO055_ACCEL_ANY_MOTION_THRES_ADDR
1964 #define BNO055_ACCEL_ANY_MOTION_DURN_SET_POS (0)
1965 #define BNO055_ACCEL_ANY_MOTION_DURN_SET_MSK (0X03)
1966 #define BNO055_ACCEL_ANY_MOTION_DURN_SET_LEN (2)
1967 #define BNO055_ACCEL_ANY_MOTION_DURN_SET_REG BNO055_ACCEL_INTR_SETTINGS_ADDR
1970 #define BNO055_ACCEL_ANY_MOTION_X_AXIS_POS (2)
1971 #define BNO055_ACCEL_ANY_MOTION_X_AXIS_MSK (0X04)
1972 #define BNO055_ACCEL_ANY_MOTION_X_AXIS_LEN (1)
1973 #define BNO055_ACCEL_ANY_MOTION_X_AXIS_REG BNO055_ACCEL_INTR_SETTINGS_ADDR
1975 #define BNO055_ACCEL_ANY_MOTION_Y_AXIS_POS (3)
1976 #define BNO055_ACCEL_ANY_MOTION_Y_AXIS_MSK (0X08)
1977 #define BNO055_ACCEL_ANY_MOTION_Y_AXIS_LEN (1)
1978 #define BNO055_ACCEL_ANY_MOTION_Y_AXIS_REG BNO055_ACCEL_INTR_SETTINGS_ADDR
1980 #define BNO055_ACCEL_ANY_MOTION_Z_AXIS_POS (4)
1981 #define BNO055_ACCEL_ANY_MOTION_Z_AXIS_MSK (0X10)
1982 #define BNO055_ACCEL_ANY_MOTION_Z_AXIS_LEN (1)
1983 #define BNO055_ACCEL_ANY_MOTION_Z_AXIS_REG BNO055_ACCEL_INTR_SETTINGS_ADDR
1986 #define BNO055_ACCEL_HIGH_G_X_AXIS_POS (5)
1987 #define BNO055_ACCEL_HIGH_G_X_AXIS_MSK (0X20)
1988 #define BNO055_ACCEL_HIGH_G_X_AXIS_LEN (1)
1989 #define BNO055_ACCEL_HIGH_G_X_AXIS_REG BNO055_ACCEL_INTR_SETTINGS_ADDR
1991 #define BNO055_ACCEL_HIGH_G_Y_AXIS_POS (6)
1992 #define BNO055_ACCEL_HIGH_G_Y_AXIS_MSK (0X40)
1993 #define BNO055_ACCEL_HIGH_G_Y_AXIS_LEN (1)
1994 #define BNO055_ACCEL_HIGH_G_Y_AXIS_REG BNO055_ACCEL_INTR_SETTINGS_ADDR
1996 #define BNO055_ACCEL_HIGH_G_Z_AXIS_POS (7)
1997 #define BNO055_ACCEL_HIGH_G_Z_AXIS_MSK (0X80)
1998 #define BNO055_ACCEL_HIGH_G_Z_AXIS_LEN (1)
1999 #define BNO055_ACCEL_HIGH_G_Z_AXIS_REG BNO055_ACCEL_INTR_SETTINGS_ADDR
2002 #define BNO055_ACCEL_HIGH_G_DURN_POS (0)
2003 #define BNO055_ACCEL_HIGH_G_DURN_MSK (0XFF)
2004 #define BNO055_ACCEL_HIGH_G_DURN_LEN (8)
2005 #define BNO055_ACCEL_HIGH_G_DURN_REG BNO055_ACCEL_HIGH_G_DURN_ADDR
2008 #define BNO055_ACCEL_HIGH_G_THRES_POS (0)
2009 #define BNO055_ACCEL_HIGH_G_THRES_MSK (0XFF)
2010 #define BNO055_ACCEL_HIGH_G_THRES_LEN (8)
2011 #define BNO055_ACCEL_HIGH_G_THRES_REG BNO055_ACCEL_HIGH_G_THRES_ADDR
2014 #define BNO055_ACCEL_SLOW_NO_MOTION_THRES_POS (0)
2015 #define BNO055_ACCEL_SLOW_NO_MOTION_THRES_MSK (0XFF)
2016 #define BNO055_ACCEL_SLOW_NO_MOTION_THRES_LEN (8)
2017 #define BNO055_ACCEL_SLOW_NO_MOTION_THRES_REG \
2018 BNO055_ACCEL_NO_MOTION_THRES_ADDR
2021 #define BNO055_ACCEL_SLOW_NO_MOTION_ENABLE_POS (0)
2022 #define BNO055_ACCEL_SLOW_NO_MOTION_ENABLE_MSK (0X01)
2023 #define BNO055_ACCEL_SLOW_NO_MOTION_ENABLE_LEN (1)
2024 #define BNO055_ACCEL_SLOW_NO_MOTION_ENABLE_REG BNO055_ACCEL_NO_MOTION_SET_ADDR
2027 #define BNO055_ACCEL_SLOW_NO_MOTION_DURN_POS (1)
2028 #define BNO055_ACCEL_SLOW_NO_MOTION_DURN_MSK (0X7E)
2029 #define BNO055_ACCEL_SLOW_NO_MOTION_DURN_LEN (6)
2030 #define BNO055_ACCEL_SLOW_NO_MOTION_DURN_REG BNO055_ACCEL_NO_MOTION_SET_ADDR
2034 #define BNO055_GYRO_ANY_MOTION_X_AXIS_POS (0)
2035 #define BNO055_GYRO_ANY_MOTION_X_AXIS_MSK (0X01)
2036 #define BNO055_GYRO_ANY_MOTION_X_AXIS_LEN (1)
2037 #define BNO055_GYRO_ANY_MOTION_X_AXIS_REG BNO055_GYRO_INTR_SETING_ADDR
2039 #define BNO055_GYRO_ANY_MOTION_Y_AXIS_POS (1)
2040 #define BNO055_GYRO_ANY_MOTION_Y_AXIS_MSK (0X02)
2041 #define BNO055_GYRO_ANY_MOTION_Y_AXIS_LEN (1)
2042 #define BNO055_GYRO_ANY_MOTION_Y_AXIS_REG BNO055_GYRO_INTR_SETING_ADDR
2044 #define BNO055_GYRO_ANY_MOTION_Z_AXIS_POS (2)
2045 #define BNO055_GYRO_ANY_MOTION_Z_AXIS_MSK (0X04)
2046 #define BNO055_GYRO_ANY_MOTION_Z_AXIS_LEN (1)
2047 #define BNO055_GYRO_ANY_MOTION_Z_AXIS_REG BNO055_GYRO_INTR_SETING_ADDR
2050 #define BNO055_GYRO_HIGHRATE_X_AXIS_POS (3)
2051 #define BNO055_GYRO_HIGHRATE_X_AXIS_MSK (0X08)
2052 #define BNO055_GYRO_HIGHRATE_X_AXIS_LEN (1)
2053 #define BNO055_GYRO_HIGHRATE_X_AXIS_REG BNO055_GYRO_INTR_SETING_ADDR
2055 #define BNO055_GYRO_HIGHRATE_Y_AXIS_POS (4)
2056 #define BNO055_GYRO_HIGHRATE_Y_AXIS_MSK (0X10)
2057 #define BNO055_GYRO_HIGHRATE_Y_AXIS_LEN (1)
2058 #define BNO055_GYRO_HIGHRATE_Y_AXIS_REG BNO055_GYRO_INTR_SETING_ADDR
2060 #define BNO055_GYRO_HIGHRATE_Z_AXIS_POS (5)
2061 #define BNO055_GYRO_HIGHRATE_Z_AXIS_MSK (0X20)
2062 #define BNO055_GYRO_HIGHRATE_Z_AXIS_LEN (1)
2063 #define BNO055_GYRO_HIGHRATE_Z_AXIS_REG BNO055_GYRO_INTR_SETING_ADDR
2066 #define BNO055_GYRO_ANY_MOTION_FILTER_POS (6)
2067 #define BNO055_GYRO_ANY_MOTION_FILTER_MSK (0X40)
2068 #define BNO055_GYRO_ANY_MOTION_FILTER_LEN (1)
2069 #define BNO055_GYRO_ANY_MOTION_FILTER_REG BNO055_GYRO_INTR_SETING_ADDR
2071 #define BNO055_GYRO_HIGHRATE_FILTER_POS (7)
2072 #define BNO055_GYRO_HIGHRATE_FILTER_MSK (0X80)
2073 #define BNO055_GYRO_HIGHRATE_FILTER_LEN (1)
2074 #define BNO055_GYRO_HIGHRATE_FILTER_REG BNO055_GYRO_INTR_SETING_ADDR
2077 #define BNO055_GYRO_HIGHRATE_X_THRES_POS (0)
2078 #define BNO055_GYRO_HIGHRATE_X_THRES_MSK (0X1F)
2079 #define BNO055_GYRO_HIGHRATE_X_THRES_LEN (5)
2080 #define BNO055_GYRO_HIGHRATE_X_THRES_REG BNO055_GYRO_HIGHRATE_X_SET_ADDR
2082 #define BNO055_GYRO_HIGHRATE_X_HYST_POS (5)
2083 #define BNO055_GYRO_HIGHRATE_X_HYST_MSK (0X60)
2084 #define BNO055_GYRO_HIGHRATE_X_HYST_LEN (2)
2085 #define BNO055_GYRO_HIGHRATE_X_HYST_REG BNO055_GYRO_HIGHRATE_X_SET_ADDR
2087 #define BNO055_GYRO_HIGHRATE_X_DURN_POS (0)
2088 #define BNO055_GYRO_HIGHRATE_X_DURN_MSK (0XFF)
2089 #define BNO055_GYRO_HIGHRATE_X_DURN_LEN (8)
2090 #define BNO055_GYRO_HIGHRATE_X_DURN_REG BNO055_GYRO_DURN_X_ADDR
2093 #define BNO055_GYRO_HIGHRATE_Y_THRES_POS (0)
2094 #define BNO055_GYRO_HIGHRATE_Y_THRES_MSK (0X1F)
2095 #define BNO055_GYRO_HIGHRATE_Y_THRES_LEN (5)
2096 #define BNO055_GYRO_HIGHRATE_Y_THRES_REG BNO055_GYRO_HIGHRATE_Y_SET_ADDR
2098 #define BNO055_GYRO_HIGHRATE_Y_HYST_POS (5)
2099 #define BNO055_GYRO_HIGHRATE_Y_HYST_MSK (0X60)
2100 #define BNO055_GYRO_HIGHRATE_Y_HYST_LEN (2)
2101 #define BNO055_GYRO_HIGHRATE_Y_HYST_REG BNO055_GYRO_HIGHRATE_Y_SET_ADDR
2103 #define BNO055_GYRO_HIGHRATE_Y_DURN_POS (0)
2104 #define BNO055_GYRO_HIGHRATE_Y_DURN_MSK (0XFF)
2105 #define BNO055_GYRO_HIGHRATE_Y_DURN_LEN (8)
2106 #define BNO055_GYRO_HIGHRATE_Y_DURN_REG BNO055_GYRO_DURN_Y_ADDR
2109 #define BNO055_GYRO_HIGHRATE_Z_THRES_POS (0)
2110 #define BNO055_GYRO_HIGHRATE_Z_THRES_MSK (0X1F)
2111 #define BNO055_GYRO_HIGHRATE_Z_THRES_LEN (5)
2112 #define BNO055_GYRO_HIGHRATE_Z_THRES_REG BNO055_GYRO_HIGHRATE_Z_SET_ADDR
2114 #define BNO055_GYRO_HIGHRATE_Z_HYST_POS (5)
2115 #define BNO055_GYRO_HIGHRATE_Z_HYST_MSK (0X60)
2116 #define BNO055_GYRO_HIGHRATE_Z_HYST_LEN (2)
2117 #define BNO055_GYRO_HIGHRATE_Z_HYST_REG BNO055_GYRO_HIGHRATE_Z_SET_ADDR
2119 #define BNO055_GYRO_HIGHRATE_Z_DURN_POS (0)
2120 #define BNO055_GYRO_HIGHRATE_Z_DURN_MSK (0XFF)
2121 #define BNO055_GYRO_HIGHRATE_Z_DURN_LEN (8)
2122 #define BNO055_GYRO_HIGHRATE_Z_DURN_REG (BNO055_GYRO_DURN_Z_ADDR)
2125 #define BNO055_GYRO_ANY_MOTION_THRES_POS (0)
2126 #define BNO055_GYRO_ANY_MOTION_THRES_MSK (0X7F)
2127 #define BNO055_GYRO_ANY_MOTION_THRES_LEN (7)
2128 #define BNO055_GYRO_ANY_MOTION_THRES_REG \
2129 BNO055_GYRO_ANY_MOTION_THRES_ADDR
2132 #define BNO055_GYRO_SLOPE_SAMPLES_POS (0)
2133 #define BNO055_GYRO_SLOPE_SAMPLES_MSK (0X03)
2134 #define BNO055_GYRO_SLOPE_SAMPLES_LEN (2)
2135 #define BNO055_GYRO_SLOPE_SAMPLES_REG BNO055_GYRO_ANY_MOTION_SET_ADDR
2138 #define BNO055_GYRO_AWAKE_DURN_POS (2)
2139 #define BNO055_GYRO_AWAKE_DURN_MSK (0X0C)
2140 #define BNO055_GYRO_AWAKE_DURN_LEN (2)
2141 #define BNO055_GYRO_AWAKE_DURN_REG BNO055_GYRO_ANY_MOTION_SET_ADDR
2147 #define BNO055_GET_BITSLICE(regvar, bitname)\
2148 ((regvar & bitname##_MSK) >> bitname##_POS)
2151 #define BNO055_SET_BITSLICE(regvar, bitname, val)\
2152 ((regvar & ~bitname##_MSK) | ((val<<bitname##_POS)&bitname##_MSK))
2199 u8 *data_u8,
u8 len_u8);
2216 u8 *data_u8,
u8 len_u8);
2288 u8 *accel_rev_id_u8);
2318 u8 *gyro_rev_id_u8);
2643 s16 *quaternion_w_s16);
2657 s16 *quaternion_x_s16);
2671 s16 *quaternion_y_s16);
2685 s16 *quaternion_z_s16);
2725 s16 *linear_accel_x_s16);
2739 s16 *linear_accel_y_s16);
2753 s16 *linear_accel_z_s16);
2790 s16 *gravity_x_s16);
2804 s16 *gravity_y_s16);
2818 s16 *gravity_z_s16);
2856 #ifdef BNO055_FLOAT_ENABLE
3337 float *linear_accel_x_f);
3349 float *linear_accel_y_f);
3362 float *linear_accel_z_f);
3400 float *gravity_x_f);
3414 float *gravity_y_f);
3427 float *gravity_z_f);
3482 #ifdef BNO055_DOUBLE_ENABLE
3979 double *linear_accel_x_d);
3994 double *linear_accel_y_d);
4010 double *linear_accel_z_d);
4048 double *gravity_x_d);
4062 double *gravity_y_d);
4076 double *gravity_z_d);
4159 u8 *accel_calib_u8);
4208 u8 *selftest_accel_u8);
4226 u8 *selftest_mag_u8);
4244 u8 *selftest_gyro_u8);
4262 u8 *selftest_mcu_u8);
4290 u8 *gyro_any_motion_u8);
4314 u8 *gyro_highrate_u8);
4342 u8 *accel_high_g_u8);
4366 u8 *accel_any_motion_u8);
4391 u8 *accel_no_motion_u8);
4408 u8 *stat_main_clk_u8);
4663 u8 *data_output_format_u8);
4681 u8 data_output_format_u8);
4724 u8 *operation_mode_u8);
5006 u8 *temp_source_u8);
5118 u8 *remap_x_sign_u8);
5136 u8 remap_x_sign_u8);
5154 u8 *remap_y_sign_u8);
5172 u8 remap_y_sign_u8);
5190 u8 *remap_z_sign_u8);
5208 u8 remap_z_sign_u8);
5477 u8 *accel_range_u8);
5570 u8 *accel_power_mode_u8);
5592 u8 accel_power_mode_u8);
5620 u8 *mag_data_output_rate_u8);
5645 u8 mag_data_output_rate_u8);
5666 u8 *mag_operation_mode_u8);
5687 u8 mag_operation_mode_u8);
5708 u8 *mag_power_mode_u8);
5729 u8 mag_power_mode_u8);
5848 u8 *gyro_power_mode_u8);
5870 u8 gyro_power_mode_u8);
6012 u8 *auto_sleep_durn_u8);
6027 u8 auto_sleep_durn_u8,
u8 bw);
6127 u8 *gyro_any_motion_u8);
6165 u8 gyro_any_motion_u8);
6218 u8 *gyro_highrate_u8);
6271 u8 gyro_highrate_u8);
6307 u8 *accel_high_g_u8);
6340 u8 accel_high_g_u8);
6373 u8 *accel_any_motion_u8);
6405 u8 accel_any_motion_u8);
6436 u8 *accel_nomotion_u8);
6472 u8 accel_nomotion_u8);
6512 u8 *gyro_any_motion_u8);
6549 u8 gyro_any_motion_u8);
6602 u8 *gyro_highrate_u8);
6655 u8 gyro_highrate_u8);
6691 u8 *accel_high_g_u8);
6724 u8 accel_high_g_u8);
6756 u8 *accel_any_motion_u8);
6788 u8 accel_any_motion_u8);
6824 u8 *accel_nomotion_u8);
6860 u8 accel_nomotion_u8);
6890 u8 *accel_any_motion_thres_u8);
6917 u8 accel_any_motion_thres_u8);
6938 u8 *accel_any_motion_durn_u8);
6957 u8 accel_any_motion_durn_u8);
6984 u8 channel_u8,
u8 *data_u8);
7008 u8 channel_u8,
u8 data_u8);
7035 u8 channel_u8,
u8 *data_u8);
7059 u8 channel_u8,
u8 data_u8);
7080 u8 *accel_high_g_durn_u8);
7098 u8 accel_high_g_durn_u8);
7124 u8 *accel_high_g_thres_u8);
7147 u8 accel_high_g_thres_u8);
7173 u8 *accel_slow_no_motion_thres_u8);
7196 u8 accel_slow_no_motion_thres_u8);
7216 u8 *accel_slow_no_motion_en_u8);
7233 u8 accel_slow_no_motion_en_u8);
7250 u8 *accel_slow_no_motion_durn_u8);
7264 u8 accel_slow_no_motion_durn_u8);
7292 u8 channel_u8,
u8 *data_u8);
7316 u8 channel_u8,
u8 data_u8);
7344 u8 channel_u8,
u8 *data_u8);
7371 u8 channel_u8,
u8 data_u8);
7391 u8 *gyro_any_motion_filter_u8);
7408 u8 gyro_any_motion_filter_u8);
7428 u8 *gyro_highrate_filter_u8);
7445 u8 gyro_highrate_filter_u8);
7471 u8 *gyro_highrate_x_thres_u8);
7494 u8 gyro_highrate_x_thres_u8);
7522 u8 *gyro_highrate_x_hyst_u8);
7547 u8 gyro_highrate_x_hyst_u8);
7567 u8 *gyro_highrate_x_durn_u8);
7583 u8 gyro_highrate_x_durn_u8);
7609 u8 *gyro_highrate_y_thres_u8);
7632 u8 gyro_highrate_y_thres_u8);
7659 u8 *gyro_highrate_y_hyst_u8);
7683 u8 gyro_highrate_y_hyst_u8);
7702 u8 *gyro_highrate_y_durn_u8);
7718 u8 gyro_highrate_y_durn_u8);
7744 u8 *gyro_highrate_z_thres_u8);
7767 u8 gyro_highrate_z_thres_u8);
7794 u8 *gyro_highrate_z_hyst_u8);
7818 u8 gyro_highrate_z_hyst_u8);
7837 u8 *gyro_highrate_z_durn_u8);
7853 u8 gyro_highrate_z_durn_u8);
7878 u8 *gyro_any_motion_thres_u8);
7900 u8 gyro_any_motion_thres_u8);
7923 u8 *gyro_any_motion_slope_samples_u8);
7943 u8 gyro_any_motion_slope_samples_u8);
7959 u8 *gyro_awake_durn_u8);
7972 u8 gyro_awake_durn_u8);
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.
Definition: bno055.cpp:13531
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 byte...
Definition: bno055.cpp:8885
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.
Definition: bno055.cpp:12387
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.
Definition: bno055.cpp:3112
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.
Definition: bno055.cpp:5645
BNO055_RETURN_FUNCTION_TYPE bno055_init(struct bno055_t *bno055)
This API is used for initialize bus read, bus write function pointers,device address,...
Definition: bno055.cpp:89
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.
Definition: bno055.cpp:11479
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.
Definition: bno055.cpp:14084
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 ...
Definition: bno055.cpp:9518
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_r_deg(double *euler_r_d)
This API is used to convert the Euler r raw data to degree output as double.
Definition: bno055.cpp:5146
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.
Definition: bno055.cpp:10259
signed int s32
Definition: bno055.h:188
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.
Definition: bno055.cpp:8216
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.
Definition: bno055.cpp:16384
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_temp_celsius(double *temp_d)
This API is used to convert the temperature data to Celsius output as double.
Definition: bno055.cpp:5720
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.
Definition: bno055.cpp:5806
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_accel_no_motion(u8 *accel_no_motion_u8)
This API used to read the stat_s8 of accel nomotion/slowmotion interrupt from register from 0x37 bit ...
Definition: bno055.cpp:6366
BNO055_RETURN_FUNCTION_TYPE bno055_set_data_output_format(u8 data_output_format_u8)
This API used to read the current selected orientation mode from register from 0x3B bit 7.
Definition: bno055.cpp:7182
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.
Definition: bno055.cpp:6457
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.
Definition: bno055.cpp:1594
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.
Definition: bno055.cpp:5761
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.
Definition: bno055.cpp:13615
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.
Definition: bno055.cpp:1414
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.
Definition: bno055.cpp:3410
signed char s8
If your machine support 16 bit define the MACHINE_16_BIT.
Definition: bno055.h:186
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_x_dps(float *gyro_x_f)
This API is used to convert the gyro x raw data to dps output as float.
Definition: bno055.cpp:3145
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_mag_y_uT(float *mag_y_f)
This API is used to convert the mag y raw data to microTesla output as float.
Definition: bno055.cpp:3043
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.
Definition: bno055.cpp:14762
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_linear_accel_z_msq(double *linear_accel_z_d)
This API is used to convert the linear accel z raw data to meterpersecseq output as double.
Definition: bno055.cpp:5477
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.
Definition: bno055.cpp:8595
BNO055_RETURN_FUNCTION_TYPE bno055_get_sys_error_code(u8 *sys_error_u8)
This API is used to read system BNO055_ERROR code from the register 0x3A it is a byte of data.
Definition: bno055.cpp:6503
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_y_msq(float *accel_y_f)
This API is used to convert the accel x raw data to meterpersecseq output as float.
Definition: bno055.cpp:2732
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.
Definition: bno055.cpp:11923
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.
Definition: bno055.cpp:9757
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.
Definition: bno055.cpp:1941
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_y_dps(float *gyro_y_f)
This API is used to convert the gyro y raw data to dps output as float.
Definition: bno055.cpp:3231
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_mag_x_uT(double *mag_x_d)
This API is used to convert the mag x raw data to microTesla output as double.
Definition: bno055.cpp:4561
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.
Definition: bno055.cpp:16465
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.
Definition: bno055.cpp:11063
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.
Definition: bno055.cpp:15407
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.
Definition: bno055.cpp:10730
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_z_rps(double *gyro_z_d)
This API is used to convert the gyro z raw data to rps output as double.
Definition: bno055.cpp:4922
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.
Definition: bno055.cpp:12719
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.
Definition: bno055.cpp:4970
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.
Definition: bno055.cpp:10783
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.
Definition: bno055.cpp:17430
BNO055_RETURN_FUNCTION_TYPE bno055_set_selftest(u8 selftest_u8)
This API used to write the self test from register from 0x3F bit 0.
Definition: bno055.cpp:7951
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_gyro_any_motion(u8 *gyro_any_motion_u8)
This API used to read the stat_s8 of gyro anymotion interrupt from register from 0x37 bit 2.
Definition: bno055.cpp:6144
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.
Definition: bno055.cpp:10590
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.
Definition: bno055.cpp:499
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_double_y_msq(double *gravity_y_d)
This API is used to convert the gravity y raw data to meterpersecseq output as double.
Definition: bno055.cpp:5579
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.
Definition: bno055.cpp:11424
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.
Definition: bno055.cpp:1812
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_z_msq(double *accel_z_d)
This API is used to convert the accel z raw data to meterpersecseq output as double.
Definition: bno055.cpp:4370
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.
Definition: bno055.cpp:17121
unsigned long u32
Definition: bno055.h:194
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.
Definition: bno055.cpp:8430
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.
Definition: bno055.cpp:1872
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_linear_accel_x_msq(float *linear_accel_x_f)
This API is used to convert the linear accel x raw data to meterpersecseq output as float.
Definition: bno055.cpp:3847
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.
Definition: bno055.cpp:17301
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.
Definition: bno055.cpp:8313
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.
Definition: bno055.cpp:12964
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.
Definition: bno055.cpp:6552
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.
Definition: bno055.cpp:11148
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.
Definition: bno055.cpp:1529
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.
Definition: bno055.cpp:16856
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.
Definition: bno055.cpp:16263
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.
Definition: bno055.cpp:11200
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_z_mg(double *accel_z_d)
This API is used to convert the accel z raw data to millig output as double.
Definition: bno055.cpp:4413
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.
Definition: bno055.cpp:15086
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_mag_z_uT(double *mag_z_d)
This API is used to convert the mag z raw data to microTesla output as double.
Definition: bno055.cpp:4627
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.
Definition: bno055.cpp:1752
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_z_mg(float *accel_z_f)
This API is used to convert the accel z raw data to millig output as float.
Definition: bno055.cpp:2864
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.
Definition: bno055.cpp:995
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.
Definition: bno055.cpp:5514
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.
Definition: bno055.cpp:15489
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.
Definition: bno055.cpp:10451
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.
Definition: bno055.cpp:4070
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_r_rad(float *euler_r_f)
This API is used to convert the Euler r raw data to radians output as float.
Definition: bno055.cpp:3628
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.
Definition: bno055.cpp:16519
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.
Definition: bno055.cpp:6041
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.
Definition: bno055.cpp:270
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.
Definition: bno055.cpp:11661
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.
Definition: bno055.cpp:12809
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.
Definition: bno055.cpp:7344
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.
Definition: bno055.cpp:2108
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.
Definition: bno055.cpp:9894
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_p_deg(double *euler_p_d)
This API is used to convert the Euler p raw data to degree output as double.
Definition: bno055.cpp:5226
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.
Definition: bno055.cpp:10871
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.
Definition: bno055.cpp:6833
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.
Definition: bno055.cpp:7525
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.
Definition: bno055.cpp:11780
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_x_mg(float *accel_x_f)
This API is used to convert the accel y raw data to millig output as float.
Definition: bno055.cpp:2688
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.
Definition: bno055.cpp:13441
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.
Definition: bno055.cpp:12433
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.
Definition: bno055.cpp:8068
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.
Definition: bno055.cpp:17543
signed short int s16
Definition: bno055.h:187
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.
Definition: bno055.cpp:17500
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.
Definition: bno055.cpp:15941
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_accel_high_g(u8 *accel_high_g_u8)
This API used to read the status of accel highg interrupt from register from 0x37 bit 5.
Definition: bno055.cpp:6255
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.
Definition: bno055.cpp:13880
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.
Definition: bno055.cpp:10142
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.
Definition: bno055.cpp:17248
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.
Definition: bno055.cpp:2230
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.
Definition: bno055.cpp:14811
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_p_rad(float *euler_p_f)
This API is used to convert the Euler p raw data to radians output as float.
Definition: bno055.cpp:3707
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.
Definition: bno055.cpp:12650
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.
Definition: bno055.cpp:1324
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.
Definition: bno055.cpp:15208
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.
Definition: bno055.cpp:16910
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_h_deg(float *euler_h_f)
This API is used to convert the Euler h raw data to degree output as float.
Definition: bno055.cpp:3507
signed long long int s64
Definition: bno055.h:189
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.
Definition: bno055.cpp:454
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.
Definition: bno055.cpp:12061
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.
Definition: bno055.cpp:12893
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.
Definition: bno055.cpp:8479
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_y_mg(double *accel_y_d)
This API is used to convert the accel y raw data to millig output as double.
Definition: bno055.cpp:4328
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_h_rad(double *euler_h_d)
This API is used to convert the Euler h raw data to radians output as double.
Definition: bno055.cpp:5106
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.
Definition: bno055.cpp:5021
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.
Definition: bno055.cpp:10503
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.
Definition: bno055.cpp:11337
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.
Definition: bno055.cpp:13099
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.
Definition: bno055.cpp:7271
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_x_mg(double *accel_x_d)
This API is used to convert the accel x raw data to millig output as double.
Definition: bno055.cpp:4239
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.
Definition: bno055.cpp:7465
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.
Definition: bno055.cpp:10927
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.
Definition: bno055.cpp:14431
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_linear_accel_x_msq(double *linear_accel_x_d)
This API is used to convert the linear accel x raw data to meterpersecseq output as double.
Definition: bno055.cpp:5413
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.
Definition: bno055.cpp:6783
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.
Definition: bno055.cpp:1212
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_x_dps(double *gyro_x_d)
This API is used to convert the gyro x raw data to dps output as double.
Definition: bno055.cpp:4702
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_double_z_msq(double *gravity_z_d)
This API is used to convert the gravity z raw data to meterpersecseq output as double.
Definition: bno055.cpp:5609
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.
Definition: bno055.cpp:13373
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.
Definition: bno055.cpp:5851
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_z_msq(float *accel_z_f)
This API is used to convert the accel z raw data to meterpersecseq output as float.
Definition: bno055.cpp:2819
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.
Definition: bno055.cpp:15989
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.
Definition: bno055.cpp:7845
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.
Definition: bno055.cpp:15160
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.
Definition: bno055.cpp:14949
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.
Definition: bno055.cpp:7795
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_linear_accel_y_msq(float *linear_accel_y_f)
This API is used to convert the linear accel y raw data to meterpersecseq output as float.
Definition: bno055.cpp:3877
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_float_y_msq(float *gravity_y_f)
This API is used to convert the gravity y raw data to meterpersecseq output as float.
Definition: bno055.cpp:4006
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.
Definition: bno055.cpp:16125
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.
Definition: bno055.cpp:1692
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.
Definition: bno055.cpp:12552
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.
Definition: bno055.cpp:327
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.
Definition: bno055.cpp:6413
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.
Definition: bno055.cpp:6951
BNO055_RETURN_FUNCTION_TYPE bno055_get_selftest(u8 *selftest_u8)
This API used to read the self test from register from 0x3F bit 0.
Definition: bno055.cpp:7899
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.
Definition: bno055.cpp:14218
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_y_dps(double *gyro_y_d)
This API is used to convert the gyro y raw data to dps output as double.
Definition: bno055.cpp:4790
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.
Definition: bno055.cpp:16071
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.
Definition: bno055.cpp:11011
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.
Definition: bno055.cpp:13953
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.
Definition: bno055.cpp:14020
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_z_dps(float *gyro_z_f)
This API is used to convert the gyro z raw data to dps output as float.
Definition: bno055.cpp:3318
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.
Definition: bno055.cpp:4664
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.
Definition: bno055.cpp:2381
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_z_dps(double *gyro_z_d)
This API is used to convert the gyro z raw data to dps output as double.
Definition: bno055.cpp:4878
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.
Definition: bno055.cpp:411
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.
Definition: bno055.cpp:7015
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.
Definition: bno055.cpp:13817
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_h_rad(float *euler_h_f)
This API is used to convert the Euler h raw data to radians output as float.
Definition: bno055.cpp:3549
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_z_rps(float *gyro_z_f)
This API is used to convert the gyro z raw data to rps output as float.
Definition: bno055.cpp:3361
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_temp_fahrenheit(double *temp_d)
This API is used to convert the temperature data to Fahrenheit output as double.
Definition: bno055.cpp:5680
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.
Definition: bno055.cpp:2166
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.
Definition: bno055.cpp:2964
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_p_rad(double *euler_p_d)
This API is used to convert the Euler p raw data to radians output as double.
Definition: bno055.cpp:5267
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.
Definition: bno055.cpp:2504
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.
Definition: bno055.cpp:11830
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.
Definition: bno055.cpp:14641
unsigned short int u16
Definition: bno055.h:193
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.
Definition: bno055.cpp:16655
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.
Definition: bno055.cpp:17047
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.
Definition: bno055.cpp:6899
BNO055_RETURN_FUNCTION_TYPE bno055_read_temp_data(s8 *temp_s8)
This API reads temperature values from register 0x33 it is a byte data.
Definition: bno055.cpp:2597
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.
Definition: bno055.cpp:14349
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.
Definition: bno055.cpp:1155
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_y_msq(double *accel_y_d)
This API is used to convert the accel y raw data to meterpersecseq output as double.
Definition: bno055.cpp:4284
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.
Definition: bno055.cpp:17168
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 b...
Definition: bno055.cpp:7591
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.
Definition: bno055.cpp:10646
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.
Definition: bno055.cpp:7132
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.
Definition: bno055.cpp:14559
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.
Definition: bno055.cpp:543
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.
Definition: bno055.cpp:13748
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_mag_z_uT(float *mag_z_f)
This API is used to convert the mag z raw data to microTesla output as float.
Definition: bno055.cpp:3075
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.
Definition: bno055.cpp:15867
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.
Definition: bno055.cpp:2439
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.
Definition: bno055.cpp:4513
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.
Definition: bno055.cpp:5944
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.
Definition: bno055.cpp:2050
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 ...
Definition: bno055.cpp:7640
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.
Definition: bno055.cpp:7065
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.
Definition: bno055.cpp:11982
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_accel_any_motion(u8 *accel_any_motion_u8)
This API used to read the stat_s8 of accel anymotion interrupt from register from 0x37 bit 6.
Definition: bno055.cpp:6310
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_x_rps(double *gyro_x_d)
This API is used to convert the gyro x raw data to rps output as double.
Definition: bno055.cpp:4746
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.
Definition: bno055.cpp:4462
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.
Definition: bno055.cpp:2912
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_mag_y_uT(double *mag_y_d)
This API is used to convert the mag x raw data to microTesla output as double.
Definition: bno055.cpp:4594
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.
Definition: bno055.cpp:15279
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.
Definition: bno055.cpp:711
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.
Definition: bno055.cpp:591
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.
Definition: bno055.cpp:13028
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.
Definition: bno055.cpp:14895
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.
Definition: bno055.cpp:12228
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.
Definition: bno055.cpp:15699
BNO055_RETURN_FUNCTION_TYPE bno055_write_page_id(u8 page_id_u8)
This API used to write the page id register 0x07.
Definition: bno055.cpp:367
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.
Definition: bno055.cpp:11608
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.
Definition: bno055.cpp:3804
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.
Definition: bno055.cpp:11284
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_linear_accel_y_msq(double *linear_accel_y_d)
This API is used to convert the linear accel y raw data to meterpersecseq output as double.
Definition: bno055.cpp:5445
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.
Definition: bno055.cpp:872
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.
Definition: bno055.cpp:14143
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.
Definition: bno055.cpp:13162
unsigned long long int u64
Definition: bno055.h:195
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_x_rps(float *gyro_x_f)
This API is used to convert the gyro x raw data to rps output as float.
Definition: bno055.cpp:3188
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.
Definition: bno055.cpp:16728
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.
Definition: bno055.cpp:6717
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.
Definition: bno055.cpp:3753
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.
Definition: bno055.cpp:12507
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.
Definition: bno055.cpp:13297
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.
Definition: bno055.cpp:201
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_y_mg(float *accel_y_f)
This API is used to convert the accel y raw data to millig output as float.
Definition: bno055.cpp:2775
BNO055_RETURN_FUNCTION_TYPE bno055_set_gyro_sleep_durn(u8 sleep_durn)
This API used to write the gyro sleep duration from page one register from 0x0D bit 0 to 2.
Definition: bno055.cpp:12105
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.
Definition: bno055.cpp:7693
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.
Definition: bno055.cpp:16775
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_h_deg(double *euler_h_d)
This API is used to convert the Euler h raw data to degree output as double.
Definition: bno055.cpp:5066
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_double_x_msq(double *gravity_x_d)
This API is used to convert the gravity x raw data to meterpersecseq output as double.
Definition: bno055.cpp:5549
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.
Definition: bno055.cpp:13230
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.
Definition: bno055.cpp:933
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.
Definition: bno055.cpp:13684
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.
Definition: bno055.cpp:15819
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.
Definition: bno055.cpp:12182
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.
Definition: bno055.cpp:17379
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.
Definition: bno055.cpp:3462
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.
Definition: bno055.cpp:8018
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_float_z_msq(float *gravity_z_f)
This API is used to convert the gravity z raw data to meterpersecseq output as float.
Definition: bno055.cpp:4034
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.
Definition: bno055.cpp:650
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_temp_celsius(float *temp_f)
This API is used to convert the temperature data to Celsius output as float.
Definition: bno055.cpp:4148
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_r_deg(float *euler_r_f)
This API is used to convert the Euler r raw data to degree output as float.
Definition: bno055.cpp:3589
BNO055_RETURN_FUNCTION_TYPE bno055_get_intr_stat_gyro_highrate(u8 *gyro_highrate_u8)
This API used to read the stat_s8 of gyro highrate interrupt from register from 0x37 bit 3.
Definition: bno055.cpp:6199
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 addre...
Definition: bno055.cpp:170
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.
Definition: bno055.cpp:16991
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_mag_x_uT(float *mag_x_f)
This API is used to convert the mag x raw data to microTesla output as float.
Definition: bno055.cpp:3011
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 f...
Definition: bno055.cpp:9373
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.
Definition: bno055.cpp:775
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.
Definition: bno055.cpp:16207
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.
Definition: bno055.cpp:15617
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.
Definition: bno055.cpp:228
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.
Definition: bno055.cpp:5314
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_linear_accel_z_msq(float *linear_accel_z_f)
This API is used to convert the linear accel z raw data to meterpersecseq output as float.
Definition: bno055.cpp:3906
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_accel_x_msq(float *accel_x_f)
This API is used to convert the accel x raw data to meterpersecseq output as float.
Definition: bno055.cpp:2642
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.
Definition: bno055.cpp:8362
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.
Definition: bno055.cpp:1471
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.
Definition: bno055.cpp:15324
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.
Definition: bno055.cpp:2323
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.
Definition: bno055.cpp:5366
unsigned char u8
Definition: bno055.h:192
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...
Definition: bno055.cpp:8671
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.
Definition: bno055.cpp:8150
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.
Definition: bno055.cpp:6601
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.
Definition: bno055.cpp:5896
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.
Definition: bno055.cpp:5993
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_gyro_y_rps(float *gyro_y_f)
This API is used to convert the gyro y raw data to rps output as float.
Definition: bno055.cpp:3275
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.
Definition: bno055.cpp:6089
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.
Definition: bno055.cpp:6668
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_euler_p_deg(float *euler_p_f)
This API is used to convert the Euler p raw data to degree output as float.
Definition: bno055.cpp:3667
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_accel_x_msq(double *accel_x_d)
This API is used to convert the accel x raw data to meterpersecseq output as double.
Definition: bno055.cpp:4194
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_euler_r_rad(double *euler_r_d)
This API is used to convert the Euler r raw data to radians output as double.
Definition: bno055.cpp:5186
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.
Definition: bno055.cpp:14268
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.
Definition: bno055.cpp:16600
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.
Definition: bno055.cpp:15032
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.
Definition: bno055.cpp:7741
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.
Definition: bno055.cpp:3943
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.
Definition: bno055.cpp:16337
BNO055_RETURN_FUNCTION_TYPE bno055_convert_float_temp_fahrenheit(float *temp_f)
This API is used to convert the temperature data to Fahrenheit output as float.
Definition: bno055.cpp:4105
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.
Definition: bno055.cpp:1059
BNO055_RETURN_FUNCTION_TYPE bno055_convert_double_gyro_y_rps(double *gyro_y_d)
This API is used to convert the gyro y raw data to rps output as double.
Definition: bno055.cpp:4834
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.
Definition: bno055.cpp:1264
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.
Definition: bno055.cpp:8546
BNO055_RETURN_FUNCTION_TYPE bno055_convert_gravity_float_x_msq(float *gravity_x_f)
This API is used to convert the gravity x raw data to meterpersecseq output as float.
Definition: bno055.cpp:3977
struct for Accel-output data of precision double
Definition: bno055.h:591
double z
Definition: bno055.h:594
double y
Definition: bno055.h:593
double x
Definition: bno055.h:592
struct for Accel-output data of precision float
Definition: bno055.h:641
float z
Definition: bno055.h:644
float x
Definition: bno055.h:642
float y
Definition: bno055.h:643
struct for Accel offset
Definition: bno055.h:690
s16 y
Definition: bno055.h:692
s16 x
Definition: bno055.h:691
s16 r
Definition: bno055.h:694
s16 z
Definition: bno055.h:693
struct for accel data read from registers
Definition: bno055.h:533
s16 x
Definition: bno055.h:534
s16 y
Definition: bno055.h:535
s16 z
Definition: bno055.h:536
struct for Euler-output data of precision double
Definition: bno055.h:615
double r
Definition: bno055.h:617
double p
Definition: bno055.h:618
double h
Definition: bno055.h:616
struct for Euler-output data of precision float
Definition: bno055.h:665
float p
Definition: bno055.h:668
float h
Definition: bno055.h:666
float r
Definition: bno055.h:667
struct for Euler data read from registers
Definition: bno055.h:557
s16 p
Definition: bno055.h:560
s16 h
Definition: bno055.h:558
s16 r
Definition: bno055.h:559
struct for Gravity-output data of precision double
Definition: bno055.h:631
double x
Definition: bno055.h:632
double z
Definition: bno055.h:634
double y
Definition: bno055.h:633
struct for Gravity-output data of precision float
Definition: bno055.h:681
float x
Definition: bno055.h:682
float y
Definition: bno055.h:683
float z
Definition: bno055.h:684
struct for Gravity data read from registers
Definition: bno055.h:582
s16 x
Definition: bno055.h:583
s16 z
Definition: bno055.h:585
s16 y
Definition: bno055.h:584
struct for Gyro-output data of precision double
Definition: bno055.h:607
double y
Definition: bno055.h:609
double x
Definition: bno055.h:608
double z
Definition: bno055.h:610
struct for Gyro-output data of precision float
Definition: bno055.h:657
float z
Definition: bno055.h:660
float x
Definition: bno055.h:658
float y
Definition: bno055.h:659
struct for Gyro offset
Definition: bno055.h:699
s16 x
Definition: bno055.h:700
s16 z
Definition: bno055.h:702
s16 y
Definition: bno055.h:701
struct for Gyro data read from registers
Definition: bno055.h:549
s16 z
Definition: bno055.h:552
s16 y
Definition: bno055.h:551
s16 x
Definition: bno055.h:550
struct for Linear Accel-output data of precision double
Definition: bno055.h:623
double z
Definition: bno055.h:626
double x
Definition: bno055.h:624
double y
Definition: bno055.h:625
struct for Linear accel-output data of precision float
Definition: bno055.h:673
float x
Definition: bno055.h:674
float y
Definition: bno055.h:675
float z
Definition: bno055.h:676
struct for Linear Accel data read from registers
Definition: bno055.h:574
s16 z
Definition: bno055.h:577
s16 y
Definition: bno055.h:576
s16 x
Definition: bno055.h:575
struct for Mag-output data of precision double
Definition: bno055.h:599
double x
Definition: bno055.h:600
double y
Definition: bno055.h:601
double z
Definition: bno055.h:602
struct for Mag-output data of precision float
Definition: bno055.h:649
float y
Definition: bno055.h:651
float z
Definition: bno055.h:652
float x
Definition: bno055.h:650
struct for Mag offset
Definition: bno055.h:707
s16 x
Definition: bno055.h:708
s16 r
Definition: bno055.h:711
s16 z
Definition: bno055.h:710
s16 y
Definition: bno055.h:709
struct for Mag data read from registers
Definition: bno055.h:541
s16 x
Definition: bno055.h:542
s16 z
Definition: bno055.h:544
s16 y
Definition: bno055.h:543
struct for Quaternion data read from registers
Definition: bno055.h:565
s16 z
Definition: bno055.h:569
s16 y
Definition: bno055.h:568
s16 w
Definition: bno055.h:566
s16 x
Definition: bno055.h:567
struct for soft iron calibration matrix
Definition: bno055.h:716
s16 sic_1
Definition: bno055.h:718
s16 sic_2
Definition: bno055.h:719
s16 sic_6
Definition: bno055.h:723
s16 sic_0
Definition: bno055.h:717
s16 sic_5
Definition: bno055.h:722
s16 sic_8
Definition: bno055.h:725
s16 sic_3
Definition: bno055.h:720
s16 sic_4
Definition: bno055.h:721
s16 sic_7
Definition: bno055.h:724
bno055 struct
Definition: bno055.h:517
BNO055_RD_FUNC_PTR
Definition: bno055.h:527
u8 accel_rev_id
Definition: bno055.h:521
u8 dev_addr
Definition: bno055.h:525
BNO055_WR_FUNC_PTR
Definition: bno055.h:526
u16 sw_rev_id
Definition: bno055.h:519
u8 mag_rev_id
Definition: bno055.h:522
void(* delay_msec)(BNO055_MDELAY_DATA_TYPE)
Definition: bno055.h:528
u8 page_id
Definition: bno055.h:520
u8 gyro_rev_id
Definition: bno055.h:523
u8 bl_rev_id
Definition: bno055.h:524
u8 chip_id
Definition: bno055.h:518