BME680-Micropython
BME680-Micropython copied to clipboard
Gas values are always the same, they do not change
I have been trying to implement the BME680.py in my code. Everything works fine. except the bme.gas. The reading is always the same, it does not change.
That's right. The gas section never seemed to deliver reasonable results and is on my to-do list of rework.
Hello, I´m using the BME688 and all the values but gas works well, but I have the same problem, the gas value reading is always the same. 12946860 ohms and does not change. Did you find a solution?
Yes I know. But I did not work on that yet. The datasheet and information you can find is not very helpful.
Hey robert! Appreciate the library, but wondering if there will come a follow-up for the gas readings and maybe VOC calculation? Looking forward to it!
Still on the to-do-list. I grabbed you the data sheet again and started reading it again.About VOC-Calculation: that might be tricky. As far I understand the sensor, you can determine the conductivitiy of the gas at a set temperature. It does not detect specific chemicals itself. How that relates to an air being healthy or not is part of the closed software blob. Obviously, if the algorithm is known, it can be calculated in Python code.
I'm going to purchase an official VOC sensor in a (few) week(s). I will be using 60 of these sensors, so I will try an own calibration algorithm. I'll try fo fit temperature, humidity and resistance readings to official VOC sensor. If there's any news from your side, please keep me updated, as will I once I have the official unit. I have tried a terrible algorithm I found in a C++ library and converted to Python - it sucked. I'll see if can find the link later. Cheers!
https://github.com/juergs/BME680-Arduino-Library-with_TVOC-/blob/master/js_BME680/js_bme680.cpp I tried this. Their images claim great results but mine were straight garbage (up to 1200 outdoors while 200 is considered upper normal limit).
Maybe I don't fully understand software, but this library does micropython with bme680: https://github.com/RuiSantosdotme/Random-Nerd-Tutorials/blob/master/Projects/ESP-MicroPython/bme680.py which is based on: https://github.com/adafruit/Adafruit_CircuitPython_BME680/blob/master/adafruit_bme680.py ...and this active library too (not to mention the ie/ esp32 c++ versions). And talk of different VOC curves. I should probably do some more research on the "closed software blob" but thought I'd mention.
I know the adafruit lib, which I used as the base for my variant. So I kept the gas section from that lib. But I never paid attention to it, never compare the code with the datasheet to understand, what it is doing. That was still on my to-do list. The problem here like with the humidity sensor is to get a proper test environment, or at least reference data of sensor temperature vs. gas reading for various chemicals. Without that you can get readings but you will not know what is means.
I am witing for approval to buy this apparatus: https://www.tme.eu/nl/details/vfm200/gasmeters-en-recorders/extech/ Sorry, it is in Dutch, but the user manual is also available in English and states in the Introduction in the 5-page version that it is calibrated from factory. Will be running them for hopefully like two days every couple of minutes if I can find a way to snapshot it's reading easily.
Thanks. It would be fine to compare the readings of this instrument with the BME680 values. I'm curious if this EXTECH device contains some kind of ventilator to sniff the air or if they just rely on the existing openings.
It is available at various sources, like mouser, distrelec, and voelkner: https://www.voelkner.de/products/1007758/Extech-Formaldehyd-Messgeraet-VFM200.html Edit: The two ratings at voelkner is interesting: One customer complains, that with three devices they get severely different readings. The other customer is just happy about the easy procurement. SIgh(!)
Ok, a bit of reading finds compensation equations like, "comp_gas = log(R_gas[ohm]) + 0.04 log(Ohm)/%rh * hum[%rh] .The slope strongly depends on your heating profile and the polling frequency!" -- way beyond me. BUT, if y'all want to continue any note taking in a notion.so wiki I'm going to do it via this wiki: BME680 Technicals WIki
Sounds like a good idea but for the love of whoever, that website is not behaving on my phone. Either you did not give full permissions or their mobile website and app have a terrible experience.