Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    BME680 status is BME680_W_NO_NEW_DATA since there is another measurement performed on I2C bus

    BME680 status is BME680_W_NO_NEW_DATA since there is another measurement performed on I2C bus

    chloe
    New Poster

    Hello,


    I am using BME680 measurement in a multi-thread RTOS. Here is my code :

    sleep(3000); /* Delay till the measurement is ready */

    // Now we get the result of the measures
    uint8_t status = bme680_get_sensor_data(&data, &gas_sensor);

    // Trigger the next measurement if you would like to read data out continuously
    if (gas_sensor.power_mode == BME680_FORCED_MODE) {
    bme680_set_sensor_mode(&gas_sensor);
    }

    and the sleep function is osDelayUntil(osKernelGetTickCount()+t_ms)

    At this stage all this well working.

    But, as soon as I add below another i2c read from anotehr device on the same bus as BME680 in the same thread, the BME680 status goes from BME680_OK (0) to BME680_W_NO_NEW_DATA (2) and the data values and temperature/humidity/pressure become irrelevant.

    Is it due to delay induced by new i2c measurement, to i2c conflicts as the BME data might be read continously, or any other source?
    In forced mode, we do bme680_get_sensor_data and then is the BME680 performing background measurements or is it just asked once?

    Thank you

    1 REPLY 1

    Minhwan
    Community Moderator
    Community Moderator

    Hello Chloe, 

     

    Could you capture i2c logic analyzer data? 

    Then, I can look into more details. 

    Thanks, 

    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