Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    BHI160 pass through, internal BMI160 returns chip id 0xd6

    BHI160 pass through, internal BMI160 returns chip id 0xd6

    bgfas
    New Poster

    I am attempting to use the pass-through interface of the BHI160B to access the internal BMI160. However when I read addr 0x00 of the BMI160 I am getting 0xD6 instead of the expected 0xD1 described in the BMI160 datasheet.

    I am using a slightly modified BoschSensorHub library (https://github.com/braingram/BoschSensorHub). The modifications are described in my other post.

    Is it expected that the chip id for the internal BMI160 does not match the datasheet? Also, the BMI160 only responds on i2c address 0x69 (not the default 0x68 but instead the alternative listed in the datasheet).

    5 REPLIES 5

    BSTRobin
    Community Moderator
    Community Moderator

    Hi bgfas,

    This is official BHI160 Sensor Hub Arduino library: https://github.com/BoschSensortec/BoschSensorHub

    BHI160B use product ID and revision ID, not same with BMI160. You could see it from data sheet.

    I2C address depends on SA_ Gpio7 logic level.

    BHI160B  I2C address.png

    Hi BSTRobin,

    Thanks for your reply. I am not having any issues reading the chip id of the BHI160. The issue I'm having is with the integrated BMI160.

    I am using the soft pass-through i2c registers (parameter page 15, section 11.5 in the BHI160 datasheet). My understanding is that this should allow me to read from the integrated BMI160 accelerometer and gyroscope directly.

    I am able to successfully:

    - use setSoftPassThrough to initiate a read of register 0x00 of the BMI160 (at address 0x69)

    - use getSoftPassThough to read out the result (and confirm status, address and start)

    However the result is 0xD6. The BMI160 datasheet does not list this as the correct chip id and instead lists 0xD1.

    BSTRobin
    Community Moderator
    Community Moderator

    Hi bgfas,

    The method of accessing BMI160 through pass-through is not publicly released. If you directly access IMU data, you can select the sensor of IMU instead of BHI160B with hub.

    Hi BSTRobin,

    Thank you for your answer. Is there any way to make this public? We have several of these boards and given the other issue (inability to reliably use the virtual accelerometer) this seems like one way to possibly salvage the boards.

    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