BME688 gas resistance reading stuck, but only with bsec

Hi,

I use BSEC 1.6.1480 with Arduino 1.8.16 on an esp32 board / BME688 SDO tied to GND. I am interested in the IAQ index, seems to work. But strange thing: if i use the basic example, unchanged, the gas resistance reading seems not ok (stuck at 12917167 ohm). For example:

4170038, 23.09, 99831.00, 48.16, 12917167.00, 81.06, 1, 23.03, 48.33, 49.49, 597.95, 0.72
4173039, 23.10, 99833.00, 48.13, 12917167.00, 81.09, 1, 23.04, 48.28, 49.50, 598.00, 0.72
4176038, 23.08, 99831.00, 48.13, 12917167.00, 81.16, 1, 23.02, 48.34, 49.53, 598.13, 0.72
4179039, 23.09, 99831.00, 48.16, 12917167.00, 81.19, 1, 23.03, 48.33, 49.55, 598.18, 0.72
4182038, 23.09, 99833.00, 48.17, 12917167.00, 81.20, 1, 23.03, 48.36, 49.55, 598.20, 0.72
4185039, 23.09, 99831.00, 48.11, 12917167.00, 81.27, 1, 23.03, 48.29, 49.58, 598.32, 0.72
4188038, 23.08, 99831.00, 48.13, 12917167.00, 81.33, 1, 23.02, 48.34, 49.61, 598.43, 0.73
4191039, 23.09, 99833.00, 48.15, 12917167.00, 81.36, 1, 23.03, 48.32, 49.62, 598.48, 0.73
4194038, 23.09, 99831.00, 48.13, 12917167.00, 81.40, 1, 23.03, 48.31, 49.64, 598.55, 0.73
4197038, 23.09, 99829.00, 48.17, 12917167.00, 81.41, 1, 23.03, 48.35, 49.64, 598.56, 0.73
4200038, 23.10, 99831.00, 48.14, 12917167.00, 81.42, 1, 23.04, 48.30, 49.64, 598.58, 0.73
4203039, 23.09, 99833.00, 48.13, 12917167.00, 81.45, 1, 23.03, 48.32, 49.66, 598.64, 0.73
4206038, 23.09, 99833.00, 48.11, 12917167.00, 81.51, 1, 23.03, 48.30, 49.68, 598.73, 0.73
4209039, 23.09, 99831.00, 48.12, 12917167.00, 81.55, 1, 23.03, 48.31, 49.70, 598.81, 0.73
4212038, 23.10, 99829.00, 48.13, 12917167.00, 81.56, 1, 23.04, 48.29, 49.71, 598.83, 0.73
4215039, 23.10, 99833.00, 48.12, 12917167.00, 81.58, 1, 23.04, 48.29, 49.71, 598.86, 0.73
4218038, 23.11, 99829.00, 48.13, 12917167.00, 81.56, 1, 23.05, 48.28, 49.71, 598.83, 0.73
4221039, 23.11, 99833.00, 48.13, 12917167.00, 81.55, 1, 23.05, 48.29, 49.70, 598.81, 0.73
4224038, 23.10, 99831.00, 48.08, 12917167.00, 81.59, 1, 23.04, 48.27, 49.72, 598.89, 0.73
4227039, 23.10, 99831.00, 48.02, 12917167.00, 81.69, 1, 23.04, 48.21, 49.76, 599.05, 0.73
4230038, 23.10, 99831.00, 48.02, 12917167.00, 81.78, 1, 23.04, 48.21, 49.80, 599.21, 0.73

Strange thing is, if i use the Adafruit library gas resistance reading appears to be normal, at least dynamic. But no IAQ reading.

I could only use the IAQ reading and ignore gas resistance, but i worrie about a faulty IAQ reading. Compared to the Sensirion vocindex buildup a fake index could be appearing. When i test with alcohol spray (not directly applied of course) in the room, the voc index drops by 5, instead of climbing...

Do you have a suggestion?

 

NB: Adafruit BME680 version 2.0.1(!) / look at the ohm change...

Temperature = 23.41 *C
Pressure = 998.68 hPa
Humidity = 48.96 %
Gas = 23.78 KOhms
Approx. Altitude = 122.02 m

Gas kOhms changes, with alcoholspray aerosol drops.

Zanshin library for BME680:

Loop Temp°C Humid% Press hPa Alt m Air mΩ
==== ====== ====== ========= ======= ======
1 23.51 51.088 998.52 123.48-1901.67
2 23.74 51.132 998.52 123.48-1901.67
3 23.52 51.074 998.56 123.14-1901.67
4 23.36 51.199 998.54 123.31-1901.67

Gas resistance seems faulty too. Strange!

 

6 replies