From 78b49a2c355bc6b67020c5ae6ec789b0d3d2fac7 Mon Sep 17 00:00:00 2001 From: Peter Barker Date: Fri, 19 Jun 2020 11:25:39 +1000 Subject: [PATCH] AP_RangeFinder: maxbotix: use i2c-address parameter --- libraries/AP_RangeFinder/AP_RangeFinder.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/libraries/AP_RangeFinder/AP_RangeFinder.cpp b/libraries/AP_RangeFinder/AP_RangeFinder.cpp index 19169a5b14..7adc758f05 100644 --- a/libraries/AP_RangeFinder/AP_RangeFinder.cpp +++ b/libraries/AP_RangeFinder/AP_RangeFinder.cpp @@ -350,15 +350,20 @@ void RangeFinder::detect_instance(uint8_t instance, uint8_t& serial_instance) } } break; - case Type::MBI2C: + case Type::MBI2C: { + uint8_t addr = AP_RANGE_FINDER_MAXSONARI2CXL_DEFAULT_ADDR; + if (params[instance].address != 0) { + addr = params[instance].address; + } FOREACH_I2C(i) { if (_add_backend(AP_RangeFinder_MaxsonarI2CXL::detect(state[instance], params[instance], - hal.i2c_mgr->get_device(i, AP_RANGE_FINDER_MAXSONARI2CXL_DEFAULT_ADDR)), + hal.i2c_mgr->get_device(i, addr)), instance)) { break; } } break; + } case Type::LWI2C: if (params[instance].address) { // the LW20 needs a long time to boot up, so we delay 1.5s here