Bosch Sensortec Community

    SOLVED

    BMI160: orient_int flag is not being set though interrupt was detected on GPIO

    Occasional Visitor

    BMI160: orient_int flag is not being set though interrupt was detected on GPIO

    I'm facing an issue with detection of orientation interrupt. Below given is my register configurations.


    ORIENT_CFG: BMI160_REG_INT_ORIENT0 [0x65] = 0x40 (0b01000000)
    ORIENT_TRIG: BMI160_REG_INT_EN0 [0x50] = 0x40 (0b01000000)


    When the orientation of the board is changed, interrupt was detected on GPIO and there was change in orient<1:0> bits of INT_STATUS[3]
    register (0x1F).

    [00:01:11.450,042] <dbg> BMI160: INT STATUS (0x1C-0x1F): 00 00 00 10
    [00:30:10.103,302] <dbg> BMI160: INT STATUS (0x1C-0x1F): 00 00 00 30
    [00:30:11.536,560] <dbg> BMI160: INT STATUS (0x1C-0x1F): 00 00 00 70
    [00:30:13.248,382] <dbg> BMI160: INT STATUS (0x1C-0x1F): 00 00 00 40

    But  orient_int  bit of INT_STATUS[0] is always 0. It should be 1 according to datasheet.

    Because of this, corresponding callback of our application is not being triggered.

    2 REPLIES 2
    Highlighted
    Community Moderator

    Re: BMI160: orient_int flag is not being set though interrupt was detected on GPIO

    Hi,

    Thanks for your inquiry.

    We will check this and then get back to you soon.

    Thanks.

    Highlighted
    Community Moderator

    Re: BMI160: orient_int flag is not being set though interrupt was detected on GPIO

    Hi,

    On page 66 of BMI160 datasheet, it says that new data, orientation and flat interrupt cannot be latched. This means that the orientation interrupt always has a pulse with about 100us duration. If you read interrupt status register, then the orientation interrupt status bit will always be 0 because it clears itself so quickly. That is the reason why you can see the interrupt signal on INT1 pin, but you don't see the interrupt status bit to be "1".

    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