Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 
    SOLVED

    BME680 eCO2 accuracy

    BME680 eCO2 accuracy

    liamm36
    New Poster

    Hey,

    We are developing a product and wanted to test multiple air quality sensors, this included the BME280. Overall there were 10 devices in various locations logging the sensor values every 6 seconds. 

    When looking at the data the BME680 eCO2 reading does not follow a similar trend to any of the other devices tested. BMESensorComparisson.PNG

    The BME680 was sampled using the BSEC library on Arduino with the sample rate set to BSEC_SAMPLE_RATE_LP with the code otherwise following the Arduino provided examples. 

    Are there any other steps to get accurate eCO2 or can anyone comment as to why we seem to see an inverse trend on the BME680's eCO2 compared to the other 3 sensors?

    Thanks,

    Liam

    9 REPLIES 9

    Hey BSTRobin,

    apologies for the delayed response. In the original firmware we did not log gas resistance at all. I have been experiementing both in Arduino and esp-idf and have found the BSEC_OUTPUT_RAW_GAS measurement to be static. 

    I have also tried running the stock arduino bsec library example https://github.com/BoschSensortec/BSEC-Arduino-library/blob/master/examples/basic/basic.ino and got the same results on our custom hardware and on a adafruit bme680 dev board found at https://www.mouser.co.uk/new/adafruit/adafruit-bme680-dev-board/

    The following is a sample arduino example output

    Time ,raw Temp, Press,raw  Hum,  Gas resistance, IAQ, acc, temp, humidity, static iaq, co2equiv, breathVocEquivalent

    1737036, 23.75, 101385.00, 36.38, 12887828.00, 85.26, 1, 23.69, 36.52, 51.32, 605.30, 0.74
    1740036, 23.75, 101379.00, 36.36, 12887828.00, 85.71, 1, 23.69, 36.50, 51.52, 606.09, 0.75
    1743036, 23.75, 101379.00, 36.35, 12887828.00, 86.16, 1, 23.69, 36.49, 51.72, 606.87, 0.75
    1746036, 23.75, 101379.00, 36.34, 12887828.00, 86.60, 1, 23.69, 36.48, 51.91, 607.64, 0.75
    1749036, 23.74, 101379.00, 36.34, 12887828.00, 87.04, 1, 23.68, 36.50, 52.10, 608.41, 0.75
    1752037, 23.74, 101383.00, 36.34, 12887828.00, 87.46, 1, 23.68, 36.50, 52.28, 609.13, 0.76
    1755037, 23.75, 101381.00, 36.34, 12887828.00, 87.84, 1, 23.69, 36.47, 52.45, 609.79, 0.76
    1758036, 23.74, 101383.00, 36.36, 12887828.00, 88.20, 1, 23.68, 36.51, 52.61, 610.43, 0.76
    1761036, 23.74, 101383.00, 36.36, 12887828.00, 88.54, 1, 23.68, 36.51, 52.76, 611.03, 0.76
    1764037, 23.74, 101381.00, 36.36, 12887828.00, 88.87, 1, 23.68, 36.51, 52.90, 611.60, 0.76
    1767037, 23.74, 101381.00, 36.37, 12887828.00, 89.17, 1, 23.68, 36.52, 53.03, 612.13, 0.76
    1770037, 23.74, 101381.00, 36.38, 12887828.00, 89.45, 1, 23.68, 36.52, 53.15, 612.62, 0.77
    1773037, 23.74, 101381.00, 36.40, 12887828.00, 89.70, 1, 23.68, 36.55, 53.26, 613.04, 0.77
    1776037, 23.74, 101383.00, 36.40, 12887828.00, 89.93, 1, 23.68, 36.54, 53.36, 613.46, 0.77
    1779037, 23.75, 101385.00, 36.41, 12887828.00, 90.12, 1, 23.69, 36.53, 53.45, 613.79, 0.77
    1782037, 23.74, 101385.00, 36.44, 12887828.00, 90.30, 1, 23.68, 36.58, 53.52, 614.09, 0.77
    1785037, 23.74, 101385.00, 36.44, 12887828.00, 90.46, 1, 23.68, 36.59, 53.59, 614.38, 0.77
    1788037, 23.74, 101383.00, 36.44, 12887828.00, 90.61, 1, 23.68, 36.59, 53.66, 614.64, 0.77
    1791037, 23.74, 101385.00, 36.45, 12887828.00, 90.74, 1, 23.68, 36.60, 53.72, 614.88, 0.77
    1794037, 23.74, 101385.00, 36.45, 12887828.00, 90.88, 1, 23.68, 36.59, 53.78, 615.11, 0.77
    1797037, 23.73, 101383.00, 36.45, 12887828.00, 91.02, 1, 23.67, 36.61, 53.84, 615.36, 0.77
    1800037, 23.73, 101383.00, 36.43, 12887828.00, 91.19, 1, 23.67, 36.58, 53.91, 615.65, 0.77
    1803037, 23.73, 101383.00, 36.42, 12887828.00, 91.36, 1, 23.67, 36.57, 53.99, 615.95, 0.77
    1806037, 23.72, 101383.00, 36.40, 12887828.00, 91.55, 1, 23.66, 36.57, 54.07, 616.29, 0.78
    1809037, 23.72, 101387.00, 36.41, 12887828.00, 91.74, 1, 23.66, 36.57, 54.15, 616.61, 0.78
    1812037, 23.73, 101383.00, 36.41, 12887828.00, 91.88, 1, 23.67, 36.55, 54.22, 616.87, 0.78
    1815036, 23.72, 101387.00, 36.38, 12887828.00, 92.08, 1, 23.66, 36.54, 54.30, 617.21, 0.78
    1818037, 23.72, 101387.00, 36.40, 12887828.00, 92.25, 1, 23.66, 36.55, 54.38, 617.51, 0.78
    1821037, 23.72, 101387.00, 36.39, 12887828.00, 92.42, 1, 23.66, 36.54, 54.45, 617.80, 0.78
    1824037, 23.71, 101385.00, 36.40, 12887828.00, 92.60, 1, 23.65, 36.56, 54.53, 618.11, 0.78
    1827037, 23.72, 101385.00, 36.38, 12887828.00, 92.76, 1, 23.66, 36.53, 54.60, 618.40, 0.78

    As you can see the gas resistance does not change even though the co2 and voc is updated and should be based on the gas resistance?

    Note even after several days of running the gas resistance does not change.

    All these tests have been run on ESP-32 microcontrollers. 

    Thank you,

    Liam

     

     

     

    BSTRobin
    Community Moderator
    Community Moderator

    Hi liamm36,

    Thanks for your feedback.
    After our internal discussion, it look likes gas is in resistant saturation situation, please check below information,
    1.Check the sensor heater if work or not, or use different heater temperature to check.
    2.Use another BME680 sensor to check if have same phenomenon.

    BSTRobin
    Community Moderator
    Community Moderator

    Hi liamm36,

    Do you have further feedback?

    BSTRobin
    Community Moderator
    Community Moderator

    Since there was no feedback for a long time, we close this topic first. You could update feedback in the future if you have.

    Hi,

    I also recently purchased a BME688 (Adafruit StemmaQt board) and just started to test it. I've tried two BME68x libraries with Arduino: 1. "BSEC 1.6.1480" and 2. "Adafruit BME680 2.0.2" (apparently based on some Bosch Sensortec open-source bme68x interface code).

    Using almost the default basic example of/with the BSEC library gives me the same constant gas reading of 12887828.00 as reported here. In the default example sketch I had to change the sensor selection to SECONDARY which makes sense as the Adafruit board uses 0x77 as default I2C address.

    The Adafruit library instead reads values like 38-42kOhm if the sensor lies just on the table. And if you breath at the sensor, the kOhm values quickly drop to low 20s with relative humidity increasing from 40% to 70%. After 1-2 minutes the values converge back to previous readings, slightly fluctuating there again.

    I assume the sensor is working, as it does react consistently to breathing at it. But I don't understand at all why the BSEC library reports a constant value while the Adafruit library reports reasonable values(are they?).

    With the given library versions you should be able to reproduce. I'm using the sensor board attached to an ESP32-WROOM-32D.

    Kind regards,

    Stephan Kanthak

     

    Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist