As for the Steam Controller, I have purchased it and want to warn you about something. The controller is designed to work only as a controller, when Steam is running. Which is a deal breaker to use it outside Steam for me, because I don’t want to have it running in the background when not playing on Steam. So I end up using it in Steam only. There are third party efforts for drivers to make it usable without Steam, but they have all their own quirks. However the SDL 3 library now supports Steam Controller. So any application updating to SDL 3 comes with free Steam Controller native support, in example RetroArch.
As for the Steam Controller, I have purchased it and want to warn you about something. The controller is designed to work only as a controller, when Steam is running. Which is a deal breaker to use it outside Steam for me, because I don’t want to have it running in the background when not playing on Steam. So I end up using it in Steam only. There are third party efforts for drivers to make it usable without Steam, but they have all their own quirks. However the SDL 3 library now supports Steam Controller. So any application updating to SDL 3 comes with free Steam Controller native support, in example RetroArch.