CTL_STATUS_t bmp085_initialize_i2c(BMP085_BAROMETER_t *self,
                                   CTL_I2C_BUS_t *bus,
                                   int addr);

bmp085_initialize_i2c initializes the BMP085 pressure sensor self on I2C bus bus using the 8-bit I2C address addr.

During initialization, bmp085_initialize_i2c tries to read calibration data from the sensor, with up to ten retries. If the data can be read without error, bmp085_initialize_i2c returns CTL_NO_ERROR.

Once the pressure sensor interface is initialized, you can use all standard pressure sensor methods from the sensor API on the interface.

Return Value

bmp085_initialize_i2c will return any error reported by the underlying I2C driver without retrying. If the sensor data is unavailable after ten retries, bmp085_initialize_i2c returns CTL_READ_ERROR.

Thread Safety

bmp085_initialize_i2c is thread-safe if a mutex is associated with the I2C bus bus.

See Also