36 #if MODULE_PERIPH_I2C || DOXYGEN
37 #ifndef BME680_PARAM_I2C_DEV
38 #define BME680_PARAM_I2C_DEV (I2C_DEV(0))
41 #ifndef BME680_PARAM_I2C_ADDR
42 #define BME680_PARAM_I2C_ADDR (BME680_I2C_ADDR_2)
46 #if MODULE_PERIPH_SPI || DOXYGEN
47 #ifndef BME680_PARAM_SPI_DEV
48 #define BME680_PARAM_SPI_DEV (SPI_DEV(0))
51 #ifndef BME680_PARAM_SPI_NSS_PIN
52 #define BME680_PARAM_SPI_NSS_PIN GPIO_PIN(0, 5)
59 #define BME680_PARAMS_I2C \
61 .ifsel = BME680_I2C_INTF, \
62 .temp_os = BME680_OS_8X, \
63 .hum_os = BME680_OS_2X, \
64 .pres_os = BME680_OS_4X, \
65 .filter = BME680_FILTER_SIZE_3, \
66 .gas_measure = BME680_ENABLE_GAS_MEAS, \
69 .settings = BME680_OST_SEL | \
73 BME680_GAS_SENSOR_SEL, \
74 .intf.i2c.dev = BME680_PARAM_I2C_DEV, \
75 .intf.i2c.addr = BME680_PARAM_I2C_ADDR, \
81 #define BME680_PARAMS_SPI \
83 .ifsel = BME680_SPI_INTF, \
84 .temp_os = BME680_OS_8X, \
85 .hum_os = BME680_OS_2X, \
86 .pres_os = BME680_OS_4X, \
87 .filter = BME680_FILTER_SIZE_3, \
88 .gas_measure = BME680_ENABLE_GAS_MEAS, \
91 .settings = BME680_OST_SEL | \
95 BME680_GAS_SENSOR_SEL, \
96 .intf.spi.dev = BME680_PARAM_SPI_DEV, \
97 .intf.spi.nss_pin = BME680_PARAM_SPI_NSS_PIN, \
103 #ifndef BME680_SAUL_INFO
104 #if MODULE_BME680_I2C && MODULE_BME680_SPI
105 #define BME680_SAUL_INFO { .name = "bme680:0" }, \
106 { .name = "bme680:1" },
108 #define BME680_SAUL_INFO { .name = "bme680" }
118 #if MODULE_BME680_I2C || DOXYGEN
121 #if MODULE_BME680_SPI || DOXYGEN
137 #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.