I’m encountering an issue while testing different controllers with Unity’s Input System in the Unity editor. Specifically, when using a Switch Pro controller in Unity versions 2022 LTS, 2023, or Unity 6, the controller appears as two devices—one of which is incorrectly identified as an Xbox controller. This dual-device recognition causes conflicts as they vie for the active device slot. Interestingly, this issue does not occur in Unity version 2021 LTS, where only one device is recognized per controller.
For context:
Unity 2021 LTS: Input System version 1.7.0 (working correctly)
Unity 2022 LTS, 2023 Input System version 1.7.0 (problematic)
Unity 6: Input System version 1.8.2 (problematic)
Additional Info:
Operating System: Windows 11
No other applications are open that could interfere with input (e.g., Steam).
Has anyone encountered a similar issue or found a workaround? What might be causing this inconsistency across different Unity versions?
I am literally working through the same issue and came across your post. While Googling, I came across this post as well of a person who is taking a bit of a bet to remove the XInputDevice when it is detected within a tiny timeframe of the Switch Controller detected. I am running out of other ideas and that seems like the only decent solution for now so I think I will go with that and hope it works. It’s not the best as it does make a bit of an assumption but it could work.
I even tried making a Control Scheme separate from the Gamepad scheme I have for the Nintendo Switch Pro Controller. That did not help. Looking at the Input Debugger I see the exact issue you see. If you right click on XInputControllerWindows and remove it your device will work as you expect which is what the code I linked does.
I imagine this is in part due to Nintendo software and how it interfaces with our computers and it likely being a bit of a black box due to poor documentation. I also imagine Unity devs working on the Input System have to do a fair bit of reverse engineering to get a lot of these controllers to work.
I have seen that post before as well, but I was hoping for an official fix.
(Also, I have tried that fix and it didn’t work for me)
It is really weird to me that it works perfectly on 2021 LTS but not in any newer versions of Unity.
So that is the reason I believe it is a bug and thus it should be fixed by Unity.
I hope we get an official reply soon.
I did manager to get it to work for me by using the code in the post that I linked. I did have to edit it a tad bit to figure out what the gamepad reference was. See this post.
If that doesn’t work for you then I’m afraid I am all out of ideas. We will have to wait for an official Unity fix.
Hey @Rocco , thanks for your reply.
Your solution partially works, but can create other problems.
It correctly disabled the ghost xbox controller, but it can also disable genuine ones as well.
I tried plugging in my xbox controller and my switch controller, and when I pressed buttons at the same time, the geniune xbox controller was disabled as well.
Oh yea, absolutely, it is not perfect at all. I genuinely debated just dropping Nintendo Switch Pro Controller support until this is fixed since unless Unity fixes it, I’m not sure what else we can do.
I would not use this in production code at all. For my purposes it does the job for now. Most certainly it will require a real fix for production ready code.
I reported this about 7 months ago now and recently it seems like it’s finally getting fixed. This seems to affect some other rare controller types as well. Here’s all the info I got from the report including which branches seem to be getting fixes at some point:
Unity Bug Reporting Portal
24/Jun/25 9:55 AM
A new fix is planned for Branch:6000.0. This bug report has been reopened and is awaiting further action.
Unity Bug Reporting Portal
24/Jun/25 10:03 AM
All fixes for this bug report have been resolved and closed.
A new fix is planned for Branch:6000.0. This bug report has been reopened and is awaiting further action.
Unity Bug Reporting Portal
24/Jun/25 10:07 AM
A new fix is planned for Branch:2022.3. This bug report has been reopened and is awaiting further action.
Unity Bug Reporting Portal
24/Jun/25 10:22 AM
A fix for your bug report IN-91722: [Xinput] Switch Pro controller is seen as two devices when connecting with Bluetooth has been submitted with the following status: Fixed and currently awaits internal confirmation.
Fix Version/s: Pending
Resolution Notes:
Unity Bug Reporting Portal
24/Jun/25 10:22 AM
A fix for your bug report IN-91722: [Xinput] Switch Pro controller is seen as two devices when connecting with Bluetooth has been submitted with the following status: Fixed and currently awaits internal confirmation.
I specifically have a game that is controller only so it’s a really important issue for me too, otherwise I get bad reviews. I use a fix like mentioned by @Rocco and disable one of the gamepads
Hi, I’m having a bit of a hard time understanding this. Does it mean if I update to 6000.1.X oder 6000.2.X the bug is already fixed? Or is “Fixed and currently awaits internal confirmation” still the current state for all fixes of this bug? I’m currently on 6000.0.47f1 and debating if it’s worth upgrading to a newer Version because of this bug.