D-pad not functioning properly in RetroArch menu (no up, no left) (EDIT: solved)
-
I have 2 Logitech F310 USB gamepads plugged into my retropie (in directinput mode) - and they are currently working properly in emulationstation and games, however, when I switch to the in-game RetroArch menu, the D-Pad stops functioning properly - it loses half of each axis, IE no Up and no Left.
This makes most of the RetroArch menu very difficult to navigate and some options impossible that require selecting left and right.
Any ideas of what might be the issue?
PS: This is on a nearly vanilla install - all I've really done so far is transfer roms and scrape.
-
@segaprophet Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first
-
@BuZz Thank you for the tip, will follow the proper format in the future -
- I actually just fixed this problem myself, using 2 Directinput mode controllers was the issue, switching to Xinput solved this, found the solution in the wiki -
https://github.com/retropie/retropie-setup/wiki/Logitech-controllers#directinput--xinput-switch
I'll leave this post up in case anyone else with a similar problem happens upon it - or you can delete it if you wish, your choice.
-
For your luck, you solved it simply by switching from DInput to XInput mode. However, there may be cases where this workaround can't be used. This link may have a fully working solution: https://www.raspberrypi.org/forums/viewtopic.php?f=78&t=36564&sid=cc03fff216d25ee04264771b9e3bd0bc&start=25
In summary, some USB adapters / controllers, such as this one, have issues on various Linux distros. A problem on HID Input drivers prevents D-Pad to work properly. Down and Right works, but no Up and Left.
To solve this problem, you'll need to recompile Linux kernel on your RPI after making a few changes on "hid-input.c" file, which is located in "/drivers/hid/hid-input.c" (Within the source code directory). You can find all instructions on link above.
Alternatively, you can try a few compiled kernels made by the same guys who found this solution. But you'll need to make sure the kernel was compiled exactly for your linux version, or else, you may have problems (I got no sound problem two years ago, when I tried those kernels).
This kernel bug is here since 2010, and it affects Linux on desktop too (got it on Ubuntu 14.04 and 16.04, per example). Until now, it wasn't fixed by developers. So, the only way to get it working is by compiling kernel from scratch.
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.