Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    BMI323 no interrupt when FIFO and TAP occurs at the same time

    BMI323 no interrupt when FIFO and TAP occurs at the same time

    Sunil_googly
    New Poster

    Hi

    I am using BMI323 for getting accelerometer FIFO and tap events.
    I configured BMI323 interrupts as edge-triggered and enabled
    FIFO watermark and Tap interrupts.

    I observed that when both interrupts coincide, the host
    is not getting the interrupts, but in the INT1 or INT2 status register,
    the corresponding event bit is high. If I manually read the status
    register then interrupts start working.

    When tested individually the tap or FIFO watermark interrupt works
    properly.


    How do I get both FIFO and tap interrupts at the same time?

    I2C

    00: 1143
    01: 0000
    02: 00e0
    03: fe56
    04: 00dd
    05: 0fb8
    06: ffff
    07: fff5
    08: 0000
    09: 1539
    0a: 5331
    0b: 0023
    0c: 0000
    0d: 4100
    0e: 0000
    0f: 0000
    10: 3000
    11: 0001
    12: 012c
    13: 0000
    14: 0002
    15: 03f6
    16: fe3a
    17: 0000
    18: 0000
    19: 0000
    1a: 0000
    1b: 0000
    1c: 0000
    1d: 0000
    1e: 0000
    1f: 0000
    20: 402a
    21: 404a
    22: 0000
    23: 0000
    24: 0000
    25: 0000
    26: 0000
    27: 0000
    28: 3206
    29: 1206
    2a: 0000
    2b: 0000
    2c: 0000
    2d: 0000
    2e: 0000
    2f: 0000
    30: 0000
    31: 0000
    32: 0000
    33: 0000
    34: 0000
    35: 00b4
    36: 0600
    37: 0000
    38: 0006
    39: 0001
    3a: 0000
    3b: 1001
    3c: 0000
    3d: 0000
    3e: 0000
    3f: 0000
    40: 0001
    41: 001e
    42: 0000
    43: 0002
    44: 0000
    45: 0001
    46: 0000
    47: 0008
    48: d6a1
    49: 0012

     

    spi
    00: 1143
    01: 0000
    02: 00e0
    03: 0084
    04: 0097
    05: 1013
    06: fffd
    07: fffe
    08: 0001
    09: 14f1
    0a: de0f
    0b: 001d
    0c: 0000
    0d: 0000
    0e: 4100
    0f: 0000
    10: 3000
    11: 0001
    12: 012c
    13: 0000
    14: 0002
    15: 03f6
    16: 005f
    17: 0000
    18: 0000
    19: 0000
    1a: 0000
    1b: 0000
    1c: 0000
    1d: 0000
    1e: 0000
    1f: 0000
    20: 402a
    21: 404a
    22: 0000
    23: 0000
    24: 0000
    25: 0000
    26: 0000
    27: 0000
    28: 3206
    29: 1206
    2a: 0000
    2b: 0000
    2c: 0000
    2d: 0000
    2e: 0000
    2f: 0000
    30: 0000
    31: 0000
    32: 0000
    33: 0000
    34: 0000
    35: 0078
    36: 0600
    37: 0000
    38: 0500
    39: 0000
    3a: 0000
    3b: 2002
    3c: 0000
    3d: 0000
    3e: 0000
    3f: 0000
    40: 0001
    41: 001e
    42: 0000
    43: 0002
    44: 0000
    45: 0001
    46: 0000
    47: 0008
    48: d6a1
    49: 0012

     

     

    Thanks

    7 REPLIES 7

    Hi Sunil_googly,

    You can use a logic analyzer to capture the I2C/SPI waveform and check if all FIFO data have been read out after FIFO watermark interrupt occurs, and whether the speed of reading FIFO data is too slow.

    Hi BSTRobin,

    I verified by setting ODR at 400hz and the FIFO watermark at different levels, such as 900, 600, 100 words, etc., and I am reading complete FIFO contents until the watermark level. There is no problem in testing only the FIFO watermark.

    The problem occurs when I enable the Tap and the FIFO watermark interrupts. The interrupt stops only when FIFO is running and if Tap interrupt occurs
    This issue can also be observed with any-motion and FIFO watermark interrupts. The interrupt stops when FIFO is running and if any-motion interrupt occurs.

    Please can you share any code reference where the FIFO watermark and tap or motion interrupts are enabled at 400 hz ODR?

     

    Thanks

    Hi Sunil_googly,

    The previously uploaded attachment code, FIFO watermark and TAP work well. You can change the ODR to 400 Hz and ensure that FIFO data is read in a timely manner.

    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