No gamepads detected
-
Hello, I recently got a Raspberry Pi 3, and I want to install RetroPie on it.
I downloaded and installed Retropie v3.8.1 on my SD card, but when I boot it my controller is not detected. EmulationStation shows the "No gamepad detected" screen. I try to press the buttons on my gamepad, but nothing changes.
I have a USB controller, the Serioux SRXJ-PH2400. It works without any drivers on my Windows laptop.
I tried to add a sleep command to the
/usr/bin/emulationstation
file, as suggested here but it still does not work.I also tried to use the latest release candidate, but it still did not detect the gamepad.
Unfortunately I don't have a USB keyboard to plug into my Raspberry Pi, but I can use putty to connect to it and configure it. How can I make it detect my gamepad?
-
@oviradoi said in No gamepads detected:
I can use putty to connect to it and configure it.
So go to the terminal and type:
ls -l /dev/input/js*
To check if your system is detecting some joystick.
-
I tried also with a powered USB hub, but it still does not work. My vendor and device id is
11ff:3331
.It is not showing up under
/dev/input
. The only thing in there ismice
:pi@retropie:~ $ ls -l /dev/input total 0 crw-rw---- 1 root input 13, 63 Aug 4 15:11 mice pi@retropie:~ $ lsusb Bus 001 Device 006: ID 11ff:3331 Bus 001 Device 005: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub pi@retropie:~ $ lsusb -t /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc_otg/1p, 480M |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/5p, 480M |__ Port 1: Dev 3, If 0, Class=Vendor Specific Class, Driver=smsc95xx, 480M |__ Port 3: Dev 4, If 0, Class=Hub, Driver=hub/4p, 480M |__ Port 3: Dev 5, If 0, Class=Hub, Driver=hub/4p, 480M |__ Port 2: Dev 6, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
-
This post is deleted! -
I loaded the Ubuntu 16.04 live USB on my computer, and I can see that the gamepad is detected. I checked to see what driver it's using, and it looks like the Ubuntu live USB has more drivers than retropie.
On Ubuntu, I am using the
usbhid
driver, and theusbhid
module is being used byusbhid_gembird
. If I look inside/lib/modules/4.4.0-21-generic/kernel/drivers/hid
, there is ahid-gembird.ko
file which I believe is the driver for my gamepad.On the Retropie machine, I don't have the
hid-gembird.ko
file inside/lib/modules/4.4.13-v7+/kernel/drivers/hid
.How can I get, (maybe compile) and install the
hid-gembird.ko
module on RetroPie? -
Eventually, I got it to work.
The problem is that the raspbian kernel build does not include the gembird driver. Retropie, being based on raspbian also does not include it. Which is a shame, because it is a distribution geared towards gaming using gamepads.
I installed Ubuntu on my laptop and used these guides to build raspbian from source, also including the Gembird HID driver. Then I copied the new kernel and modules to my SD card that contained Retropie, and when I booted it up, my gamepad was detected.
https://www.raspberrypi.org/documentation/linux/kernel/building.md
https://www.raspberrypi.org/documentation/linux/kernel/configuring.mdI suggest that in the retropie builds you compile the kernel including the Gembird driver, and maybe other gamepad drivers that might not be included in the default build.
-
We don't maintain the kernel. A PR needs to be sent to the raspberry pi Linux github with the kernel config changes. I'll look into it
Retropie isn't a distro. The Image is just RetroPie installed on top of Raspbian Lite and provided for convenience.
-
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.