AnsweredAssumed Answered

IIS328DQ Interrupt

Question asked by Qiao.Wenwei on Apr 26, 2017
Latest reply on May 5, 2017 by Qiao.Wenwei

Hi, I am using IIS328DQ in a new design. I want to set up an interrupt when the orientation is tilted away from Z-axis. So I set up INT1 as XHIE, XLIE, YHIE and YLIE. ZHIE and ZLIE are disabled.


Here is the setup sequence according an AppNote:

1. write CTRL_REG1
2. write CTRL_REG2
3. write CTRL_REG3
4. write CTRL_REG4
5. write Reference
6. write INT1_THS
7. write INT1_DUR
8. write INT2_THS
9. write INT2_DUR
10. read HP_FILTER_RESET (if filter is enabled)
11. write INT1_CFG
12. write INT2_CFG
13. write CTRL_REG5


here is the reading of the sensor and all the registers:

AX -0.039
AY -0.063
AZ 0.965
WHO_AM_I : 0x32
CTRL_REG1 : 0x27
CTRL_REG2 : 0x08
CTRL_REG3 : 0xC0
CTRL_REG4 : 0x30
CTRL_REG5 : 0x00
HP_FLT_RST: 0x00
OUT_X_L : 0x60
OUT_X_H : 0xFF
OUT_Y_L : 0x00
OUT_Y_H : 0xFF
OUT_Z_L : 0x70
OUT_Z_H : 0x0F
INT1_CFG : 0x0F
INT1_SRC : 0x6A
INT1_THS : 0x01
INT1_DUR : 0x32
INT2_CFG : 0x7F
INT2_SRC : 0x00
INT2_THS : 0x0F
INT2_DUR : 0x01


The problem is that, even though INT1_CFG=0x0F (ZHIE=0, ZLIE=0, YHIE=1, YLIE=1, XHIE=1, XLIE=1), the INT1_SRC shows 0x6A where ZH=1.


How can I solve this problem?


Thanks for help in advance.