Replies: 2 comments 1 reply
-
Haven't done a lot of latency testing yet except for some perceptual latency tests as I'm building a split controller right now using two ESP32 boards (a satellite controller and a hub controller) and have been testing what the latency is from the satellite controller through the hub controller and then to the computer. I think that there is a very small amount of perceptual latency from the satellite controller since there are two jumps to the PC but I haven't tested the latency of a single controller. I can look into doing some sort of roundtrip latency tests using a light sensor. I've been using a polling loop with a delay of about 8ms (little shorter than 120Hz update rate). Device reports are usually quite small, several bytes in size usually. The keyboard sends about 3 bytes per report and an emulated XBox controller sends around 16 bytes per report (not including any NimBLE bluetooth overheads). Regarding latency, the default values I have set in BleConnectionStatus.cpp at the moment are 6 * 1.25ms minimum, connection interval 7ms * 1.25ms maximum connection interval, 0 latency (number of allowed skipped packets), 600 * 10ms timeout. I could make that configurable if you would like to configure your own connection parameters. |
Beta Was this translation helpful? Give feedback.
-
Come across the link before - https://gp2040-ce.info/#performance |
Beta Was this translation helpful? Give feedback.
-
Thanks @Mystfit , been poking at your repo and see a few pretty interesting things.
I have a few questions around latency with bigger BLE packets (don't shoot me for the wrong terms). Have you done any testing on this front? Or are there tweaks or things to help improve latency?
Beta Was this translation helpful? Give feedback.
All reactions