I have 2 BME688 sensors recording data in the same room, and they are providing different gas sensor readings. I am using the bme68x.h API. I believe they are both adequately broken-in and calibrated.
1) I have seen various sources list various estimates on burn-in time. For initial burn-in time, some say 48 hours, and some say 5 days in clean air. Which is correct? Perhaps one or both of my sensors are not burned in properly.
2) I have also read that, upon power-up, you must let the sensor run for 30 minutes before the data is considered valid. Is this always true? What if I just power cycle my board without making any changes to the sensor's configuration, do I still need to wait 30 minutes? Perhaps I'm collecting data too soon after powerup.
2a) If it's not always true that you need to wait 30 minutes, then what are the cases where you do need to wait 30 minutes? Is it just when you make a change to the sensor's configuration (e.g., change the gas heater profile, turn on the IIR filter, change an oversampling rate, etc.)?
3) Is it possible to damage the sensor if you expose it to an exceptionally volatile substance, such as denatured alcohol? Perhaps one of my sensors was damaged a few weeks ago and is providing inaccurate readings.
The readings (recorded at the same time, and plotted in Python):
Another question, does the BME688 sensor calibrate itself periodically during usage? For example if I expose the sensor to a gas for an extended period of time, would I expect to see those readings shift due to internal calibration?
Note that I am using the API, but not BSEC. I think BSEC does calibration, but I am not asking about that.
If you have a brand new BME Board and use BSEC algorithm, you should stabilize the sensors on the board before taking any measurements. To do so, connect the board to power and let it run BSEC for at least 24 hours. This procedure is necessary only once and your board is then ready to take reliable measurements. For BME688 stabilization and calibration, it only makes sense for BSEC because it is required by the BSEC algorithm.
If the BSEC algorithm is not used, the sensor data can be read using the Sensor API after power on, and the user can directly use the original sensor data.