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

  1. xbox/ps5/switch controllers : These are for their respective consoles
  2. 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:

  1. If they are already cross-compatible, why even bother having different types?
  2. 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

  1. Hall-effect sensors are a must
  2. Default console controllers usually have stick drift
  3. If you need trackpad, take PS5
  4. 8bitdo is a reliable brand, as per multiple responses
  5. Most controllers have good support on Linux. But haptic feedback can be a hit/miss as it can be platform/game dependent
  6. There are various connectivity wireless standards. Dongles are the most reliable but you lose a USB port.
  7. Keep track of handsize/comfort and button layout
  8. PS controllers have excellent support on Linux/Steam
  • tb_@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 months ago

    It does have back buttons, which is why it’s unlikely to launch in the west as Scuf (owned by Corsair) is a major patent troll when it comes to those. That’s also the reason for the original Steam controller no longer being released.

    The Hori one is launching at the end of this month, if I recall correctly. I might look into importing it once it does.