batocera-linux / batocera.linux

batocera.linux
https://batocera.org
Other
2.03k stars 522 forks source link

Wii Classic Controller Pro analog sticks won’t map correctly #11839

Open guilhermegwx opened 5 months ago

guilhermegwx commented 5 months ago

Batocera build version

39 2024/03/04 10:11

Your architecture

x86_64

Your Graphic Processor Unit(s) (GPU)

Integrated Intel HD Graphics 4000

Issue description

Wii Classic Controller Pro, while connected to a Wii Remote Plus and paired to a Batocera PC, won’t have its analog sticks mapped correctly.

Detailed reproduction steps

Controller mapping detects left analog stick up as “Hat 1 Down”, and left analog stick left as “Hat 1 Left”, but right and down directions won’t work in menus or in game (the same is true for the right analog stick, but it shows as Hat 2 instead).

Details of any attempts to fix this yourself

No response

Details of any modifications you have made to Batocera.

No modifications.

Logs and data

No response

dmanlfc commented 5 months ago

see https://wiki.batocera.org/diagnose_joysticks_issues#sdl2-jstest

and also - Wii Classic Controller Pro, while connected to a Wii Remote Plus - it's unlikely the driver knows how to work with this kind of configuration.

guilhermegwx commented 5 months ago

After I opened the issue, I came around the information regarding sdl2-jstest and evtest; will try to use those tools later today when I get the chance. Wii Classic Controller is supposed to be supported, as stated in the wiki, and they only work while connected to a Wii Remote (the brains of the operation, basically), but I don’t know if there’s any specific issue with the Pro variant (even though, layout-wise, the buttons are basically the same): https://wiki.batocera.org/supported_controllers#wii_controllers

guilhermegwx commented 5 months ago

Tried both tests; the analog sticks are indeed identified as hats, with 8 directions and neutral, while evtest shows more granularity (seen values from -28 to 26, but I can’t always get those numbers when going all the way in a direction, most common is -25 to 25). These are my current settings, after manual configuration: IMG_0851 Analog sticks still only gets detected in the up and left directions in menus (emulationstation) or in game. Any suggestions to fix it? One more thing: the controller is supposed to be preconfigured in es_input.cfg, but the mapping is completely wrong.

dmanlfc commented 5 months ago

Not a lot we can do. It will need a driver implementation for that configuration. We don't write the kernel driver.

shangren-cmd commented 4 months ago

Not a lot we can do. It will need a driver implementation for that configuration. We don't write the kernel driver.

Adjusting the controller options within RA is modifiable, but ES program modification configurations cannot be associated with RA settings. Updating ES may fix this issue