Unlikely to be an issue with a stick, but very possible with an external drive.
So searching for a device specfic driver is a very sane default here.
USB Mass Storage is the worst case of that approach (vendors with different ideas of how to solve it just agreed to differ and the standard offers all combinations of their preferred methods) but it's still better than the alternative.
Other approaches are crazy, they produce a worse user experience and usually introduce perverse incentives that make life worse for everybody.
If there are in fact "issues" with "vanilla USB" you don't fix those by having every single vendor hand roll their own attempted workaround and ship each of them.
The user does not give a flying fig about your "moral high ground".
They just want their drive to work.
Every time Windows ships a new version, users with hardware that worked fine but alas, wasn't shifting too many new units through retail, find now it doesn't work. "Buy a new one, then you'll get updated drivers" people like you cry. More landfill, for no reason.
Real users hate this experience and are relieved when you tell them that some device they're getting doesn't "need drivers". Of course it does actually need drivers, it just uses the OS vendor's class drivers, which work out of the box and are properly maintained, but the user experience is of relief.
So during this whole process I realized that most gear has two versions, a PC/PS4 version and a PC/Xbox version.
The PC/PS4 version doesn't actually work in Windows. I had to get the PC/Xbox version to work in games like Forza Horizon. Even though their website lists the same brand and model, but they don't say which version.
I figured that obviously Microsoft will have the best support for the Xbox version of the gear.
I also use a cheap Logitech F310 gamepad in Linux for games like Dead Cells, Hollow Knight, Streets of Rogue and Unto the end. Worked with no setup, out of box.
Open standards are absolutely awesome and even though I've been hooked and using Linux and other free software exclusively for more than a decade now it continues to make me happy.
Could this be another intended incompatibility that Microsoft introduced to push Windows 10? They did it with CPU support limitations and the newest DirectX version if I remember correctly, so maybe they decided to give gamers another "incentive".
(I'm less of a fan of Windows 8.1. They made it more desktop-like but it lost its uniqueness.)
It doesn’t, actually. It works out of the box if wired through USB, or when using the expensive wireless dongle, but it doesn’t work out of the box over Bluetooth. You have to apply nasty hacks to the BT stack to make it work. PS4 controller is just pair & go.
These controllers use some kind of DRM that requires disabling a feature of the BT stack (ertm) using a non-persistent kernel parameter that breaks other BT devices. I
I've always avoided using it because of the horror story from early models, but I might pick up a used PS4 controller for PC gaming if BT works well.
i.e. Sony has custom everything, including input stack.
Steam does this all for you now anyway.
Unfortunately, one of the reasons I bought the controller was to try out the pressure sensitive face buttons, and PCSX2 on Linux didn't seem to support that? On Windows, PCSX2 can do this with ScpToolkit, but that seems to be abandoned. Still, for the 99% of games that don't need pressure sensitive face buttons, the DS3 integration in Linux was literally perfect.