Expand description

BME280 driver with support for I2C and SPI bus options.

Example

use bme280_multibus::{i2c::Address, Bme280, Sample, Standby};

const SETTINGS: bme280_multibus::Settings = bme280_multibus::Settings {
    config: bme280_multibus::Config::reset()
        .set_standby_time(bme280_multibus::Standby::Millis1000)
        .set_filter(bme280_multibus::Filter::X16),
    ctrl_meas: bme280_multibus::CtrlMeas::reset()
        .set_osrs_t(bme280_multibus::Oversampling::X8)
        .set_osrs_p(bme280_multibus::Oversampling::X8)
        .set_mode(bme280_multibus::Mode::Normal),
    ctrl_hum: bme280_multibus::Oversampling::X8,
};

let mut bme: Bme280<_> = Bme280::from_i2c(i2c, Address::SdoGnd)?;
bme.settings(&SETTINGS)?;
let sample: Sample = bme.sample().unwrap();

Modules

BME280 I2C bus implementation

BME280 SPI bus implementation

Structs

BME280 driver.

BME280 calibration data.

Config register.

Measurement control register.

A sensor sample from the BME280.

BME280 initialization settings.

Status register

Enums

Sampling error.

Filter settings.

Sensor mode.

Oversampling settings for temperature, pressure, and humidity data.

tstandby settings.

Constants

BME280 chip ID.

Traits

BME280 bus, I2C or SPI.