60 uint8_t _reserved[64];
167 float sea_level_pressure);
float humidity
Relative humidity in %.
driver_bme280_oversampling_t
BME280 oversampling settings.
hw_i2c_t i2c
I2C interface.
bool driver_bme280_read_data(driver_bme280_t *driver, driver_bme280_data_t *data)
Read all sensor data (temperature, pressure, humidity)Triggers a forced measurement (single shot)...
bool driver_bme280_valid(driver_bme280_t *driver)
Check if driver instance is valid.
float pressure
Pressure in Pa.
uint8_t addr
I2C address (0x76 or 0x77)
void driver_bme280_finalize(driver_bme280_t *driver)
Finalize and power down BME280.
float driver_bme280_calculate_sea_level_pressure(const driver_bme280_data_t *data, float altitude)
Calculate sea level pressure from altitude.
Hardware interface abstraction layer.
float temperature
Temperature in °C.
bool driver_bme280_init_i2c(driver_bme280_t *driver, hw_i2c_t *i2c, uint8_t addr_offset)
Initialize BME280 with I2C interface and default settingsInitializes with default settings: 1x oversa...
No oversampling (output set to 0)
void driver_bme280_set_temp_offset(driver_bme280_t *driver, float offset)
Set temperature offset for calibrationUse this to compensate for self-heating or other temperature of...
driver_bme280_filter_t
BME280 IIR filter coefficients.
bool driver_bme280_init_i2c_with_config(driver_bme280_t *driver, hw_i2c_t *i2c, uint8_t addr_offset, driver_bme280_oversampling_t temp_os, driver_bme280_oversampling_t press_os, driver_bme280_oversampling_t hum_os, driver_bme280_filter_t filter)
Initialize BME280 with I2C interface and custom settingsAllows configuration of oversampling and filt...
float driver_bme280_calculate_altitude(const driver_bme280_data_t *data, float sea_level_pressure)
Calculate altitude from pressureUses the international barometric formula.