Hi Bosch community,
I have purchased BME688 sensor and have it mounted and running on my own PCB.
Could anyone please help answer the following questions?
1. The first thing that came to my attention when using BME688 for my use case is that BME688 requires "burn-in" and "run-in" to be able to generate stable outputs. Unfortunately the specific procedure and time duration of "burn-in" and "run-in" are tightly coupled with the implementation of a specific dev kit, not the sensor itself.
Can anyone please explain how "burn-in" or "run-in" can be achieved using BME68x-Sensor-API, and their required duration?
And does the "burn-in" or "run-in" process must be carried under clean air?
2. I notice that BSEC will take the data output from the first few days to calibrate BSEC outputs. Is this calibration similar to "burn-in" or "run-in", in other words, to get reliable raw gas readings? Or it's completely independent of "burn-in" or "run-in", it is only to allow BSCE algorithm to produce credible results?
3. Some tutorials like sparkfun tutorial warn that touching the metal shield of BME688 would cause contamination and hence discredit sensor output, but this is not mentioned as of BME688 - Datasheet Revision 1.1.
So is that warning for real, especially when "touching" is inevitable when mounting BME688 on a PCB? And how can we decontaminate BME688 if its metal shield has been touched?
If you use the BSEC algorithm with BME688, BME688 needs to be calibrated by BSEC, and the calibration completion time depends on the configuration. Please refer to the application notes in BSEC 220.127.116.11:
Until the calibration accuracy reaches 3, BSEC will output high-precision values.
The calibration process does not necessarily need to be carried out in clean air.
During the installation process, there should be no foreign objects blocking the opening to ensure normal air circulation at the opening. Do not stick chemicals to the BME688 sensor to avoid affecting the data output results.
Thank you for the reply, it's very helpful. I have some follow-up questions:
1. If I don't use BSEC and just want to get reliable and repeatable raw gas resistance results, is there a way to carry out burn-in, run-in or pre-burn using BME68x-Sensor-API?
2. Would touching BME688 using a human finger affect data output results? And is there a way to remediate such an effect?
Thanks for your reply.
Yes, I have realized that Burn in, run in, or pre burn are terms specific to BSEC.
Instead, I'm more interested in the reliability of the raw gas resistance from BME688 using sensor API. I found that if I use API to read gas resistance in either forced or parallel mode, the resistance values would increase over time. After some time, say 15 min, the resistance values would become stable.
Is there any official explanation for the increase of gas resistance values when BME688 just starts up? And is there any recommendation for how long the waiting time should be?
"Will you touch BME688 with your fingers in the application of your product?"
There's no need to touch the sensor in my specific use case. But there is a possibility of touching BME688 while assembling, handling and delivering of my devices with BME688 installed. That's why I want to understand the impact of touching BME688 on data integrity, so that I can better estimate and manage the potential risk.