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
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.
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.
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.