Cheap method for measuring monitor input lag and response time

I noticed that the latest release of PTB has a new function to measure flip timing with a photodiode (FlipTimingWithRTBoxPhotoDiodeTest), but only with rather expensive hardware. In my ample free time I’ve been working on a more affordable standalone tool for measuring monitor input lag (time between flip and initial monitor response) and response time (when the monitor finishes transitioning to the final brightness level). It’s meant for gamers but as a retired vision scientist I can vouch for it producing research grade measurements.

Note that it only measures the monitor side of things, so it’s not as comprehensive as doing everything inside PTB; it won’t for instance detect driver issues that cause the flip timestamp to be wrong. But with Mario’s hard work hopefully that’s a very rare edge case.

What I’m offering is an addon to the raspberry pi, which is a pretty nifty linux computer with great hardware hacking support that costs as little as $5. You just get one, plug it in for this one purpose and then remove it from your monitor once you are done.

My lag tester comes in two versions. The fancy version uses a photodiode you plug into your raspberry pi which measures the brightness of your screen at 3300hz, giving a precise measure of input lag and response time. The fully assembled sensor costs $40:

I also built a free, software only solution, that lights up a LED on the pi at the same time it sends a frame of video to the screen; to use it you also need a high speed camera, like what Samsung and Apple have shipped with their smartphones for at least the last 5 years.

While both methods require running linux on a raspberry pi, I offer downloads of a complete system image so that even a gamer could use it with zero configuration required. The level of technical expertise required is trivial for anybody who can write matlab code.

I was briefly tempted to extend it to be a cheap monitor linearization tool as well, but the photodiode has nothing like a human lambda max, the sensor is only 12bit, and there’s no guarantee that it’s perfectly linear. So I don’t think I’ll be going that route. But I’ve tested it extensively for measuring lag and RT and it works great for that (including on CRTs where ground truth is definitely known). I’ve also found some surprises, such as which input you use on a monitor changing the RT and input lag, and that new fancy displays can sometimes be much worse in terms of lag than older LCDs (this is mostly true of TVs that do a lot of signal processing, and probably not so much for computer monitors).

Definitely a niche project, but if you are doing response time experiments or brief exposure experiments I think it would be worth knowing what you are actually showing on your display rather than just what PTB is sending out over your HDMI cable.

  • Alan Robinson (formally of UCSD CogSci/Psych).
1 Like