Hello,
I have a networked sensor project built around the Arduino Nano. The project is at the large end of "hobby" projects. We'll eventually run up to 100 sensor units on the network (if our patience and soldering skills keep up). I am looking to record indoor temperature, relative humidity, pressure and VoC level. For temperature, relative humidity and pressure, I need reasonably precise values. For VoC level, I just need trends i.e. show when VoC is increasing or decreasing across the network, not absolute values.
The sensor unit is designed to run on batteries and report data every minute or so. In other words, the unit loops through waking up, taking some readings, broadcasting them, setting a delay and sleeping.
To date, we've been using a Bosch BME280 for temp/humidity/pressure, and a Sensirion SGP30 to measure tVoC. Since this is a hobby project, we've been using modules rather than raw ICs (like the Adafruit/Sparkfun modules).
We have started to prepare to make 50 units, which of course means getting short-run PCBs made in China. I reached out to Sensirion to find out which Chinese suppliers they might work with and they were very unhelpful. They insisted that I would have to buy from one US-based supplier that was charging 2x the price of other suppliers I found online. They also refused to disclose any approved Chinese manufacturers or verify if any of the links I sent were likely to be offering genuine parts.
So I'm now looking at replacing the SGP30 with an alternative sensor.
I had previously rejected the BME680 for several reasons, but I realize I may have misread or misinterpreted what I read.
Here are my questions:
- The SGP30 seemed to detect a wider range of VoC levels. Is that the case?
- Since I am using an Arduino Nano, we cannot use the BSEC library. We would therefore be outputting the resistance value. How much variation is there likely to be in resistance between sensors? e.g. if I expose two BME680s to the same quantity of VoC, how similar are the two resistance readings likely to be?
- I have read multiple "how to use BME680" articles that mention needing to run the sensor for 30 minutes before taking a reading. Is this correct? My concern is power consumption. Do I need to leave the sensor powered up at all times in order to get accurate readings?
- I'm guessing this comes up a lot, but any comments on this article? https://www.jaredwolff.com/finding-the-best-tvoc-sensor-ccs811-vs-bme680-vs-sgp30/
- Do you have any approved BME680 module suppliers on Alibaba/Aliexpress/similar?
I'd welcome any information you can provide. I've worked with Bosch MEMS sensors before on commercial projects and always been happy with the quality of the products and support...
Also, for the sake of fairness, this paper is much less negative than the Wolff article: https://www.mdpi.com/2227-9040/7/3/40/htm