diff --git a/libraries/AP_Compass/AP_Compass.cpp b/libraries/AP_Compass/AP_Compass.cpp index 53930359ff..8cc61c8dde 100644 --- a/libraries/AP_Compass/AP_Compass.cpp +++ b/libraries/AP_Compass/AP_Compass.cpp @@ -1153,6 +1153,18 @@ void Compass::_probe_external_i2c_compasses(void) } #endif +#if !defined(HAL_DISABLE_I2C_MAGS_BY_DEFAULT) || defined(HAL_USE_I2C_MAG_MMC3416) + // external i2c bus + FOREACH_I2C_EXTERNAL(i) { + ADD_BACKEND(DRIVER_MMC3416, AP_Compass_MMC3416::probe(GET_I2C_DEVICE(i, HAL_COMPASS_MMC3416_I2C_ADDR), + true, ROTATION_NONE)); + } + FOREACH_I2C_INTERNAL(i) { + ADD_BACKEND(DRIVER_MMC3416, AP_Compass_MMC3416::probe(GET_I2C_DEVICE(i, HAL_COMPASS_MMC3416_I2C_ADDR), + all_external, ROTATION_NONE)); + } +#endif + #if !defined(HAL_DISABLE_I2C_MAGS_BY_DEFAULT) || defined(HAL_USE_I2C_MAG_RM3100) #ifdef HAL_COMPASS_RM3100_I2C_ADDR const uint8_t rm3100_addresses[] = { HAL_COMPASS_RM3100_I2C_ADDR };