BetterJoy icon indicating copy to clipboard operation
BetterJoy copied to clipboard

[BUG] Massive input delay when 2 Joy-con are connected

Open Chiptuner opened this issue 3 years ago • 7 comments

I've noticed that when using Betterjoy and I have 2 Joycon connected at the same time, the Joycon connected in the first slot experiences about a 0.5-1 second delay compared to the Joycon connected in slot 2. This isn't a Joycon hardware issue as I can swap which controller goes in the first slot, whichever is in the first slot is the one that ends up experiencing the lag. Is this a known issue and if so, how can I fix this?

Chiptuner avatar Aug 14 '21 22:08 Chiptuner

This issue is most apparent in games like Wii Music where motion input is precise. When playing instruments like a drum, one Joycon will have no delay between swing and hit, but the joycon connected in the first slot will experience a delay significant enough that playing drums correctly is impossible.

Chiptuner avatar Aug 14 '21 22:08 Chiptuner

Note: This affects DSUClient, D-Input and X-Input. I am using HIDGuardian although I don't think that's the one causing the issue.

Chiptuner avatar Aug 14 '21 22:08 Chiptuner

You need to have your Bluetooth adapter on an extender positioned as close as possible to the controllers without any objects breaking their line of sight. Joycons are easily susceptible to latency or dropped input on the Microsoft Bluetooth stack which Betterjoy uses, compared to the Dualshock 4.

Even if you're sure you positioned your adapter properly and still experience this latency, this may be a limitation of the Bluetooth stack. A developer may have a more in-depth explanation if this is the case.

DamianS-eng avatar Aug 15 '21 18:08 DamianS-eng

You need to have your Bluetooth adapter on an extender positioned as close as possible to the controllers without any objects breaking their line of sight. Joycons are easily susceptible to latency or dropped input on the Microsoft Bluetooth stack which Betterjoy uses, compared to the Dualshock 4.

Even if you're sure you positioned your adapter properly and still experience this latency, this may be a limitation of the Bluetooth stack. A developer may have a more in-depth explanation if this is the case.

But how come one Joycon will have absolutely no delay, and the other does? I can’t think of it being an interference issue if I can change which Joycon has the delay just by changing which one I connect first.

Chiptuner avatar Aug 15 '21 18:08 Chiptuner

I also want to note, both Joycon receive rumble data at the same time. Meaning while one Joycon experiences input delay, there is no delay upon receiving rumble data.

Chiptuner avatar Aug 15 '21 19:08 Chiptuner

Ok so new discovery, if I use the Joycon with Betterjoy turned off, there's no input lag on either Joycon. I think it's as you said, Betterjoy must use some different Bluetooth stack that is causing weird input delay for one Joycon at a time

Chiptuner avatar Aug 15 '21 19:08 Chiptuner

Ok so new discovery, if I use the Joycon with Betterjoy turned off, there's no input lag on either Joycon. I think it's as you said, Betterjoy must use some different Bluetooth stack that is causing weird input delay for one Joycon at a time

How do you turn off Betterjoy while still using the Joycons connected?

fantasygone avatar Apr 21 '22 12:04 fantasygone