Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    BMX160 : looking for technical document on how to read out accelerometer data in raw and fifo modus

    BMX160 : looking for technical document on how to read out accelerometer data in raw and fifo modus

    André
    Established Member

    Hi,

    Is there a document similar to i.e. "How to generate a single and double tap interrupts using BMI160 accelerometer"?

     

    I need to fully understand on how to interface with the BMX160 in reading out the acceleromter data using BMX160::get_accel_data and later on on how to read out the data using fifo buffer and various interrupts. 

     

    Having a technical document similar to the single and double tap as mentioned before.

     

    Thanks

     

    André 

    5 REPLIES 5

    BSTRobin
    Community Moderator
    Community Moderator

    Hello André,

    1.For the document, you could refer BMX160 data sheet and BMI160 knowledge share in community:
    https://community.bosch-sensortec.com/t5/Knowledge-base/BMI160-Series-IMU-Design-Guide/ta-p/7376
    https://community.bosch-sensortec.com/t5/Knowledge-base/BMI160-FIFO-Advanced-Usage/ta-p/8957

    2. You also could refer attached exmaple code to read RAW data, read FIFO data, use TAP feature.

    André
    Established Member

    Thanks!

     

    The code for polling looks very similar to the code samples except I don't use a sleep/wait.

    There is I think, if I understand the datasheet correctly, a way to check if new data has arrived in the data registers by checking as described in section 2.11.4 the appropiate drdy_ bits in STATUS 0x18 register when polling for (new) data? 

    Does it mean that a check  for a no motion event before checking for the next data drdy event is required?

     

    Thanks!

    BSTRobin
    Community Moderator
    Community Moderator

    Hi André,

    Check the bit drdy_xxx of 0x1B status register to see if the data was updated.
    It means: for example, if you set the ODR bit to 50 Hz, you will see the flag of data update every 20ms, whether the sensor is moving or not.

    André
    Established Member

    Thanks! 

    This sound as expected.

    This means that the code sample need to be updated? 

     

    Cheers

    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