Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    BMX055 Driver Code

    BMX055 Driver Code

    jeef5233
    New Poster

    Dear all,

    My name is GeRuikang and I am working at University of Shanghai for Science and Technology. I am trying to develop a sensor and I would like to use bmx055 IMU. 

    Is there any source code that can be provided at least to read the raw data coming from the sensor? Or even better if already has data conversion?

    Thank you all,

    GeRuikang

    3 REPLIES 3

    FAE_CA1
    Community Moderator
    Community Moderator

    Hi,

    Thanks for your inquiry. Please note that BMX055 has been discontinued and end of life. You may need to switch to BMI088 + BMM150 two chip solution.

    BMX055 = BMA255 + BMG160 + BMM150 in one single chip. You can get the API source code on the Github.

    BMA255 API source code is available at https://github.com/BoschSensortec/BMA2x2_driver.

    BMG160 API source code is available at https://github.com/BoschSensortec/BMG160_driver.

    BMM150 API source code is available at https://github.com/BoschSensortec/BMM150-Sensor-API.

    These APIs already include data conversion to the unit of g, degree per second and uT respectively.

    Thanks.

    Hi,

    Thank you for your very helpful advice three weeks ago.

    At present, I have integrated the driver code of BMA255+BMG160+BMM150, hoping to read the nine axis data of BMX055.

    The data currently read is not correct. It is necessary to note that CS1, CS2 and CS3 of BMX055 are connected together in our circuit and only one GPIO pin of MCU is used for control. I wonder if this hardware scheme is feasible?

    Thanks.

    FAE_CA1
    Community Moderator
    Community Moderator

    Hi,

    For BMX055 there are only CSB1 pin for accel and CSB2 pin for gyro. There is no CSB3 pin for BMM150 because BMM150 is I2C only. So you need to use I2C to talk to BMX055 while you can tie CSB1 and CSB2 pins to VDDIO directly without the need of another GPIO pin of your MCU to control it.

    After you integrate the driver code of BMA255+BMG160+BMM150 into your MCU IDE, you can check if you can read the chip ID values of accel, gyro and mag correctly. If yes, then it means your I2C read function is working fine. Then you can try to write some value to the register of accel, gyro and mag respectively and then read them back one by one to see if the value has been successfully written to the register or not. If yes, then it means your I2C write function is working fine. Then you can use driver code examples to configure BMX055 accel, gyro and mag and read their data registers.

    You may also refer to BMX055 Arduino library for more informaiton at https://github.com/sensebox/BMX055-Arduino-Library.

    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