LSM6 Wakeup on Gyro-Z Threshold
In the past, I have used an LSM330 to wakeup on a gyro z-axis threshold and activate the INT1 pin as shown below:
Gyro_WrByte(GYRO_CTRL_REG1, 0x3f); // 95Hz DataRate : 25Hz Cutoff : Normal Mode : Enable All Axes
Gyro_WrByte(GYRO_CTRL_REG2, 0x07); // HPF Normal Mode : 0.045Hz HPF Cutoff Freq : HPF Normal Mode
Gyro_WrByte(GYRO_CTRL_REG3, 0x80); // INT on INT1_Gyro Pin
Gyro_WrByte(GYRO_CTRL_REG4, 0x00); // Continuous Update : Little Endian Data : 250 dps FS : 4-Wire SPI Intfc
Gyro_WrByte(GYRO_CTRL_REG5, 0x04); // Normal Mode Reboot Mem Content : FIFO Disable : HPF Disabled : INT1 Select = 01b : OUT Select = 0 : Use HPF for INT1 to account for any incr gyro bias drift due to incr temperature
Gyro_WrByte(GYRO_INT1_CFG, 0x20); // OR Combination : Z-High Event
Gyro_WrByte(GYRO_INT1_TSH_ZL, 0x3b); //
Gyro_WrByte(GYRO_INT1_TSH_ZH, 0x02); // Z-Threshold = 571(0x023b) * 8.75mdps = 5Deg/s
Gyro_WrByte(GYRO_INT1_DURATION, 0x8a); // WAIT Enable : INT Duration = 10(0x0a) * 1/95Hz = 100msec
Since LSM330 has been discontinued, can an LSM6 device be used to perform this same functionality? If so, which device variant is sufficient?
Thank you.
