The gaming world experienced a bit of a resurgence in 2020 that is still seen in the present day. Even putting aside the effects from the pandemic, the affordability and accessibility has arguably never been better. Building a gaming PC can have its downsides, though, and a challenging issue to troubleshoot is input lag or input latency. This is something that’s best measured with standalone hardware, and if this is an issue on your setup you may want to take a look at this latency meter.
Unlike other measurement devices that use the time between a mouse button input and the monitor’s display of a bullet or shooting event, this one looks at mouse movement and the change in the scene instead. This makes it much more versatile than other methods since it’s independent of specific actions, and can be used in any game without any specific events needed to perform the measurement. A camera phototransistor is placed on the monitor’s top edge and the Arduino-based device sends mouse commands to the computer while measuring the time between those commands and the shift in the image on the monitor.
The project is open source, so with the right hardware it’s possible to build one to troubleshoot latency issues or just to learn more about a particular hardware configuration’s behavior. Arduinos and other microcontrollers have been doing all kinds of things by pretending to be human interface devices like this for a while now. One of our favorites of late was this effects pedal that replicates musical effects on mice and keyboards.
I think maybe “camera” might be a bit of a liberal interpretation.
Yeah, camera would also introduce some additional latency.
Ah yes, the “What you’ll need” section calls it a photoresistor, but the provided Amazon link calls it a phototransistor.
Thanks! Sorry about the typo – fixed!
I mean, isn’t it technically a 1 pixel camera?
But I agree – came here looking to see if I was crazy or if someone else noticed the two-wire device being called a camera.
Yeah, that’s no camera!
Fixed, and thanks.
Cool idea! It’d tell you the information you can do anything about, at least. There’s nothing you can do when you’re doing something over the internet and when you click the server decides to put a stop on its mail, turn off its phone, and go get drunk on a beach vacation rather than register your input.
You can also use this to measure latency for cloud-hosted games.
Oh yeah, or things that are streaming from a local device. Might also sync up audio with video with something like this, if nothing better presents itself.
Comment glitch!
A Kodi plugin and this would be awesome for a/v sync.
I may look into this.
So what is the end result?
About four times lower than any human being can perceive, don’t even argue about responding to it which is about a factor twenty higher.
These numbers are completely moot.
What’s that overlay at the top-left of the screen? I don’t see any code for it in the github repo
It’s the Anti Lag+ overlay – activated by Alf-Shift-L (a few times) and Alt-Shift-F for FPS counter. It has nothing to do with the Arduino Latency Meter – it is there so you can see if it is accurate using the HW latency meter.
Ah, so the overlay excludes the display latency whereas the HW meter is end-to-end. Thanks!