bme680 sensor
I got some bme680 sensors from Parallax, and they are working. The setup is: Raspberry pi 3, Adafruit bme680 driver, Python.
When I run the Python script, the temperature, humidity, pressure results are very straight forward. The problem that I am having is the results for the gas reading.
I have this setup inside the house, and the reading that I am getting is 22203 ohm. Not sure of what to do with this ohm reading. The chart that Adafruit provides does not show anything that is in ohm results. Since I am not a hardware guy, not sure what to do with these results.
Anybody solve this problem? Thanks in advance for any information.
Ray
Comments
Section 4 of the datasheet talks about employing BSEC software to manage the continuous calibration sequence that then converts from resistance to air quality index and others. The link in the datasheet is dead but this one with email request exists - https://www.bosch-sensortec.com/software-tools/software/bme688-software/
You can also run this sensor on the P2 using the BME68X driver from Bosch.
Works right out of the box.
Ops, you may have an issue with the I2C driver on the P2 for C code. I use my own I2C driver.
Mike
Thanks. I have not fully looked into evanh suggestion. That lead, requests an email to get the necessary library file. Not sure if I will get what I need.
I have looked into a P2 suggestion, ran into multiple problems.
What I want to do is put together the cheapest plug and play solution for an outdoor thermometer assy. So far, using a raspberry Pi 3 or maybe a raspberry pi 4, seems to be cheapest and relatively reliable solution. Since I do a lot of data logging, using some kind of software socket code, has to be available. Plus having some kind of battery backup for the assy would be beneficial.
I already ordered some more bme680 sensors from Parallax, at $15, I might have to order some more, hope the sale lasts a little bit longer.
Now that I am thinking about it, getting the gas thing functional, for the bme680, would be a useful piece of data to log. Would be nice to know the quality of the outside air.
Ray
The cheapest model would be to use an ESP32C3 with ESPHome and Home Assistant.
You don't have to write a lick of code and all you need to do is plug in the bme680 to the ESP32 and ESPHome will write the code and hook it up to Home Assistant.
Home Assistant requires a Raspberry Pi to run which sounds like you already have.
Mike
I am looking at your 'Living Room' display, and it looks like the gas data is in ohm. Does that need to be adjusted or the BSEC library has to be implemented.
Ray
Right, I didn't have a chance to install the BSEC library example and just did the simple one which I had already done.
Mike
Yesterday I put together a raspberry pi 3 and the bme680, and put the unit outside, to get some data. I have a logging program which creates a .csv file to load it to my sqlite 3 database. Now I will be able to work some data using sql.
Yesterday I took a gas reading, in the late afternoon - 22274 ohm. This morning I took another gas reading - 52697 ohm, interesting numbers. I will have to check out my log file to see if I can make some sense out of this.
Ray
Here is what I see from inside the house with Home Assistant.

Mike
I stumbled on to a home assistant forum where they have a discussion about the bme680 gas readings. I get the impression that the higher the ohm number, the more resistance, which means the better the air quality.
So, looking at the graph above, it looks like around the 8:00 AM period the air quality is pretty good, then it starts to drop off. Anything in particular that is occurring at the 8:00 AM time.
Ray
I went to make breakfast. The unit is sitting on my desktop.
Mike
I get up around 4:00.

I hope the png shows up in this post. I have a bme680 unit setup in my living room and I am grabbing data every 10 seconds, for a 24 hour cycle, which is stored in a .csv file. I then load that into my SQLite 3 database. I have a python program that allows me to graph the data that was collected. The graph was created by a modplot program.
I am assuming that the large ohm numbers show the good air quality. The below graph shows a 24 hour period 00:00:00, the left side, and 24:00:00, on the right side. The low point span in the graph shows when the furnace is on. I have the thermostat set to where the furnace starts up at 05:30:00 and shuts down at 18:00:00. Those times do correspond to the graphs low points.
I guess this kind of shows that there is a change in the quality of the air, but it does not show me what the quality is.
The sensor has many different heating profiles that can be applied to measure different types of gases. You would need to use there AI studio to learn a profile that would detect the type of gas you are interested in.
That's where the feather board come into play. Watch the video by Bosch.
Mike
So far I have some bme680 units outside, sun room, bedroom, and attic. I have them data logging temperature, humidity, gas, and pressure. The one outside also does altitude. I am finding some interesting numbers for the gas results.
The outside bme680 unit is recording a gas ~300,000 ohm at the highest, while some of my indoor bme680 units are recording a gas ~30,000 ohm at the highest. Using the outside number as a base for comparison, it does not look good for the indoor readings. I wonder if I can conclude that I am breathing in some stale air, inside the house.
The one thing that I found out is that the outside bme680 unit is not reading temperatures at 0 F , in fact it sort of locked in a reading of 14 F for the whole data capture, for the whole day. When I do a single reading manually, the reading seems to come in correctly, although I did not test it when the temperature was at 0 F.
Is anybody else having a problem with the bme680 reading temperatures at 0 F?
Ray
I moved my BME680 to an outside building and it seems to work just fine. The resistant seems to follow the temperature though.

No problem with temperature:

Mike
My graphs are showing similar results. I also added a graph for humidity, so, which is having an affect on the gas, humidity or temperature, or both. It would be nice if I had a home AI system, then I could train it with my .csv data. I could then give my brain a rest, and have the AI do the number crunching, creating graphs, ... etc.
Back to number crunching.
Ray
This is an interesting development. I just had a biology refresher, plants give off carbon at night, and produce oxygen during the day.
The graph below is data from the sunroom/foursesons room which I have a lot of plants. Now looking at the graph, looks like the higher ohm numbers reflect CO2 and the lower ohm numbers reflect oxygen production. My original assumption about the ohm reading seems to be wrong. The graph below - left side 00:00:00 and the right side 24:00:00.
Some of the spikes, in the lower numbers, during the daytime may be explained by the sun shinning into the room. This is interesting, it seems that that the plants are showing some activity, during the twenty four hour time frame.
Ray
(https://forums.parallax.com/uploads/editor/gu/qr1pe0h9ye3c.png "")