Browse Source

AP_Compass: added several compasses' autodetection on Navio 2

master
Staroselskii Georgii 9 years ago committed by Lucas De Marchi
parent
commit
62f2695e83
  1. 24
      libraries/AP_Compass/AP_Compass.cpp

24
libraries/AP_Compass/AP_Compass.cpp

@ -491,6 +491,30 @@ void Compass::_detect_backends(void) @@ -491,6 +491,30 @@ void Compass::_detect_backends(void)
"pci0000:00/0000:00:18.6" },
HAL_COMPASS_HMC5843_I2C_ADDR),
true));
#elif HAL_COMPASS_DEFAULT == HAL_COMPASS_NAVIO2
AP_Compass_Backend *backend = AP_Compass_AK8963::probe_mpu9250(*this, 0);
if (backend) {
_add_backend(backend);
hal.console->printf("AK8953: Compass detected\n");
} else {
hal.console->printf("AK8953: Compass not detected\n");
}
backend = AP_Compass_LSM9DS1::probe(*this, hal.spi->get_device("lsm9ds1_m"));
if (backend) {
_add_backend(backend);
hal.console->printf("LSM9DS1: Compass detected\n");
} else {
hal.console->printf("LSM9DS1: Compass not detected\n");
}
backend = AP_Compass_HMC5843::probe(*this, hal.i2c_mgr->get_device(HAL_COMPASS_HMC5843_I2C_BUS, HAL_COMPASS_HMC5843_I2C_ADDR));
if (backend) {
_add_backend(backend);
hal.console->printf("HMC5843: External compass detected\n");
} else {
hal.console->printf("HMC5843: External compass not detected\n");
}
#elif HAL_COMPASS_DEFAULT == HAL_COMPASS_AK8963_MPU9250
_add_backend(AP_Compass_AK8963::probe_mpu9250(*this, 0));
#elif HAL_COMPASS_DEFAULT == HAL_COMPASS_HMC5843

Loading…
Cancel
Save