Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 
    SOLVED

    BMI160 - Accelerometer Range

    BMI160 - Accelerometer Range

    Katie2020
    New Poster

    Hi,

    I have converted the accelerations raw data into m/s^2 as shown here: https://community.bosch-sensortec.com/t5/MEMS-sensors-forum/BMI160-converting-data-with-resolution/t...

    I would like to understand the impact of the range on the actual data. At the minute, for my application, I don't know what accuracy I need yet. Understanding the impact of the range will help me choose the correct one for my application. To try to understand I tried different ranges. I get different value for accelereation on z-axis (az) which is meant to equal to g=9.8. 

    Here what I get for a az raw data equal to 2164. 

    with +/- 16G: 10.365 m/s^2. 

    with +/- 8G: 5.180 m/s^2. 

    Could you help me please understand the difference between these 2 accelerations? My undertanding is the sensor should measure g on the z axis. So I am supposed to get 9.81. 

    Many thanks

    Katie

    5 REPLIES 5

    Yanchao
    Community Moderator
    Community Moderator

    Hello,

    We have api to calculate accel value, from LSB to m/s2, as bellow. No matter which range selected, when keep accel flat, z-axis output is 9.8 m/s2.

    #define GRAVITY_EARTH (9.80665f) /* Earth's gravity in m/s^2 */

    /*!
    * @brief This internal API is used to convert lsb to ms2
    *
    * @param[in] val: value
    * @param[in] range: range value
    * @param[in] bit_width
    *
    * @return float value in ms2
    *
    */
    float lsb_to_ms2(int16_t val, float g_range, uint8_t bit_width)
    {
    float half_scale = (float)(1 << bit_width) / 2.0f;

    return GRAVITY_EARTH * val * g_range / half_scale;
    }

    BSTRobin
    Community Moderator
    Community Moderator

    Hello Katie2020,

    1.BMI160 had 16-bit resolution accelerometer, and supported 2g, 4g, 8g, 16g range. As you known, sensor output is LSB data format. So there is a corresponding relationship between the range and the output data(LSB). For example you set 2g rang, LSB value range is from -16384 to 16384. LSB to g unit convert: (LSB/16384)g

    BMI160 output signal accelerometer.png

    2. If signal frequency was high, you could choose a higher range. Otherwise, you could choose 2g, 4g range.

     

    Hi, 

    Thanks so much for your answer. 

    Apologies, I am a little confused, what should be  g_range and bit_width? 

    The formula you have presented here is diffrent from the answer given in https://community.bosch-sensortec.com/t5/MEMS-sensors-forum/BMI160-converting-data-with-resolution/t.... Does it make the answer of the attached link incorrect? 

    Many Thanks

    Katie

    Yanchao
    Community Moderator
    Community Moderator

    Hello,

    For bmi160, accel and gyro are both 16bit, bit_width = 16. About g_range, you could read reg 0x41, acc_range, get this value.

    Best regrads.

    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