|
|
|
@ -7,6 +7,7 @@
@@ -7,6 +7,7 @@
|
|
|
|
|
#include <AP_Math/AP_Math.h> |
|
|
|
|
#include <AP_Notify/AP_Notify.h> |
|
|
|
|
#include <AP_Vehicle/AP_Vehicle.h> |
|
|
|
|
#include <AP_BoardConfig/AP_BoardConfig.h> |
|
|
|
|
|
|
|
|
|
#include "AP_InertialSensor.h" |
|
|
|
|
#include "AP_InertialSensor_BMI160.h" |
|
|
|
@ -587,6 +588,17 @@ AP_InertialSensor::detect_backends(void)
@@ -587,6 +588,17 @@ AP_InertialSensor::detect_backends(void)
|
|
|
|
|
_add_backend(AP_InertialSensor_MPU6000::probe(*this, hal.i2c_mgr->get_device(HAL_INS_MPU60x0_I2C_BUS, HAL_INS_MPU60x0_I2C_ADDR))); |
|
|
|
|
_add_backend(AP_InertialSensor_MPU9250::probe(*this, hal.spi->get_device(HAL_INS_MPU9250_NAME))); |
|
|
|
|
#elif HAL_INS_DEFAULT == HAL_INS_PX4 || HAL_INS_DEFAULT == HAL_INS_VRBRAIN |
|
|
|
|
if (AP_BoardConfig::get_board_type() == AP_BoardConfig::PX4_BOARD_TEST_V1) { |
|
|
|
|
_add_backend(AP_InertialSensor_MPU6000::probe(*this, hal.spi->get_device(HAL_INS_MPU60x0_NAME))); |
|
|
|
|
} else if (AP_BoardConfig::get_board_type() == AP_BoardConfig::PX4_BOARD_TEST_V2) { |
|
|
|
|
_add_backend(AP_InertialSensor_MPU6000::probe(*this, hal.spi->get_device(HAL_INS_MPU60x0_NAME))); |
|
|
|
|
_add_backend(AP_InertialSensor_LSM9DS0::probe(*this, |
|
|
|
|
hal.spi->get_device(HAL_INS_LSM9DS0_G_NAME), |
|
|
|
|
hal.spi->get_device(HAL_INS_LSM9DS0_A_NAME))); |
|
|
|
|
} else if (AP_BoardConfig::get_board_type() == AP_BoardConfig::PX4_BOARD_TEST_V4) { |
|
|
|
|
_add_backend(AP_InertialSensor_MPU6000::probe(*this, hal.spi->get_device(HAL_INS_MPU60x0_NAME))); |
|
|
|
|
} |
|
|
|
|
// also add any PX4 backends (eg. canbus sensors)
|
|
|
|
|
_add_backend(AP_InertialSensor_PX4::detect(*this)); |
|
|
|
|
#elif HAL_INS_DEFAULT == HAL_INS_MPU9250_SPI |
|
|
|
|
_add_backend(AP_InertialSensor_MPU9250::probe(*this, hal.spi->get_device(HAL_INS_MPU9250_NAME))); |
|
|
|
|