Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    BSEC/BME680 i2C bus failure

    BSEC/BME680 i2C bus failure

    Ricky666
    Member

    Hey i have a Arduino Project and noticed something strange and would like to ask if this behaivur is normal and/or avoidable

    I have 2 BME680 and a Display on the same I2C Bus, but if one of the Sensors get wet the whole I2C Bus "collapses", if i disconnect the wet sensor, the other sensor and display work again as usual, whats the reason for that and what can i do against it?

    Or is it "normal behaivour" since its not waterproof? i would have imagine that i just get false readins or something like that, not that the whole i2c bus "locks up"

    I also measured between SCL/SDA/GND/VCC on the sensor while it was wet but there was no short or ohm resistance whatsoever

    7 REPLIES 7

    Minhwan
    Community Moderator
    Community Moderator

    Hello Ricky, 

     

    You can't handle 2 BME680s together in BSEC. 

    But, you can handle it using BME68x API. https://github.com/BoschSensortec/BME680_driver

    And, I think I2C issue could happen when you set same i2c address for 2 bme680 in one i2c communicattion. 

    You should set primary address for one bme680 and secondary address for the other. 

    Regarding setting address, you can check 6.2 i2c interface in datasheet. 

    https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme680-ds001.pdf

    Thanks, 

    BSEC can actually handle 2 Sensor, thats not the Problem, the only Problem is that its not working if one Sensor got wet because the whole I2C Bus gets locked up, its working flawlessly and like it should if both sensors are "dry"

    Minhwan
    Community Moderator
    Community Moderator

    Hello Ricky, 

     

    Could you send me the your code? 

    I don't think BSEC is working for multiple BME680s. 

    I will check your code. 

    i mostly just modified this multi example : https://github.com/BoschSensortec/BSEC-Arduino-library/blob/master/examples/basic_config_state_multi...

     

    like i said, its working as intended (i get plausible readings from both), the only problem i have is if one sensor gets wet (through condensation for example)

    But it seems like this behaivor is unusual? (because you think its something with the code?)

    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