WISE (Mayflash) 3-in-1 PS2/Gamecube/Xbox USB adapter only picking up one controller.
-
Re: PS2/N64 adapter not reading as JS0/1/2/3 only as HID
Hi!
The reason I'm refrencing the above post is becuase @mediamogul mentioned that their WISE (as device descriptor says) controller ALSO only showed one usable controller in Linux (only js0) even though I have two (the PS2 and Gamecube controllers) plugged in.
But the thing is, Windows can see all 3 controllers just fine (is that the same with you @mediamogul ?).
I've been digging DEEP to try to solve this one, learning a ton about USB (descriptors, HID descriptors, end points, report descriptors, how packets are sent and received and the format of the packets).
Comparing the layout of the entire nested USB descripters tree, I could see that the fundamental structural differences between this adapter of mine (WISE) and a NEW one I JUST got (Gamecube 4 port Mayflash) is... well... almost nothing lol
So in other words, the OS seems to be able to parse the USB descriptors fine with no errors (Windows sees 2 controllers in VirtualBox) and I can even see the packets of TWO controllers being returned via USB Inturrupts ON LINUX (I can also see this for my new adapter, 4 unique controllers in that case), but for some reason Linux won't acknowledge the second controller (no js1, ONLY js0).
Even worse, I can see that the joystick of the second controller DOES affect the readout of js0 in jstest (but buttons don't do this) as if both controllers share the output of the control sticks. Its so strange.
Does anyone know why this might be happening? Sorry for the scatter brain, I've been almost sleep deprived working on this (its fun to learn all this though!)
Thanks!
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.