Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    BMI085 read accelerometer data is sometimes constant for several 100ms

    BMI085 read accelerometer data is sometimes constant for several 100ms

    Jens
    New Poster

    Hello,

    i am using some BMI085 on i2c with the following configurations:
    ACCEL_RANGE = 4G
    ODR=50Hz
    BW=12Hz

    I recognized in our application, that the accelerometer values x,y,z get stuck for 2 or 3 readout (read every 20ms) and sometimes even several 100ms. This happens in every second and it does not matter if i read out interrupt driven (NEW_DATA_INT) or with not configured interrupt.
    I did not configured any FIFO.

    I can not figure out why this happens, but it happens with all 4 BMI085 chips i have available in 2 different HW devices.

    I tried also the BMI08x-Sensor_API-master from 30.06.2020, to take out possible bugs from my application software, but there it is even worse. The 3 axis show constant values for ~1.1seconds. This means i get only every ~1.1second new data, but need to have it at least with 50Hz.

    So i extended the read of the x,y,z axis by reading the 3 next bytes holding the sensortime. The sensortime is changing by every read, so this should not be a i2c problem.

    In the attached screenshot you see in the columns from left to right:
    1 time
    2 accel_x_raw
    3 accel_y_raw
    4 accel_z_raw
    5 sensortime_byte_1
    6 sensortime_byte_2
    7 sensortime_byte_3

    Do you have any ideas how this behavior is possible and how to solve it.

    Best regards,
    Jens

    5 REPLIES 5

    Minhwan
    Community Moderator
    Community Moderator

    Hello, 

     

    Did you try to test with COINES library? 

    There is BMI085.h and BMI085.C and some example code for BMI085. 

    https://www.bosch-sensortec.com/software-tools/tools/coines/#coines

    If you download COINES, there is sensor read example code as below path 

    C:\COINES\v2.2\examples\c\bmi08x\read_sensor_data\bmi08x_read_sensor_data.c

    I can get data without delay, so could you please test with this example? 

    You need to change some code if you are using your own board, not Bosch application board. 

    Thank you. 

     

    Minhwan Oh

    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