Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nintendo Switch Pro Controller USB inputs are erratic w/ Steam #47874

Open
ace24713 opened this issue Apr 14, 2021 · 2 comments
Open

Nintendo Switch Pro Controller USB inputs are erratic w/ Steam #47874

ace24713 opened this issue Apr 14, 2021 · 2 comments

Comments

@ace24713
Copy link

Godot version:
3.3 rc8

OS/device including version:
Windows 10

Issue description:
Under specific configurations, godot interprets the controller as sending many random inputs.

I'm not pressing anything at all:
pro_controller

From my basic googling of the issue, it seems that there's a problem with Steam's "Switch Pro Configuration Support" where the DirectInput freaks out when Steam enables gyro on a Pro Controller over USB. I don't have a great source for this, but this discussion has a post from a Valve employee that describes what I just said.

While this itself isn't Godot's fault, it seems the problem does not effect apps that use XInput to read controller inputs. I'm a bit out of the loop, but I did think Godot supports XInput, so I'm wondering why this is messing up?

For the record, from the discussion I linked above adding the project exe as a non-steam game is a workaround. Seems like steam forces the game to use XInput in some way, as the controller is no longer reported as a "Nintendo Switch Pro Controller" but instead as an "XInput Gamepad"

Additionally I've heard about similar problems with DS4 controllers and Steam's "PlayStation Configuration Support" option, but I don't own one of those so I can't try it.

Steps to reproduce:
Steam must be running, with "Switch Pro Configuration Support" enabled in the Controller Settings menu.
A Nintendo Switch Controller must be plugged in via USB. You should be able to move the mouse with the right thumbstick if it detected it. The problem is NOT reproducible when using Bluetooth.

Launch any godot game with joypad inputs the joypads demo project works well

(To my knowledge it is irrelevant if the controller is plugged in before or after steam is started. And steam must be closed AND the controller unplugged to reset it)

Minimal reproduction project:
I've been using the joypads demo project to test

@Samdal
Copy link

Samdal commented Apr 14, 2021

As @Zireael07 mentioned in my issue #47892, these issues seem related.
If that is the case your suspicion with the DS4 controller is correct.
However i did not have steam running in the background (but i have used "PlayStation Configuration Support" on my computer in the past), and the problem persisted with Bluetooth on the DS4.
And since XInput is windows proprietary software, and i am on Linux, that is not causing the issue in my case.

@Evangeder
Copy link

From what i am seeing:
procontroller
Buttons 1 to 8 flicker on and off in a binary pattern. It looks like it's looping from 0 to 255 constantly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants