Procedure

The previous blog post goes into the methodology with more detail, but we are using a photodiode, a Texas Instruments OPT101P, to measure video latency. The measurement starts from a random point in time by toggling a LED via an Arduino and checking how long the photodiode takes to detect a change in light (code here). This has several advantages over the standard stopwatch method, as already explained.

Data

The raw results can be downloaded from here. The following is a graph visualising them that we invite you to take as a comparison point next time you are thinking about latency.

Comments

The display device matters. A lot. If you flown with an analog system and Headplay glasses you already experienced more latency than many digital FPV configurations.

Analog systems are still the only ones that can claim close to zero latency. Digital systems are, at best, two times slower.

Increasing GoPro framerate over 50 fps hoping to decrease analog output latency does not help. In fact, latency increased by a few milliseconds in our tests when going from 50 to 100 fps.

The analog video output of a GoPro at 50 or 100 fps is also slower than many digital FPV solutions.

HDMI display devices are not immune from display latency. The Headplay glasses introduced an average of 24 milliseconds latency when feed with a 720p stream and only 16 ms when feed with a 1280×800 stream. The additional 6 milliseconds are explained by the time the Headplay takes to resize the image from 720p to 1280×800, something that does not need to happen if the native resolution is correctly provided (well done, Wifibroadcast!).

A word of advice if you decide to replicate the test. Do it with battery powered devices only. Displays, oscilloscopes, etc., were all creating too much noise in the photodiode voltage sensor, making measurements tricky. If you need some help replicating those numbers don’t hesitate to send an email.

Quadcopter racing is insanely fast. 50ms of latency is more than pilots can afford. I think Prosight HQ is fine for an Airplane, Flying Wing or a slow drone, but for a quadcopter racing it simply doesn’t work. Even the HP setting isn’t good enough for some pilots… But i think this is a matter of getting used to it. People that already fly analog will surely feel the difference of latency, but they will get used to it.

I think that if FPV Racing pilots could have an 480p digital link with 25~30ms of latency, it’s already better than an analog link. Higher resolution is awesome, but they do not really need higher resolution… they just need the image clear and sharp all the times. To achieve that the solution must be end-to-end… Camera, Transmitter, Receiver and Display… All need to be made to interact with each other with minimal latency. The camera sensor must output video in the native display resolution, the transmitter must encode the video using fast codecs. Maybe uncompressed video is the key, but it’ll need lots of bandwidth. Maybe output only in black and white can allow uncompressed video broadcast.

Well, Connex ProSight HP worked flawlessly here in Paris last week-end on the Champs-Elysées with 4 pilots at the same time. Event though the place is radiosupercharged 😉 No latency problems, and the pilots were pretty fast, there were BanniUK and JusticeFPV… Now I can’t wait to try FPV Blue 🙂

Excellent work! At or below 50ms, I doubt latency is a problem any more; for most applications. As Daniel pointed out, quadcopter racing might need lower latency, but that can be compensated by reducing quality (and use MIPI/CSI ?). But that’s just a niche application for digital fpv. For most cases, I believe the major issue is cost, then quality, range, and RF bandwidth, in that order. If fpv.blue manages to provide 1080p (or even 720p) and sell for ~200$, it will be a huge success. Really looking forward to future updates. Keep up the good work !!