[edit: clarifying the question] Is it possible to see events on I2C slaves, or a functional equivalent?
I'm brainstorming a new project. I'm using an ESP-12F as a main logic board to control and receive input from various connected modules (e.g. pushbutton, beam sensor, solenoid valve, shutter trigger) Each module (slave) is PIC based, and communicates with the ESP-12 (master) using I2C. Sending commands for valves and triggers over I2C is straightforward. I'm not sure how to utilize I2C for slave-triggered momentary events though.
Should I just keep sending status requests to those modules and look for changes that way? I'm also considering using XOR logic to flip the level of another line, which I can detect via interrupt to trigger the status request.
My device is timing sensitive, I'd like to get a response to a trigger down to maybe 50-100 microseconds.
I'm new to all of this so feel free to correct me on anything fundamental I'm missing.