Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    BMX055 Accelerometer Fast Compensation and Magnetometor Data Interpretation

    Highlighted
    New Poster

    BMX055 Accelerometer Fast Compensation and Magnetometor Data Interpretation

    Hello,

    I'm using the BMX055 IMU in an accessory for motorcycles. I started testing the IMU in our first prototype and I'm successfully able to read the data of ACC, GYRO and MAG via I2C. 

    However there are a couple of things that are not so clear to me:

    1) I followed the procedure for the ACC fast compensation described at page 31-32 of the datasheet, that is:

         - set the g range to 2g (write 0x03 in register ACC 0x0F)

         -  Set offset target for x, y and z, that in my case are x=0, y=0 and z=1g (write 0x20 in register ACC 0x37)

         - Launch the calibration for x, y and z, that is, write in register ACC 0x36 the value 0x20, 0x40, 0x50, respectively

     but it seems that it has no effect. Am I doing something wrong?

    2) I'm not sure how to interpret the X, Y, Z and RHALL data of the MAG for a compass-like application. Is there any data processing/compensation I need to do? I took a look at some drivers/APIs on GitHub and I noiticed that there is a compensation. The thing is that the registers used to get the compensation values appear to be marked as "reserved" on the datasheet. Could you please clarify that?

    Thank you in  advance!

     

     

    2 REPLIES 2
    Community Moderator
    Community Moderator

    Re: BMX055 Accelerometer Fast Compensation and Magnetometor Data Interpretation


    @GMASCIARDT wrote:

    1) I followed the procedure for the ACC fast compensation described at page 31-32 of the datasheet, that is:

         - set the g range to 2g (write 0x03 in register ACC 0x0F)

         -  Set offset target for x, y and z, that in my case are x=0, y=0 and z=1g (write 0x20 in register ACC 0x37)

         - Launch the calibration for x, y and z, that is, write in register ACC 0x36 the value 0x20, 0x40, 0x50, respectively

     but it seems that it has no effect. Am I doing something wrong?


    First of all I just noticed a tiny mistake i the datasheet. Section 5.4.1 is actually slow compensation (high-pass filter). Make sure you follow the steps for section 5.4.2. there is also an application note on this: https://ae-bst.resource.bosch.com/media/_tech/media/application_notes/BST-MAS-AN030.pdf

    The effect depends on how large your initial offset is. Read back the values of the registers. If they are non-zero then the compensation is active

    Community Moderator
    Community Moderator

    Re: BMX055 Accelerometer Fast Compensation and Magnetometor Data Interpretation


    @GMASCIARDT wrote:

    2) I'm not sure how to interpret the X, Y, Z and RHALL data of the MAG for a compass-like application. Is there any data processing/compensation I need to do? I took a look at some drivers/APIs on GitHub and I noiticed that there is a compensation. The thing is that the registers used to get the compensation values appear to be marked as "reserved" on the datasheet. Could you please clarify that?


    This is the API you want to use : https://github.com/BoschSensortec/BMM150-Sensor-API

    The trimming registers are marked as reserved in the datasheet, customers must use the API. See section 9.3.2 of the datasheet

    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