deemon Jan 24, 2022 @ 11:12pm
Xbox One S Controller (BT) shows up in steam as 2 different controllers for games. Causing double inputs
For some reason my controller shows up for games as:
Xbox One Controller
Xbox 360 Controller

Very similar to this problem described here: https://www.reddit.com/r/macgaming/comments/cnca6d/xbox_one_controller_recognized_as_2_controllers/

Except I don't run Steam on Mac, but on Manjaro linux. And for me it doesn't show up as two Xbox one controllers, but 1 xbox one + 1 xbox 360 controller at the same time.

Also his proposed "solution" doesn't work here -- turning controller on once the Steam has already launched still causes double controllers. :steamsad:

on Manjaro side I see only 1 controller, so it's Steam side problem:
   ~  l /dev/input/js*  ✔
crw-rw----@ 13,0 root 25 jaan 09:17 /dev/input/js0


edit:
problem manifests in co-op and multiplayer games like:
Jack Axe
TowerFall Ascension
Last edited by deemon; Jan 25, 2022 @ 10:00am
< >
Showing 1-15 of 20 comments
ReBoot Jan 24, 2022 @ 11:20pm 
Disable Steam's input mapper, restart Steam. That will solve the issue if Steam is the culprit. If it doesn't solve it, check whatever place you use in Manjaro to look at the hardware configuration whether there is one or two gamepads there.
Last edited by ReBoot; Jan 24, 2022 @ 11:21pm
deemon Jan 24, 2022 @ 11:25pm 
Originally posted by ReBoot:
Disable Steam's input mapper, restart Steam. That will solve the issue if Steam is the culprit. If it doesn't solve it, check whatever place you use in Manjaro to look at the hardware configuration whether there is one or two gamepads there.

Where and how do you do that? Can't find anything such "Steam's input mapper" in Steam settings.
ReBoot Jan 24, 2022 @ 11:27pm 
It's not literally "input mapper". The input mapper is what it is, while Valve using another term.
It's like me saying a "lengthy sandwitch" vs. a "sub", a "car" vs. a "vehicle".

The settings group is called verbatim "Controller". Disable the input mapper there.
deemon Jan 24, 2022 @ 11:50pm 
Oops. Something is wrong here I have mislooked before. If I have no controller connected at all the Xbox 360 controller shows still up. Disconnected my keyboard, the Xbox 360 controller disappeared -- so it's detecting my keyboard as Xbox 360 controller???
Although it does not show up as controller in linux at all. Because i disabled it. Wooting One keyboard that COULD work as controller, but I have disabled this. But somehow Steam still detects it and makes it look like a controller is present?? and maps the inputs to actual second Xbox One controller when I connect it?? What is going on here...

Originally posted by ReBoot:
The settings group is called verbatim "Controller". Disable the input mapper there.
Options under "Controller" are:
General Controller settings -- not here. although here the "keyboard xbox controller 360" shows up.
Big picture conf. -- mapping configuration
desktop conf. -- mapping configuration, seems disabled.
guide button chord conf. -- mapping configuration with guide button down?
[ ] disable controller connect notifications in the desktop client.

nothing seems or looks like steam input mapper.
ReBoot Jan 24, 2022 @ 11:53pm 
Please stop focusing on Steam. You've already established that you got a phantom gamepad in your system. That is the main problem here. Steam isn't what Linux Mint uses to manage it's hardware! Steam is the tail end of the food chain, it works with what the systems gives it!

So forget Steam for a couple minutes and let's work on your phantom gamepad.

First and foremost, with Steam not running, with your actual gamepad not connected, open whatever Linux Mint got as a device manager and check whether there is indeed a spurious gamepad there.
Silicon Vampire Jan 25, 2022 @ 12:31am 
You should take this to the Linux forum...
deemon Jan 25, 2022 @ 1:38am 
Originally posted by ReBoot:
Please stop focusing on Steam. You've already established that you got a phantom gamepad in your system. That is the main problem here. Steam isn't what Linux Mint uses to manage it's hardware! Steam is the tail end of the food chain, it works with what the systems gives it!

So forget Steam for a couple minutes and let's work on your phantom gamepad.

First and foremost, with Steam not running, with your actual gamepad not connected, open whatever Linux Mint got as a device manager and check whether there is indeed a spurious gamepad there.

0. yes, lets forget for a minute Xbox One Controller because it seems it has nothing to do with the current problem I have facing -- Steam detecting my keyboard as "phantom" Xbox 360 controller. Or so I though at first ... comes out it generated second phantom also for Xbox One Controller as seen later.

1. Using Manjaro (Arch based), not Mint (Ubuntu based (Debian based))

2. Steam closed; keyboard ON -- no "phantom" gamepad present in any shape or form.
[deemon@Zen ~]$ l /dev/input/js*
"/dev/input/js*": No such file or directory (os error 2)

3. it seems Steam is generating this "phantom" gamepad, figured this out via `dmesg -W` (adding comments with ##)

## Steam OFF; Keyboard ON; (xbox one controller OFF entire time
## unpluged keyboard:
[1584832.414585] usb 1-6: USB disconnect, device number 7

## replugged keyboard:
[1584839.249922] usb 1-6: new full-speed USB device number 8 using xhci_hcd
[1584839.410850] usb 1-6: New USB device found, idVendor=03eb, idProduct=ff01, bcdDevice= 0.94
[1584839.410852] usb 1-6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[1584839.410854] usb 1-6: Product: WootingOne
[1584839.410855] usb 1-6: Manufacturer: Wooting
[1584839.410856] usb 1-6: SerialNumber: WOOT_002_## snip the actual serial ##
[1584839.557032] hid-generic 0003:03EB:FF01.0028: hiddev97,hidraw6: USB HID v1.11 Device [Wooting WootingOne] on usb-0000:2a:00.1-6/input0
[1584839.563982] hid-generic 0003:03EB:FF01.0029: offset (0) exceeds report_count (0)
[1584839.564004] hid-generic 0003:03EB:FF01.0029: No inputs registered, leaving
[1584839.564225] hid-generic 0003:03EB:FF01.0029: hidraw7: USB HID v1.11 Keyboard [Wooting WootingOne] on usb-0000:2a:00.1-6/input1
[1584839.573005] hid-generic 0003:03EB:FF01.002A: hiddev98,hidraw8: USB HID v1.11 Device [Wooting WootingOne] on usb-0000:2a:00.1-6/input2
[1584839.580934] input: Wooting WootingOne as /devices/pci0000:00/0000:00:01.2/0000:20:00.0/0000:21:08.0/0000:2a:00.1/usb1/1-6/1-6:1.3/0003:03EB:FF01.002B/input/input66
[1584839.637055] hid-generic 0003:03EB:FF01.002B: input,hidraw10: USB HID v1.11 Keyboard [Wooting WootingOne] on usb-0000:2a:00.1-6/input3
[1584839.660009] input: Wooting WootingOne System Control as /devices/pci0000:00/0000:00:01.2/0000:20:00.0/0000:21:08.0/0000:2a:00.1/usb1/1-6/1-6:1.4/0003:03EB:FF01.002C/input/input67
[1584839.717015] input: Wooting WootingOne Consumer Control as /devices/pci0000:00/0000:00:01.2/0000:20:00.0/0000:21:08.0/0000:2a:00.1/usb1/1-6/1-6:1.4/0003:03EB:FF01.002C/input/input68
[1584839.717061] hid-generic 0003:03EB:FF01.002C: input,hidraw11: USB HID v1.11 Device [Wooting WootingOne] on usb-0000:2a:00.1-6/input4
[1584839.739995] hid-generic 0003:03EB:FF01.002D: hiddev100,hidraw12: USB HID v1.11 Device [Wooting WootingOne] on usb-0000:2a:00.1-6/input5
[1584839.763982] hid-generic 0003:03EB:FF01.002E: hiddev101,hidraw13: USB HID v1.11 Device [Wooting WootingOne] on usb-0000:2a:00.1-6/input6

## NOTHING about phantom gamepad YET
## Started Steam and when it finally loads up, this line appears into the dmesg:

[1584878.508076] input: Microsoft X-Box 360 pad as /devices/virtual/input/input69


## also, now when I check the "joystick devices" under dev input, I get this:
[deemon@Zen ~]$ l /dev/input/js*
crw-rw----@ 13,0 root 25 jaan 11:26 /dev/input/js0

## (didn't exist before I started Steam, check point 2. upwards.)

## lol. and now when I turned wireless Xbox One Controller ON, I got those lines:

[1586317.223068] xpadneo 0005:045E:02FD.002F: report descriptor size: 335 bytes
[1586317.223071] xpadneo 0005:045E:02FD.002F: fixing up report descriptor size
[1586317.223072] xpadneo 0005:045E:02FD.002F: fixing up Rx axis
[1586317.223072] xpadneo 0005:045E:02FD.002F: fixing up Ry axis
[1586317.223073] xpadneo 0005:045E:02FD.002F: fixing up Z axis
[1586317.223073] xpadneo 0005:045E:02FD.002F: fixing up Rz axis
[1586317.223074] xpadneo 0005:045E:02FD.002F: fixing up button mapping
[1586317.223128] xpadneo 0005:045E:02FD.002F: battery detected
[1586317.223130] xpadneo 0005:045E:02FD.002F: gamepad detected
[1586317.223130] xpadneo 0005:045E:02FD.002F: pretending XB1S Windows wireless mode (changed PID from 0x02FD to 0x02E0)
[1586317.223131] xpadneo 0005:045E:02FD.002F: enabling compliance with Linux Gamepad Specification
[1586317.223155] input: Xbox Wireless Controller as /devices/pci0000:00/0000:00:01.2/0000:20:00.0/0000:21:08.0/0000:2a:00.1/usb1/1-4/1-4:1.0/bluetooth/hci0/hci0:256/0005:045E:02FD.002F/input/input71
[1586317.223207] xpadneo 0005:045E:02FD.002F: consumer controls detected
[1586317.223220] input: Xbox Wireless Controller Consumer Control as /devices/pci0000:00/0000:00:01.2/0000:20:00.0/0000:21:08.0/0000:2a:00.1/usb1/1-4/1-4:1.0/bluetooth/hci0/hci0:256/0005:045E:02FD.002F/input/input72
[1586317.223265] xpadneo 0005:045E:02FD.002F: input,hidraw14: BLUETOOTH HID v9.03 Gamepad [Xbox Wireless Controller] on f8:e4:e3:00:d2:b8
[1586317.223267] xpadneo 0005:045E:02FD.002F: controller quirks: 0x00000010
[1586317.223268] xpadneo xpadneo_welcome_rumble start
[1586318.213812] xpadneo xpadneo_welcome_rumble took 990ms
[1586318.213817] xpadneo 0005:045E:02FD.002F: Xbox Wireless Controller [9c:aa:1b:71:1c:68] connected
[1586318.270922] input: Microsoft X-Box 360 pad as /devices/virtual/input/input73
[1586318.969047] xpadneo 0005:045E:02FD.002F: battery registered

## and since steam is running, we see Steam generating ANOTHER phantom controller there `input73`
## so now when I look for /dev/input I see 3 joysticks, out of which 2 are Steam generated phantoms (js0 and js2):

[deemon@Zen ~]$ l /dev/input/js*
crw-rw----@ 13,0 root 25 jaan 11:26 /dev/input/js0
crw-rw----@ 13,1 root 25 jaan 11:28 /dev/input/js1
crw-rw----@ 13,2 root 25 jaan 11:28 /dev/input/js2

## those identify in `jstest-gtk` as:
Microsoft X-Box 360 pad (/dev/input/js0) <-- steam generated phantom for Keyboard
Xbox Wireless Controller (/dev/input/js1) <-- only actual wireless controller.
Microsoft X-Box 360 pad (/dev/input/js2) <-- steam generated phantom for wireless controller

Directly in linux however both phantoms, js0 and js2, in jstest-gtk application, are unresponsive when I move the controls on wireless controller. But apparently they activate for games launched inside Steam? Because I am getting double controllers and inputs inside Steam launched game.

Originally posted by Silicon Vampire:
You should take this to the Linux forum...

Could not find Steam Linux forum. Only found Steam Mac subforum.
Last edited by deemon; Jan 25, 2022 @ 1:46am
ReBoot Jan 25, 2022 @ 1:41am 
If it's coming from Steam, then disable Steam's input mapper. It's under general controller settings. Verbatim, it's called "X configuration support" (substtitute X for different things).
deemon Jan 25, 2022 @ 1:49am 
Originally posted by ReBoot:
If it's coming from Steam, then disable Steam's input mapper. It's under general controller settings. Verbatim, it's called "X configuration support" (substtitute X for different things).

They have all been disabled all along (all 5 boxes under general controller settings have been unchecked already). Also as far as I understand, those boxes are for per-game controller mappings override enabling.
Last edited by deemon; Jan 25, 2022 @ 1:50am
deemon Jan 25, 2022 @ 1:55am 
When I now checked the "xbox configuration support" and went to specific game Controller settings and then under there chose "Switch Controller" then there did show up small dialog with both "Xbox 360 controller" and "Xbox wireless controller" and with "shared configuration" option enabled. Probably this causes this ghosting problem. Will play a little around here and try to make them unique and not shared and share results here.

edit: sadly the specific game (Jack Axe) doesn't allow you to play alone with "second" controller only :-(
and my "first" controller is this phantom I have no actual input options and now with shared configuration disabled, I can move around in the menus with the second controller, but once I start game, as "player 2" only this time (previously it activated both player 1 and player 2 with one controller 1 button click -- ghosting problem) I can't move around at all, as I guess the game thinks that I want to play with only one player, so it loads "player 1" configuration for some reason (instead of "player 2" configuration) which has no input at all now.
Last edited by deemon; Jan 25, 2022 @ 2:14am
ReBoot Jan 25, 2022 @ 2:11am 
Originally posted by deemon:
Originally posted by ReBoot:
If it's coming from Steam, then disable Steam's input mapper. It's under general controller settings. Verbatim, it's called "X configuration support" (substtitute X for different things).

They have all been disabled all along (all 5 boxes under general controller settings have been unchecked already). Also as far as I understand, those boxes are for per-game controller mappings override enabling.
Those are the global settings. Then there's the per-game overrides, which override the global setting.
I'm trying to think of under what circumstances Steam would register a phantom gamepad for apparently no reason...
Last edited by ReBoot; Jan 25, 2022 @ 2:11am
deemon Jan 25, 2022 @ 2:16am 
Originally posted by ReBoot:
Originally posted by deemon:

They have all been disabled all along (all 5 boxes under general controller settings have been unchecked already). Also as far as I understand, those boxes are for per-game controller mappings override enabling.
Those are the global settings. Then there's the per-game overrides, which override the global setting.
I'm trying to think of under what circumstances Steam would register a phantom gamepad for apparently no reason...

the reason would be, if you connect "some exotic controller" game may not understand alone. so it kind of translates this "exotic" controller for the game as xbox 360 controller ... and kind of shares the configuration inbetween them? but the problem here is that while doing so, it doesn't disable the original controller but they both remain active. and when game can read and understand both it's effd up.
tintingaroo Jan 25, 2022 @ 2:28am 
Don't know if its the same case here but there are currently phantom xb360's on Mac due to a Steam bug.
You can try a similar thing which helped there: adding the xb360 to the controller blacklist manually:
https://steamcommunity.com/discussions/forum/2/3198119849656535195/#c3198119849666679596

You'll have to locate config.vdf though - the linked post has the Mac location and on Windows it's [Steam Installation]\config\.

The post below that has some info if there isn't a "controller_blacklist" entry in your config.vdf file.
deemon Jan 25, 2022 @ 5:22am 
Originally posted by tintingaroo:
Don't know if its the same case here but there are currently phantom xb360's on Mac due to a Steam bug.
You can try a similar thing which helped there: adding the xb360 to the controller blacklist manually:
https://steamcommunity.com/discussions/forum/2/3198119849656535195/#c3198119849666679596

You'll have to locate config.vdf though - the linked post has the Mac location and on Windows it's [Steam Installation]\config\.

The post below that has some info if there isn't a "controller_blacklist" entry in your config.vdf file.

my config.vdf already had something blocked... not by me, but by Steam default(?) and the line was:
"controller_blacklist" "45e/2e0,"
so I added your proposed VID/PID in the end and the line looks now like this:
"controller_blacklist" "45e/2e0,045e/028e"

but it doesn't seem to work, at least not in Linux.
Last edited by deemon; Jan 25, 2022 @ 6:32am
deemon Jan 25, 2022 @ 6:18am 
on top of that, it seems afterall, that the "original controller" and the "steam fake phantom controller" are not identical. They have vastly different button configurations.
One of them has traditional Xbox controller buttons, whereas for the phantom I suspect, A is A; B is B; Y is X; X, home and menu buttons seem disabled and don't register as any button at all, left shoulder is Y etc. quite effd up. And I am not even sure where to remain anything for it inside Steam.
Last edited by deemon; Jan 25, 2022 @ 6:19am
< >
Showing 1-15 of 20 comments
Per page: 1530 50

Date Posted: Jan 24, 2022 @ 11:12pm
Posts: 20