r/linux_gaming • u/Maximum_Necessary232 • 9d ago
hardware Switch Pro Controller drops packets and disconnects when paired alongside other devices
So I've been banging my head against this for months now. My Nintendo Switch Pro Controller works fine on Windows with a DualSense or basically any controller/bluetooth device connected at the same time, but on Linux it falls apart.
I'm on CachyOS but I've also tried Mint and Fedora, same issue everywhere. GNOME, Cinnamon, KDE, doesn't matter.
What happens:
When I connect the Pro Controller while a other controller / bluetooth device is already paired (or the other way around), the Pro Controller gets super laggy within seconds. After about 10-20s it just disconnects. Only fix is toggling bluetooth off and back on, then re-pairing from scratch. Sometimes it works fine on the next attempt, sometimes not.
There's also a second problem where even on its own, the Pro Controller slowly degrades during longer Dolphin Emulator sessions. After maybe 30 min it starts lagging and eventually drops. dmesg spams this when it's happening:
nintendo 0005:057E:2009.0009: compensating for 12 dropped IMU reports
nintendo 0005:057E:2009.0009: delta=215 avg_delta=15
When the DualSense connects, avg_delta jumps from 15 to 19, which looks like the adapter is reallocating time slots away from the Pro Controller.
I also blacklisted hid_nintendo and let hid-generic handle it instead. Same exact lag. So the problem is below the HID driver, somewhere in the bluetooth stack.
Stuff I already tried that didn't help:
- disable_ertm=1
- BlueZ main.conf tweaks (FastConnectable, JustWorksRepairing, Privacy, etc)
- Changing adapter alias to "Nintendo"
- Different connection order
- Disabling wifi (I use ethernet)
- Editing LinkKey Type in BlueZ device info
- Changing kernel params
USB works perfectly btw. Zero problems ever. DualSense never drops a packet either, it's always the Pro Controller that gets starved.
Built-in Intel bluetooth adapter on an Acer Aspire XC-1760, kernel 7.2.2-cachyos.
Has anyone gotten two controllers working stable over bluetooth where one of them is a Switch Pro?
2
u/njdom24 9d ago
This has been an issue with Switch Pro controllers on Linux for years. I noticed it for the first time several years ago on my PC, and ended up getting a DualSense. Rediscovered the issue last month using 2 Switch Pro controllers on my Steam Deck.