Open Sanaki opened 3 years ago
Just redid my steam install from scratch, then manually moved my steamapps and userdata over to the new install (sans non-shader cache directories). While that fixed the blacklist, it did not fix the double inputs.
Your system information
Steam client version (build number or date): 16 Jan 2022 at 17:34:49
Distribution (e.g. Ubuntu): Manjaro, linux kernel 5.16.2
Opted into Steam client beta?: No
Have you checked for system updates?: Yes
Have the same exact problem, with my Xbox One S Wireless (Bluetooth) Controller. Details can be found in the closed/linked ticket above. Games that are/became unplayable for me because of this so far are Jack Axe and TowerFall Ascension. Tried also the blacklisting thing mentioned above, but exactly as for OP, the "blacklisting" makes the phantom controllers only hidden in the Steam menus and settings and doesn't actually disable/blacklist them from the actual games.
I have the same issue tested with both an aftermarket Xbox 360 controller and an Xbox One controller. I suspect that this is because Steam detects multiple interfaces for the same controller. I am using Xpad. Starting steam with CONFIG_INPUT_JOYDEV set in the kernel seems to produce:
Local Device Found
type: 045e 028e
path: sdl://0
serial_number: - 0
Manufacturer:
Product: X360 Controller
Release: 114
Interface: -1
!! Steam controller device opened for index 0.
Steam Controller reserving XInput slot 0
Local Device Found
type: 045e 028e
path: sdl://1
serial_number: - 1
Manufacturer:
Product: Xbox 360 Controller
Release: 114
Interface: -1
Disabling the option seems to produce only:
Local Device Found
type: 045e 028e
path: sdl://0
serial_number: - 0
Manufacturer:
Product: X360 Controller
Release: 114
Interface: -1
I haven't tested this enough to be certain but I'm guessing that a user workaround would be to blacklist the joydev module. Another workaround that seems to work is to unplug the controller, start steam and then plug in the controller afterwards.
Another workaround that seems to work is to unplug the controller, start steam and then plug in the controller afterwards.
Does not work with bluetooth controller. Does not matter if I turn the controller on before or after starting Steam.
Also technically we are not talking about "double controller inputs" but "parallel controller inputs from 2 'different' controllers, that actually are 1 controller and it's shadow copy created by steam" -- so for games it seems like 2 different controllers that are handled exactly the same way (shadow controller button mappings may differ a bit). In some games you can unbind the second controller (for example in Spelunky, you can switch second player controller to Keyboard), but several simpler arcade type of games every connected controller is a thing you can't turn off.
This may be some sort of library/.so issue. On my system, using the (unnoficial) flatpak version of Steam does not show two controllers in the logs.
Still an issue on Manjaro (Arch based) official Steam from repos. However not an issue at all on my Steam Deck (SteamOS is also Arch based?). So any hints what they have done differently on Deck, so I can do in Manjaro also?
Any Updates on this double input issue? I have started to experience the exact same problem with my PS4 Controller both via bluetooth or wired. Many games showing the "XInput Controller" and the "XBOX 360 Controller for windows" as two controllers on one device.
Hi. I was told that your issue might be the same as mine. Please try this workaround. Edit the game properties for games having problems causes by steam input and add this environment variable.
'SDL_GAMECONTROLLER_IGNORE_DEVICES="0x054c/0x0268,0x2dc8/0x3106" %command%
The device ids can easily be found from lsusb
. I don't know what it is for non-usb controllers.
I'm seeing this on debian 12 with an 8bit ultimate 2.4. It's very annoying, some menus are unusable and solasta is unplayable because the triggers double input so I can't select any characters.
Turning off steam inputs fixed this for me.
This seems like a pretty big problem that's been open for nearly 3 years now. It's still an issue. Only Steam Input fixes it.
Only Steam Input fixes it.
What do you mean by that? For me, Steam Input is where the problem is.
Turning off steam inputs fixed this for me.
How do you do that?? Can you do this per game or you need to do globally somehow?
Turning off steam inputs fixed this for me.
How do you do that?? Can you do this per game or you need to do globally somehow?
Per game properties, you can disable it. Look for the cog in the game page.
Hi. I was told that your issue might be the same as mine. Please try this workaround. Edit the game properties for games having problems causes by steam input and add this environment variable.
'SDL_GAMECONTROLLER_IGNORE_DEVICES="0x054c/0x0268,0x2dc8/0x3106" %command%
The device ids can easily be found from
lsusb
. I don't know what it is for non-usb controllers.
On the Steam Deck with OpenSUSE Tumbleweed as the OS this works when the game is started outside of Steam while Steam is still running and providing controller emulation through the Desktop-Profile (where you can toggle between M/KB and controller).
As expected, when I launch my game without Steam this will disable the controller entirely. But funnily enough this also disables the controller when launching the game through Steam as a non-Steam game. Keyboard and mouse input configured through Steam Input work fine. But controller inputs are dropped.
But, when I don't use this ENV variable then I get double inputs when launching through Steam.
Very strange.
Also having this issue on some games on Steam Deck with 8bitdo Ultimate Bluetooth in 2.4ghz mode. Plate UP! will see two controllers and will actually create two characters following the same inputs. It also causes issues in Hogwarts Legacy as the A button is unresponsive in menus unless Steam Input is disabled or the command above is used. The second is preferable as it prevents controlling the character while navigating through the Steam overlay.
Is there any way to use the above command on all games by default as a temporary workaround? Copying that long string is pretty tricky on Steam Deck without a keyboard.
Hi. I was told that your issue might be the same as mine. Please try this workaround. Edit the game properties for games having problems causes by steam input and add this environment variable.
'SDL_GAMECONTROLLER_IGNORE_DEVICES="0x054c/0x0268,0x2dc8/0x3106" %command%
The device ids can easily be found from
lsusb
. I don't know what it is for non-usb controllers.
This works only for games with SDL support
Your system information
Please describe your issue in as much detail as possible:
In attempting to help track down a bug in a game, I recently installed the new steam deb over my old version. Prior to this, my installation worked perfectly fine. This update did change directory structure a bit, which required manual intervention in a couple places (such as moving ~/.steam/steam to ~/.local/share/Steam). It also resulted in steam installing the following packages:
Of these, I removed the two mesa vulkan driver packages due to them breaking vulkan when present (even vkcube wouldn't render). I have a prime laptop with an nvidia card (470.74 proprietary) with my integrated card disabled, so this part seemed expected. On attempting to start up Persona 4 Golden I noticed control issues in the menu, and checked the steam controller configuration to see why. Apparently every button on each dinput or xinput controller is being sent twice, but it only appears to affect steam. Attempting to rebind my A button for instance will automatically select and confirm that binding. This occurs over both USB and bluetooth. I can't see any sign of this in other software. While this bears resemblance to #3412, LC_ALL is empty on my system and changing it doesn't have any effect. I've attempted system restarts, removal of (decidedly unrelated but also extraneous) dkms modules, etc. It's possible that I bumped kernel revisions from -86 to -87 when this started, but I can't be certain.
Tested controllers: 8bitdo SN30 Pro+ 8bitdo M30
After testing a dualshock 4 (with PlayStation configuration enabled), everything works fine there, so I can at least use that for now. That said, on continuing to test the other two controllers in other modes as I write this issue, steam apparently blacklisted both and now won't register them at all. I see ~4 lines of
Hiding blacklisted Device 45e/2e0
on connection now, and no response from either device.evtest output on button press and release:
Steam console output on controller connection (before blacklist):
EDIT: Just noticed today's release included Remote Play updates that may be related. The rest may just be coincidental timing.