I'm creating an interactive exhibit that uses two 1012 interface boards to read the state of about 30 input wires. I'm having an issue when I have both boards plugged in - if I have all the inputs open, when I trigger most channels on board 2, it's actually the input on board 1 that fires the state change event. This doesn't happen for all channels on board 2, 0-3 are fine, but all of the others exhibit this problem. If I only have one board or the other plugged in, then it behaves properly.
For example, if I try and log out the input ID when the state change event fires, for all inputs on board 1, I get input IDs 1-16. For channels 0-3 on board 2, I get 17-20, but then for channels 4-16, I go back to getting IDs 4-16 again.
To take this further, if I only open a single input, when it's one of the problematic ones on board 2 (channels 4-16) then when I trigger it no state change event is fired at all. I logged out the full input object and compared it to one of an input that was working correctly, and found that it was missing a 'data' object (screenshot attached of a diff between the input objects) - I'm not sure where or how this is set initially, but I have a hunch that whatever is causing it to not be set is what's causing my issues.
Has anyone encountered anything similar to this, or know of anything else to try that might isolate the problem more?