Gas resistance values from BME688 on Thingy:53

I'm interested in using the gas detector on the BME688 on my Thingy53. I've compiled and run zephyr/samples/sensor/bme680 using nRF Connect toolchain 2.3.0, and it produces reasonable output for temperature, pressure, and humidity. However the gas detector resistance value printed seems very high (more than 12 megaohms) and is unchanging, even when I breathe on it or put it in a sealed container with a few ml of isopropanol.

Does the Zephyr driver need to be updated to deal with differences between the 680 and the 688? This Bosch FAQ seems to suggest so. I understand there will be additional work required to use Bosch's fancy proprietary models, but I'd like to just see if the hardware is working.

Any suggestions for next steps?

Other tickets I found on DevZone:

Similar problem with stuck values, apparently unresolved.

A (partially?) successful attempt to use Bosch libraries, but no confirmation of success reading gas values.

  • Hi  

    I changed the source like this which are in "zephyr/drivers/sensor/bme680"

    I have followed and changed exactly what you have suggested, but It changes nothing in the Output, 
    My sensor's data output are showing the same values of the gas_res as it is showing earlier.

     T: 28.970000; P: 98.190000; H: 39.239000; G: 12946860.000000

    Can you please help me more to resolve the libraries?

    Regards,

    Sachin

  • Hi,
    I have a developed a Thingy53 project https://github.com/HomeSmartMesh/sdk-hsm-thingy53 where I ported the BME688 vendor driver BME68x-Sensor-API to Zephyr. I also ported the vendor library to read the IAQ with their .a library Bosch-BSEC2-Library. It is not based on the existing Zephyr BME680 which does not work, but this is a complete rework which consists of :

    The project has also the following, which makes it easy to use it in real case application

    • Mesh Network with OpenThread broadcasting UDP packets as client and running a sensors server.
    • C++ application with json inputs for config and outputs for sensors enables direct mapping to MQTT
    • RGB Led, Light color, Battery

    See all samples, each one is a simple step project to check if things are working, 05_bme688, 06_bme688_parallel, 07_bme688_parallel_cpp, 08_bme688_bsec2 and 20_sensors_server which combines all features together.

    I'm currently deploying and testing this project at home, if you or someone still have questions or feedback, let me know.
    Here an overview about the driver and library integration, more details on the project readme.

Related