I am experiencing problems with the interrupt signal from the TCA6408 I2C IO expander, which seems to be an IC issue. A similar although not identical problem is experienced with the PCA9536 I2C IO expander. Here are my obervations:
TCA6408:
1. After reset of the IC when I flip an IO, I will get an interrupt signal whenever the signal is different from the port value it had during reset (or after last read). This is as expected!
2. However after having had any kind of communication on the I2C bus to which the TCA6408 is connected, the interrupt line is no more active, and no interrupts can be triggered anymore no matter what you do.
The observation is that after any activity on the I2C bus, the Interrupt line is no longer effected by any change on the IO's. This happens even if the activity on the I2C bus is not addressing any present device on the bus (i.e. no ACK on the bus).
PCA9534:
1. After reset of the IC when I flip an IO, I will get an interrupt signal whenever the signal is different from the port value it had during reset (or after last read). This is as expected!
2. However after having received an I2C ACK from any device on the I2C bus the interrupt line is de-asserted.
The observation is that the device does not only de-assert the IRQ line when the PCA9534 it self sends and ACK on the l2C bus, but also when other devices send an ACK on the I2C bus.
Both issues seems as a design/implementation issue of the IC. Is this a known problem of these devices?
Best regards,
Thomas Søhus