IR expire time: 100 or 200ms?


#1

For the isValueReceivedOnFaceExpired method:

Is the IR expire time 100ms or 200 ms? The updateIRFaces core code indicates a 100ms timeout (i.e. expireTime[f] = now+expireDurration_ms) set at the time a new value is read on that face. And this method is checking if expireTime[f] < now.
​​
​​Is there another 100ms that I’m missing in the core code that would make it 200ms?
​​
​​The answer would impact internal timer values we set/use.


#2

Looks like the latest version of the API uses an expiration of 100ms. This has changed over the course of the API and fine tuning the hardware to work accordingly. My assumption is that this duration will change as we finalize commercial hardware, but the goal is for the face to expire in a relatively short time so that it can be treated as an immediate sign of a neighbor disconnecting. @bigjosh might be able to share some detail on the current duration, also I’m happy to help with any timing issues you might have with a test sketch or game, using the serial connection to tweak values can be a handy way of fine tuning such variables.