Hello FAC_CA, Thank you for your reply, it make sense not to fully setup the sensor after each reboot. I did some changes to the code, I removed RTC memory and instead I'm using EEPROM method. I did below, but still no luck: void setup() { Serial.begin(9600); ESP.getResetReason(); Wire.pins(0, 2); Wire.begin(0, 2); iaqSensor.begin(BME680_I2C_ADDR_SECONDARY, Wire); checkIaqSensorStatus(); if ( resetInfo.reason == REASON_DEEP_SLEEP_AWAKE ) { Serial.println("DeepSleep"); } else { Serial.println("Reset"); EEPROM.begin(BSEC_MAX_STATE_BLOB_SIZE + 1); // 1st address for the length iaqSensor.setConfig(bsec_config_iaq); loadState(); checkIaqSensorStatus(); } bsec_virtual_sensor_t sensorList[7] = { BSEC_OUTPUT_RAW_TEMPERATURE, BSEC_OUTPUT_RAW_PRESSURE, BSEC_OUTPUT_RAW_HUMIDITY, BSEC_OUTPUT_RAW_GAS, BSEC_OUTPUT_IAQ, BSEC_OUTPUT_SENSOR_HEAT_COMPENSATED_TEMPERATURE, BSEC_OUTPUT_SENSOR_HEAT_COMPENSATED_HUMIDITY, }; iaqSensor.updateSubscription(sensorList, 7, BSEC_SAMPLE_RATE_ULP); checkIaqSensorStatus(); esp_timer_get_time = millis(); wifi_setup(); client.setServer(mqttServer, 1883); esp_timer_get_time1 = millis(); }
... View more