Bosch Sensortec Community

    Showing results for 
    Search instead for 
    Did you mean: 

    BNO055 Any/No motion Interrupt

    BNO055 Any/No motion Interrupt



    I am wishing to utilize both any motion and no motion interrupts for power management purposes.

    Unfortunately, I couldn't manage to handle generated interrupts by the BNO055 properly.

    to achieve that first I set the sensor into config mode, and set INT_EN and INT_MASK to 0xC0 and also ACC_INT_SETTINGS to 1C. Then set the sensor into NDOF mode.

    Successfully managed to catch the first interrupt but the Interrupt pin stays high however, I also read INTR_STAT register!

    Is there anything that I forgot to execute?

    kind regards, Reza



    5 REPLIES 5

    Occasional Contributor

    Hi Sir:

        I check both any motion and no motion features and interrupts,the Interrupt pin stays low after read INTR_STAT register or when no interrupt.

        Recommend you to disconnect BNO055 interrupt pin to host and directly measure the sensor interrupt pin level when interrupt trigger,  so you can judge whether this sensor generates interrupt signal or not.

       Hopefully, it can help you.


    Community Moderator
    Community Moderator

    Hello rezza,
    In addition to these parameters you have configured, you need to refer "Figure 2: Principle of any-motion detection", "Table 3-41: Any-motion interrupt parameters and Axis selection", "Table 3-39  No-motion of time-out periods", "Table 3-40 Timing of  No-motion interrupt". Configure and test it again.

    Hi Jet,

    Thank you for your reply.

    Yes, I monitored the INT pin voltage level and continuously read the INTR_STAT register.
    The INT pin stays high even though the value of INTR_STAT is 0x00.

    I noticed that the INT pin is initially low, but it switches to high once I set it to NDOF.
    So, that's why I only catch the first interrupt on rising edge.


    Hello BSTRobin

    Thank you for your reply.

    Yes, that's true. for ACC_AM_THRES and ACC_NM_SET registers, I stick to the default values which are 0x14 and 0x0B respectively.

    Anyway, I receive the interrupts but the INT pin stays high even though INTR_STAT value is 0x00.