Interrupt Issues on Qwiic GPIO

Hi,

For a test setup I am trying to use the Qwiic RFID Reader to trigger an interrupt on a RPi, so that the tag data can be read and compared to an allow list.

When I connect the INT pin to the RPi directly it all works fine, I have even managed to get it working using threaded callbacks. I see the voltage drop on the INT pin from the RFID reader and the program responds correctly. So everything “software” seems to be ok.

However I have 2 RFID Readers and 2 sound sensors that all have interrupts, so my idea was to use the GPIO module to connect all the INT pins and then use the GPIO modules INT to connect to the RPi. This would then trigger the RPi to check which device issued the interrupt and execute the relevant code.

I’m not sure if my understanding of the workings of the GPIO is wrong, but from what I’ve read when one of the pin states (set to input) changes compared to the registry, this triggers the INT pin to go Low. When I read out the input states using myGPIO.getGPIO() (straight from the SparkFun Python examples) I see the change from 0 to 1, however the INT never triggers.

Am I missing something? I have even tried simply connecting a digital signal to the GPIO and turning it on and off (thus excluding the INT on the devices being an issue) but still nothing. Also tried inverting the pins (myGPIO.INVERT) but also nothing.

Any suggestions would be appreciated, I am sure it’s something obvious that I’m overlooking.

Cheers,

Darren

This is a shot-in-the-dark, but: After it changes from 0 to 1, try invoking the INT (call register again?) ?

I have what maybe a similar question? I want to invoke an interrupt if the device address for my I2C keypad is read by the ESP32. Is this possible? Otherwise I was going to bring the SCLK line to a GPIO input and trip the interrupt but would like to do it all in software if possible.