cakama3a / Gamepadla

Gamepads latency and polling rate tester (XinputTest analog)
https://gamepadla.com
61 stars 1 forks source link

Extremely Weird Issue - Opening Gamepadla Instantly Drops Controller Latency #6

Open OGTK423 opened 4 months ago

OGTK423 commented 4 months ago

Hi there. Hoping you can help me navigate what is an extremely bizarre issue I'm experiencing with a DS4 connected to a PC via DS4Windows.

If I connect my DS4 via DS4Windows and open XInputTest to run a latency test, I get results like this.

Outliers: 13 / 4000 Top 10 Outliers: 52.47 ms, 39.95 ms, 40.07 ms, 41.06 ms, 41.36 ms, 38.51 ms, 41.37 ms, 41.41 ms, 63.27 ms, 37.94 ms

Min 0.662800 ms - Max 63.272000 ms - Jitter 10.192302 ms Average 7.462623 ms - Polling Rate 134.001134 Hz

If I simply open Gamepadla, DS4Windows shows my controller latency instantly drop to 1.0-1.5 MS. If I run a Gamepadla test, I then get results like this.

Polling Rate Max.: 1000 Hz Polling Rate Avg.: 696.63 Hz Stability: 69.66%

=== Synthetic tests === Minimal latency: 1.0 ms Average latency: 1.44 ms Maximum latency: 23.53 ms Jitter: 1.46 ms

Running subsequent tests with XInputTest then returns similar, extremely low latency results.

But if I connect my DS4 directly to my PC, without DS4Windows, I get Gamepadla results like this.

Polling Rate Max.: 125 Hz Polling Rate Avg.: 133.01 Hz Stability: 106.41%

=== Synthetic tests === Minimal latency: 1.0 ms Average latency: 7.52 ms Maximum latency: 51.57 ms Jitter: 10.55 ms

What on earth is going on here, what results are actually accurate? Is DS4Windows somehow throwing the results off, and the higher latency tests are actually what is accurate?

cakama3a commented 4 months ago

Compare results with https://github.com/chrizonix/XInputTest/releases/tag/v1.2.0.0

OGTK423 commented 4 months ago

Hey there. Thanks for the response. Not sure what you mean.

XInput is what I used and it shows relatively poor results. Opening Gamepadla instantly drops my latency and gives positives results. These results than carry over to XInput.

Basically, the act of opening Gamepadla is apparently dropping the latency of the controller and these results than carry over to XInput.

You can see this in DS4Windows as well.

This is my latency before opening Gamepadla. image

This is my latency immediately after opening Gamepadla. image

cakama3a commented 4 months ago

I'm interested in your comparison of gamepadla and XinputTest's polling rates, and how different they will be for you.

OGTK423 commented 4 months ago

XInput Test - DS4 via DS4Windows Outliers: 747 / 4000 Top 10 Outliers: 72.32 ms, 52.40 ms, 50.94 ms, 50.40 ms, 50.00 ms, 49.95 ms, 49.95 ms, 49.94 ms, 49.94 ms, 49.93 ms

Min 0.810100 ms - Max 72.321700 ms - Jitter 10.605856 ms Average 7.557852 ms - Polling Rate 132.312726 Hz

Gamepadla - DS4 via DS4Windows Polling Rate Max.: 1000 Hz Polling Rate Avg.: 700.51 Hz Stability: 70.05%

=== Synthetic tests === Minimal latency: 1.0 ms Average latency: 1.43 ms Maximum latency: 23.01 ms Jitter: 1.57 ms

XInput Test - Again after using Gamepadla Outliers: 72 / 4000 Top 10 Outliers: 25.40 ms, 13.93 ms, 13.94 ms, 13.96 ms, 14.52 ms, 14.57 ms, 14.94 ms, 14.94 ms, 14.94 ms, 14.94 ms

Min 0.721700 ms - Max 29.949600 ms - Jitter 0.367112 ms Average 1.493562 ms - Polling Rate 669.540177 Hz

Gamepadla - DS4 direct to Windows via BT, No DS4Windows Polling Rate Max.: 125 Hz Polling Rate Avg.: 131.35 Hz Stability: 105.08%

=== Synthetic tests === Minimal latency: 1.0 ms Average latency: 7.61 ms Maximum latency: 51.99 ms Jitter: 10.6 ms

cakama3a commented 4 months ago

It's really hard to answer without additional tests on my part, because I don't test gamepads with additional software like DS4 Windows. But from the tests I have, the results of the polling rate also exceeded 125 hertz, so this is normal. As for the delays, all the measurements made by software do not correspond to reality, and I can say that without DS4Windows the DS4 delay over Bluetooth is 6ms (https://gamepadla.com/sony-dualshock-4.html#latency.3), which is more than enough to avoid using additional programs.

However, my latest measurements have led me to the conclusion that the latest Windows update has negatively affected the DS4 gamepad's latency over cable. It has increased significantly compared to previous tests (https://gamepadla.com/sony-dualshock-4.html#latency.1.2)

The links to the delays I provide were not made programmatically but with the help of the device's GPDL, so they can be trusted. Unfortunately, I don't have time to try to repeat your experience with DS4 Windows and make a measurement while Gamepadla is running. Also, it's still a mystery to me why Gamepadla's performance increases when running, maybe it's due to a feature of DS4 Windows.