On Sun, Apr 26, 2020 at 2:14 PM Bastien Nocera <hadess@xxxxxxxxxx> wrote: > > On Sun, 2020-04-26 at 13:42 -0700, Roderick Colenbrander wrote: > > > <snip> > > I really wonder how a device like this should be handled. It looks > > like the device can also handle a bunch of other classic Nintendo > > controllers. > > > > Is there anyway of detection this adapter? It feels nasty to have to > > hack in quirks for this device... > > The end game isn't very different from how we handle XBox 360, or > PS3/PS4 "clone" devices. > > Those devices (the adapters) work on the actual Nintendo Switch > hardware, so should probably work with the driver that handles the same > type of hardware on Linux. > (resend in plain text) I agree it probably makes sense to handle in this driver. I'm worried about the application level implications. We have been doing a lot of work e.g. on Android to try to make gamepads consistent. It is weird to have a "Switch controller" with different features as applications make assumptions and don't expect there to be multiple versions of a particular controller. Any button mapping files would potentially be wrong for those too, certain features are not there (e.g. no sensors or no lights or rumble) or if they are the behaviour is different (e.g. HD rumble vs a classic rumble motor). Ideally we would do some kind of "fixup" to change the device name and or replace the device ids to at least separate them. Roderick