This commit is contained in:
2025-04-04 04:48:13 +02:00
commit 2790bfa772
50 changed files with 6158 additions and 0 deletions

51
main/hw/bme680b.c Normal file
View File

@@ -0,0 +1,51 @@
#include "bme680.h"
#include "bme680b.h"
#include "esp_log.h"
#include "i2cbrn.h"
bme680_config_t BME680_DEV_CFG = I2C_BME680_CONFIG_DEFAULT;
bme680_handle_t BME680_DEV_HANDLE;
void bme680_print_registers(bme680_handle_t handle)
{
/* configuration registers */
bme680_control_measurement_register_t ctrl_meas_reg;
bme680_control_humidity_register_t ctrl_humi_reg;
bme680_config_register_t config_reg;
bme680_control_gas0_register_t ctrl_gas0_reg;
bme680_control_gas1_register_t ctrl_gas1_reg;
/* attempt to read control humidity register */
bme680_get_control_humidity_register(handle, &ctrl_humi_reg);
/* attempt to read control measurement register */
bme680_get_control_measurement_register(handle, &ctrl_meas_reg);
/* attempt to read configuration register */
bme680_get_configuration_register(handle, &config_reg);
/* attempt to read control gas 0 register */
bme680_get_control_gas0_register(handle, &ctrl_gas0_reg);
/* attempt to read control gas 1 register */
bme680_get_control_gas1_register(handle, &ctrl_gas1_reg);
ESP_LOGI(TAG_BME, "Variant Id (0x%02x): %s", handle->variant_id, uint8_to_binary(handle->variant_id));
ESP_LOGI(TAG_BME, "Configuration (0x%02x): %s", config_reg.reg, uint8_to_binary(config_reg.reg));
ESP_LOGI(TAG_BME, "Control Measurement (0x%02x): %s", ctrl_meas_reg.reg, uint8_to_binary(ctrl_meas_reg.reg));
ESP_LOGI(TAG_BME, "Control Humidity (0x%02x): %s", ctrl_humi_reg.reg, uint8_to_binary(ctrl_humi_reg.reg));
ESP_LOGI(TAG_BME, "Control Gas 0 (0x%02x): %s", ctrl_gas0_reg.reg, uint8_to_binary(ctrl_gas0_reg.reg));
ESP_LOGI(TAG_BME, "Control Gas 1 (0x%02x): %s", ctrl_gas1_reg.reg, uint8_to_binary(ctrl_gas1_reg.reg));
}
void bme680b_init() {
// init device
bme680_init(i2c0_bus_hdl, &BME680_DEV_CFG, &BME680_DEV_HANDLE);
if (BME680_DEV_HANDLE == NULL)
{
ESP_LOGE(TAG_BME, "bme680 handle init failed");
assert(BME680_DEV_HANDLE);
}
bme680_print_registers(BME680_DEV_HANDLE);
}