I have a question(s) regarding the various types of game controllers.
I need a wireless controller which supports PC (Steam Linux mainly and maybe Windows someday). While searching online, I see various types
- xbox/ps5/switch controllers : These are for their respective consoles
- Mobile/PC controllers : These usually connect via wire/bluetooth/2.4 GHz
Source: https://www.gamesir.hk/
However, I see in the product specifications page of the console controllers that they also support PC. And the PC controllers sometimes support some of the consoles. The only real difference between controllers, from a technology perspective, is that is some of them support bluetooth/2.4 GHz.
So I have two questions:
- If they are already cross-compatible, why even bother having different types?
- How should I decide which type of controller I should buy? It should support PC, console-support is not essential.
Note: I am a novice in game controllers but aware of different network stacks.
Edit: Thanks for the amazing response! These are my key takeaways from all the comments
- Hall-effect sensors are a must
- Default console controllers usually have stick drift
- If you need trackpad, take PS5
- 8bitdo is a reliable brand, as per multiple responses
- Most controllers have good support on Linux. But haptic feedback can be a hit/miss as it can be platform/game dependent
- There are various connectivity wireless standards. Dongles are the most reliable but you lose a USB port.
- Keep track of handsize/comfort and button layout
- PS controllers have excellent support on Linux/Steam
-
Microsoft has their own controller protocol, xinput, it only works with xbox and PC
-
Sony and Nintendo both use BT HID, but add their own non-standard extras to deal with trackpads and gyros, on PC there are drivers to deal with this (inc. w/Linux kernel, extra on Windows)
-
For Wireless, Sony and Nintendo both use standard Bluetooth, you can pair a Switch or PS4/5 controller straight to a PC (though you will need extra software on Windows)
-
Microsoft uses either their somewhat proprietary 802.11AC implementation (only works with their dongles - you will need extra software on Linux, fully supported in Windows ootb) or standard Bluetooth, their BT has the highest latency of any of the 3 major controllers, but their 5ghz 802.11AC has the lowest. BT mode requires no extra drivers and will work fine ootb on Linux or Windows. You can’t use a headset plugged into the controller or connected by BT (to the controller) if you’re connecting the controller via BT.
-
MS has additional trigger rumbling/tension on the Xbox One/Series controllers, in Windows it will only work with MS Store apps - it won’t work on any Steam game :( on Linux it will work, but nothing really supports it either.
-
Sony has a much better implementation in the PS5 controller, nothing outside Sony published games use it though - but it’s compatible on Windows with additional drivers (DS4Win) (not sure about Linux here)
-
For Nintendo Switch on Windows you will need BetterJoy (previously, BetterJoyForCEMU) to support switch controllers properly, this also makes a DS4Win style gyro server, so anything that support ds4win will support Switch gyro too.
This comment is how I always hope my info dumps go when someone asks me a technical question about something I have good experience in using. 10/10 comment, love it.
-
Flydigi Vader 3/4 Pro. Been using one for a couple months. Hands down best controller I have used. Hall effects, trigger locks, rear buttons, mechanical face buttons, glorious d pad. The not so fun is the crap software and joystick defaults. Once you update on pc it is great. Under $100 for either model.
Do you use it on Linux? I recently got a Vader 4, it works wireless on xbox mode (using the xpad linux module), but I was hopping to make use of the gyro (hopefully without losing the analog triggers), and it seems that the dinput mode (which does allow some gyro action + analog triggers and working extra buttons) does not really work with the wireless dongle for me (it works if I plug it via cable, but that’s also not optimal since it disconnects mid play sometimes for some reason).