33#if MODULE_PERIPH_I2C || DOXYGEN
34#ifndef BME680_PARAM_I2C_DEV
35#define BME680_PARAM_I2C_DEV (I2C_DEV(0))
38#ifndef BME680_PARAM_I2C_ADDR
39#define BME680_PARAM_I2C_ADDR (BME680_I2C_ADDR_2)
43#if MODULE_PERIPH_SPI || DOXYGEN
44#ifndef BME680_PARAM_SPI_DEV
45#define BME680_PARAM_SPI_DEV (SPI_DEV(0))
48#ifndef BME680_PARAM_SPI_NSS_PIN
49#define BME680_PARAM_SPI_NSS_PIN GPIO_PIN(0, 5)
56#define BME680_PARAMS_I2C \
58 .ifsel = BME680_I2C_INTF, \
59 .temp_os = BME680_OS_8X, \
60 .hum_os = BME680_OS_2X, \
61 .pres_os = BME680_OS_4X, \
62 .filter = BME680_FILTER_SIZE_3, \
63 .gas_measure = BME680_ENABLE_GAS_MEAS, \
66 .settings = BME680_OST_SEL | \
70 BME680_GAS_SENSOR_SEL, \
71 .intf.i2c.dev = BME680_PARAM_I2C_DEV, \
72 .intf.i2c.addr = BME680_PARAM_I2C_ADDR, \
78#define BME680_PARAMS_SPI \
80 .ifsel = BME680_SPI_INTF, \
81 .temp_os = BME680_OS_8X, \
82 .hum_os = BME680_OS_2X, \
83 .pres_os = BME680_OS_4X, \
84 .filter = BME680_FILTER_SIZE_3, \
85 .gas_measure = BME680_ENABLE_GAS_MEAS, \
88 .settings = BME680_OST_SEL | \
92 BME680_GAS_SENSOR_SEL, \
93 .intf.spi.dev = BME680_PARAM_SPI_DEV, \
94 .intf.spi.nss_pin = BME680_PARAM_SPI_NSS_PIN, \
100#ifndef BME680_SAUL_INFO
101#if MODULE_BME680_I2C && MODULE_BME680_SPI
102#define BME680_SAUL_INFO { .name = "bme680:0" }, \
103 { .name = "bme680:1" },
105#define BME680_SAUL_INFO { .name = "bme680" }
115#if MODULE_BME680_I2C || DOXYGEN
118#if MODULE_BME680_SPI || DOXYGEN
134#define BME680_NUMOF ARRAY_SIZE(bme680_params)
Interface definition for the Bosch BME680 sensor.
#define BME680_SAUL_INFO
Default SAUL meta information.
#define BME680_PARAMS_I2C
Defaults I2C parameters if none provided.
#define BME680_PARAMS_SPI
Defaults SPI parameters if none provided.
static const saul_reg_info_t bme680_saul_info[]
Additional meta information to keep in the SAUL registry.
static const bme680_params_t bme680_params[]
Configure params for BME680.
SAUL registry interface definition.
BME680 device initialization parameters.
Additional data to collect for each entry.