02-02-2023 03:53 PM
Hello,
I am trying to use the BME688 sensor from Bosch to detect VOCs. I am using the Sparkfun 19096 breakout board, Arduino IDE 1.8.19 and SV-Zanshin library, as recommended. I can read the Temperature, Humidity and Pressure data on the serial monitor but the altitude and gas resistance data are wrong. They show negative numbers (-41.73 and -999.35 for alt and gas, respectively), which I assume it’s variable overflow, and the values don’t change. I can fix the issue with the negative number by modifying the data types and scaling the reading down. However, the fact that the sensor gas resistance reading doesn’t change at all even after 48 hours burn in and exposure to acetone and IPA is worrisome. Here is the full list of the specifications I am using.
System:
macOS Monterey 12.6.2
Arduino IDE version 1.8.19
Sensor:
Bosch BME688
Breakout board:
Sparkfun 19096 - https://www.sparkfun.com/products/19096
Libraries:
Adafruit - https://github.com/adafruit/Adafruit_BME680 - Doesn’t find sensor.
SV-Zanshin - https://github.com/Zanduino/BME680 (recommended by Sparkfun)
Bosch - https://github.com/BoschSensortec/Bosch-BME68x-Library - Doesn’t find sensor.
Development board:
esp32 pico d4 kit - https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-pico-kit....
esp32 WROOM32 - https://www.az-delivery.de/en/products/esp32-developmentboard
Tutorial followed:
Random Tutorials - https://randomnerdtutorials.com/esp32-bme680-sensor-arduino/ - This doesn’t find the sensor.
Arduino Example used:
BME688 I2C demo
Questions:
Apologies if this was answered already. Many thanks! Greatly appreciated!
Solved! Go to Solution.
02-03-2023 03:15 AM
Hi Christoforos,
The RAW data of the gas is the resistance value with ohm unit. Under different heating configurations, the gas corresponds to the resistance output, after processing by BSEC algorithm, output IAQ, etc.
The maximum supply voltage of the BME688 is 3.6V.
https://github.com/boschsensortec/BSEC-Arduino-library is Arduino project for BSEC1. As you used BME688, recommend you download latest BSEC2 package from https://www.bosch-sensortec.com/software-tools/software/bme688-software, refer readme file https://github.com/boschsensortec/BSEC-Arduino-library/blob/master/README.md to migrate BME688 BSEC2 Arduino project to project.
02-03-2023 04:19 PM
Dear BSTRobbin,
Thank you for your reply!
I am interested in the raw data in Ohms and then I can calibrate the sensor with different substances. Therefore, do I actually need the BSEC?
Also, I am using the sensor with esp32 and Arduino IDE. Might this be the problem? Should I migrate to Visual code and PlatformIO?
Many thanks!
Regards,
Christoforos
02-17-2023 04:22 AM
Hi Christoforos,
You could refer BSEC output signal from this list.
If you do not use output such as IAQ, you don't need BSEC.
BME688 Arduino example code has been supported, you could migrate it to ESP32 platform and read raw data from BME688.
02-17-2023 04:00 PM - edited 02-18-2023 09:25 AM
Dear BSTRobin,
Thank you for you reply!
Yes, I can use only BME68x library on Arduino IDE 2.0 for MKR Wifi 1010 or esp32.