Determining Limelight latency

So the current version of NT (NT3) has both an automatic “background” flush to network and a manual flush function call. Both are rate-limited to 10 ms (e.g. trying to flush more frequently than this is ignored). The approach to getting low latency is fairly straightforward: set the automatic flush to be fairly high (e.g. 100 ms or more), and call the manual flush immediately after setting your data values. This gets the latency down to sub-ms range as long as you aren’t trying to manually flush more frequently than every 10 ms.

See this thread for more details: Network Table Speed

I’ve not yet finalized all the aspects of how this will work for NT4. There’s currently not a global flush mechanism (instead, there’s per-value settings), but that creates a challenge when a user might want to get low latency across multiple values. There does need to be some constraint to prevent teams from unnecessarily consuming airtime on wifi connections.

4 Likes