Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    BME680: BSEC warning code: 100

    Established Member

    BME680: BSEC warning code: 100

    I have tried to use two BME680 at ESP32 for compare the values for two identical sensors.

    Using for each BME a seperate I2C bus.

    If I try the BME680_basic_data_logging sample all is working fine, I get values from both sensors.

    Using the BME680_config_state sample I will get for the second sensor the iaqSensor.status value "100" back.
    Didn't found it in documentation / source code - what does this mean?

    As explanation - I use an array for the sensors - maybe the bsec lib have any problems here with it?

    Bsec iaqSensor[2];
    ...
    iaqSensor[0].begin(BME680_I2C_ADDR_PRIMARY, I2Cone);
    iaqSensor[1].begin(BME680_I2C_ADDR_PRIMARY, I2Ctwo);
    ...
    void loop(void)

    if (iaqSensor[0].run()) {
    ...
    }
    if (iaqSensor[1].run()) {
    ...
    }
    }

    of course modified the functions:

    checkIaqSensorStatus(int n)
    updateState(int n)
    loadState(int n)

    So two questions:
    - what does mean the errorcode 100
    - is it possible to use the bsce lib with two sensors in one sketch?

    Thanks!

    Michael

    EDIT: In the meantime I have seen that it seems not to be possible without major changes in lib to use 2 sensors with this samples.

     

    Tags (2)
    5 REPLIES 5
    Community Moderator

    Re: BME680: BSEC warning code: 100

    Hi  michar_pr,

    As you rightly pointed out, the low level libary is still a single instance. The internal algorithm is designed to support multi-instance, but future releases might expose those interfaces.

     

    Regards,
    kgoveas

    New Poster

    Re: BME680: BSEC warning code: 100

    Hi,

    I am experiencing the same problem (2 BME680 on one I2C)

    Are there any plans that this will be fixed soon?

     

    regards

    Bernd

    Contributor

    Re: BME680: BSEC warning code: 100

    Another user on this forum reports success with this pseudo-code:
    https://community.bosch-sensortec.com/t5/MEMS-sensors-forum/Multiple-BME680-devices-with-BSEC/m-p/10...

    Until the BSEC library allows for multiple simultaneous instances, a workaround of using save/load state to switch a single instance of BSEC between multiple sensors by keeping multiple state files.

    The same mechanism can also be used to run BSEC in a separate host (e.g. a cloud server running BSEC on thousands of IoT nodes), or to run BSEC from a log file (e.g. defer the processing of BSEC until AC power is available to conserve battery).

    o_o
    New Poster

    Re: BME680: BSEC warning code: 100

    I nearly missed you answer. I was expecting the forum to send a mail if someone replies but I did not get a notification mail.

    Meanwhile I found that current BSEC library on github has an example for 2 devices on a single I2C bus. With the information from here: https://forum.arduino.cc/index.php?topic=630059.0 (Post #3) I finally managed to run the multi example on an arduino mega.

    Haven't looked at the example in detail yet, is it handling the states of the sensors to a single BSEC instance?

    (Found the checkbox to send email of someone replies)

    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