new Bosch BMI088 IMU driver using FIFOs and DRDY

This commit is contained in:
Daniel Agar
2020-06-04 16:16:40 -04:00
parent b6ec00c079
commit 13e34b32e6
30 changed files with 1801 additions and 1739 deletions
+1 -1
View File
@@ -32,7 +32,7 @@ px4_add_board(
imu/adis16448
imu/adis16477
imu/adis16497
imu/bmi088
imu/bosch/bmi088
imu/invensense/icm20649
imu/invensense/icm20689
irlock
-1
View File
@@ -33,7 +33,6 @@ px4_add_board(
imu/adis16448
imu/adis16477
imu/adis16497
imu/bmi088
imu/invensense/icm20602
imu/invensense/icm20649
imu/invensense/icm20948
+1 -1
View File
@@ -31,7 +31,7 @@ px4_add_board(
imu/adis16448
imu/adis16477
imu/adis16497
imu/bmi088
imu/bosch/bmi088
imu/invensense/icm20689
irlock
lights/blinkm
@@ -7,9 +7,9 @@ adc start
# Internal SPI bus ICM-20689
icm20689 -R 2 -s start
# Internal SPI bus BMI088 accel/gyro
bmi088 -A -R 10 -s start
bmi088 -G -R 10 -s start
# Internal SPI BMI088
bmi088 -A -R 2 -s start
bmi088 -G -R 2 -s start
# internal compass
ist8310 -I start
+1 -1
View File
@@ -32,7 +32,7 @@ px4_add_board(
#imu/adis16448
#imu/adis16477
#imu/adis16497
#imu/bmi088
#imu/bosch/bmi088
imu/invensense/icm20689
#irlock
#lights/blinkm
+1 -1
View File
@@ -24,7 +24,7 @@ px4_add_board(
distance_sensor # all available distance sensor drivers
dshot
gps
imu/bmi088
imu/bosch/bmi088
imu/invensense/icm20602
imu/invensense/icm42688p
irlock
+3 -3
View File
@@ -15,9 +15,9 @@ icm20602 -R 12 -s start
# Internal SPI bus ICM-42688
icm42688p -R 12 -s start
# Internal SPI bus BMI088 accel/gyro
bmi088 -A -R 4 -s start
bmi088 -G -R 4 -s start
# Internal SPI4 BMI088
bmi088 -A -R 12 -s start
bmi088 -G -R 12 -s start
# Internal I2C Baro
bmp388 -I start
+1 -1
View File
@@ -29,7 +29,7 @@ px4_add_board(
gps
#heater
#imu # all available imu drivers
imu/bmi088
imu/bosch/bmi088
imu/invensense/icm20602
imu/invensense/icm20948
irlock
@@ -9,8 +9,8 @@ adc start
icm20602 -s -R 8 start
# Internal SPI bus BMI088 accel & gyro
bmi088 -A -R 10 -s start
bmi088 -G -R 10 -s start
bmi088 -A -R 8 -s start
bmi088 -G -R 8 -s start
# Internal ICM-20948 (with magnetometer)
icm20948 -s -R 8 -M start
+1 -1
View File
@@ -31,7 +31,7 @@ px4_add_board(
imu/adis16448
imu/adis16477
imu/adis16497
imu/bmi088
imu/bosch/bmi088
imu/invensense/icm20602
imu/st/ism330dlc
irlock
+1 -1
View File
@@ -31,7 +31,7 @@ px4_add_board(
imu/adis16448
imu/adis16477
imu/adis16497
imu/bmi088
imu/bosch/bmi088
imu/invensense/icm20602
imu/st/ism330dlc
irlock
+3 -3
View File
@@ -15,9 +15,9 @@ icm20602 -R 2 -s start
# Internal SPI bus ISM300DLC
ism330dlc -s start
# Internal SPI bus BMI088 accel/gyro
bmi088 -A -R 12 -s start
bmi088 -G -R 12 -s start
# Internal SPI BMI088
bmi088 -A -R 4 -s start
bmi088 -G -R 4 -s start
# Possible internal compass
bmm150 -I start
+1 -1
View File
@@ -44,7 +44,7 @@ constexpr px4_spi_bus_t px4_spi_buses[SPI_BUS_MAX_BUS_ITEMS] = {
}, {GPIO::PortD, GPIO::Pin15}),
initSPIBus(SPI::Bus::SPI3, {
initSPIDevice(DRV_GYR_DEVTYPE_BMI088, SPI::CS{GPIO::PortI, GPIO::Pin8}, SPI::DRDY{GPIO::PortI, GPIO::Pin7}),
initSPIDevice(DRV_ACC_DEVTYPE_BMI088, SPI::CS{GPIO::PortI, GPIO::Pin4}, SPI::DRDY{GPIO::PortI, GPIO::Pin6}),
initSPIDevice(DRV_ACC_DEVTYPE_BMI088, SPI::CS{GPIO::PortI, GPIO::Pin4}),
}, {GPIO::PortE, GPIO::Pin7}),
// initSPIBus(SPI::Bus::SPI4, {
// // no devices