Retroarch cant bind inputs

Re: retroarch keybind input problems/timeouts.
I decided to look into it.

Since the Gameshell treats the joystick as a keyboard, it would make sense to use an appropriate driver.

By default, the input driver that is selected is “X”, which I am assuming is X input. This is an appropriate input for a joystick, however given the nature of the arduino keyboard, this is not suitable.

Being the most recent and feature packed driver, featuring keyboard callback, mouse and touchpad compatibility, I decided to try using the udev driver.
The menu can be found here:

settings->drivers->input->udev

To allow Linux to capture keyboard inputs, you will need to add your user to the group “input” with the command:

sudo usermod -a -G input cpi

Reboot your system.

If it doesn’t work, you’ll need to make a udev rule to make the group “input” available to non root users.

Using nano, open up:

sudo nano /etc/udev/rules.d/99-input.rules

And add the following lines:

KERNEL=="event*", NAME="input/%k", MODE="666"

Save the file, and then reload your rules, by running:

sudo udevadm control --reload-rules

Reboot your system.

You should now be able to add and remove inputs completely via the retroarch interface, and not need to edit your retroarch.cfg file manually anywhere near as much.

All of the above and more can be found here:
http://docs.libretro.com/guides/input-joypad-drivers/

5 Likes