Ardusub Baro:Unable to initialize driver

Hello,

I am attempting to use Ardusub with a different flight controller (either a Kakute H7, or SpeedyBee F405 Wing). When attaching the Bar30 pressure sensor to the SDA / SCL pins, I receive the error Baro:Unable to initialize driver. This error stops pretty much all functionality of the ROV. Without the Bar30 pressure sensor connected it works fine. At first I believed it was an I2C address conflict with the onboard pressure sensor, although using an address translator did not fix the problem. Any help would be greatly appreciated! Thanks!

Hi @oskye,

I’m not sure if our team have either of those flight controller boards available to test with. In the hope that it’s just a configuration issue, have you confirmed that the I2C port you’re using is enabled via the BARO_EXT_BUS parameter, and that the MS5837 sensor driver is enabled in BARO_PROBE_EXT?

I’m not sure if you’re using a standard or custom firmware build, but hopefully the driver wasn’t excluded via a compilation flag, although I could imagine a bug in how and where the pre-compiler macros are applied could cause an error like that. Alternatively there could be a problem with the sensor itself being damaged / not responding as expected. Do you have a way of testing it independently (e.g. via an Arduino or Raspberry Pi)?

Hmm, how did you go about this?

The driver uses a hardcoded address, to match the fixed address of the device, so if you’ve changed the effective address via a translator then you would also need to compile the firmware to use that different address.