PS4 controller not detected in Retropie 4.6 on Pi 4B
I have an official ps4 controller using the cable that came with it. Retropie will not detect the controller using USB. Needless to say it will not detect wirelessly either. Other USB controllers work but the ps4 controller will not. Model is CUH-ZCT 2U. I'm at a loss at how to get it working
I have a PS4 working on the same system, so there's no issue with it as far as RetroPie is concerned (either USB or Wireless).
Check your USB cable - does it work with other systems (PC/mac) ?
@mitu tested it on my pc. Had to remove all the old scp drivers to get it working but it works on my pc just fine using the default cable that came in the packaging
Add some more info about your system, as detailed in https://retropie.org.uk/forum/topic/3/read-this-first.
Can you check if the controller is detected when plugged by, by running
lsusb cat /proc/bus/input/devices
Pi Model or other hardware: pi 4B
Power Supply used: USB-C Power Supply, 5.1V 3.0A,
RetroPie Version Used: 4.6.5
Built From: retropie-buster-4.6-rpi4.img.gz
USB Devices connected: Sony Dualshock 4 controller, 128 gb USB drive, wireless adapter for Logitech keyboard/trackpad
Controller used:Sony Dualshock 4
Error messages received: no gamepad detected
Attachment of config files: not sure which config files to post
Results of lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 005: ID 054c:05c4 Sony Corp. DualShock 4 [CUH-ZCT1x] Bus 001 Device 004: ID 154b:00f8 PNY Bus 001 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 3.0 root hub
I see that the DS4 controller appears in the list of connected USB devices - that's ok. What about the 2nd command that I posted ? Does it show the DS4 controller connected and detected as an input device ?
@mitu I tried the other command and it said something about not being found.
I'll have to look at it again after some sleep
cat /proc/bus/input/devices I: Bus=0003 Vendor=046d Product=404b Version=0111 N: Name="Logitech K400" P: Phys=usb-0000:01:00.0-1.1/input2:1 S: Sysfs=/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.1/1-1.1:1.2/0003:045D:C52B.0003/0003:046D:404B.0005/input/input13 U: Uniq=404b-a4-6a-a5-cd H: Handlers=sysrq kid less mouse0 events B: PROP=0 B: EV=12001f B: KEY=3f 301ff 0 0 0 0 483ffff 17aff32d bfd44446 0 0 ffff0001 130ff3 8d17c007 ffff7bfa d941dfff ffbeffdf ffefffff ffffffff fffffffe B: REL=1943 B: ABS=1 0 B: MSC=10 B: LED=1f
Normally this should show the connected gamepad, something like
... I: Bus=0003 Vendor=054c Product=09cc Version=8111 N: Name="Sony Interactive Entertainment Wireless Controller" P: Phys=usb-0000:01:00.0-1.3/input3 S: Sysfs=/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.3/1-1.3:1.3/0003:054C:09CC.0034/input/input150 U: Uniq=dc:0c:2d:86:41:f6 H: Handlers=event5 js0 B: PROP=0 B: EV=20001b B: KEY=7fdb0000 0 0 0 0 0 0 0 0 0 B: ABS=3003f B: MSC=10 B: FF=1 7030000 0 0
Is that the whole output of the command ?
Edit: That "kid less" and "events" in the code should be "kbd leds" and "event0" respectively. Autocorrect changed it
It looks like your controller is not detected as a gamepad by the OS - that's the reason it's not working with RetroPie. It seems to appear as connected via USB, but no input device is created for it (only the keyboard shows up in the 2nd command).
Can you try and run the following commands - after exiting EmulationStation and disconnecting the gamepad:
sudo dmesg -c > /dev/null
connect back the controller then run
Post the output of the 2nd command.
@mitu ran the two commands. I did not get any output on my screen
@jmcdra Did you connect the gamepad between the 2 commands ? Otherwise nothing will be shown.
Rion last edited by
Are you absolutely sure it's a genuine Dualshock 4 Controller?
As far as i know the official retail controllers these days don't come with an usb cable.
There is a myriad of fake controllers out there and it's getting more difficult to spot a fake from a real one.
The best way to be completely sure is to open it up and look at the pcb.
@mitu yes I did
Rion last edited by
@Rion I'm sure it is. It has the sony logo and a sony model number on it and the packaging.
Here we go. I don't know why it didn't read it the first time. Here's the message I got.
[ 1625.139228] usb 1-1.3: new full-speed USB device number 5 using xhci_hcd [ 1625.239449] usb 1-1.3: device descriptor read/64, error -32 [ 1625.459455] usb 1-1.3: device descriptor read/64, error -32 [ 1634.359323] usb 1-1.3: new full-speed USB device number 7 using xhci_hcd [ 1634.495641] usb 1-1.3: New USB device found, idVendor=054c, idProduct=05c4, bcdDevice= 1.00 [ 1634.495657] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [ 1634.495669] usb 1-1.3: Product: Wireless Controller [ 1634.495681] usb 1-1.3: Manufacturer: Sony Computer Entertainment [ 1637.573784] sony 0003:054C:05C4.0005: failed to retrieve feature report 0x81 with the DualShock 4 MAC address [ 1637.574041] sony 0003:054C:05C4.0005: hidraw2: USB HID v81.11 Gamepad [Sony Computer Entertainment Wireless Controller] on usb-0000:01:00.0-1.3/input0 [ 1637.574055] sony 0003:054C:05C4.0005: failed to claim input [ 1637.645948] usb 1-1.3: USB disconnect, device number 7 [ 1742.400667] usb 1-1.3: new full-speed USB device number 8 using xhci_hcd [ 1742.546984] usb 1-1.3: New USB device found, idVendor=054c, idProduct=05c4, bcdDevice= 1.00 [ 1742.546999] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [ 1742.547011] usb 1-1.3: Product: Wireless Controller [ 1742.547023] usb 1-1.3: Manufacturer: Sony Computer Entertainment [ 1747.621036] sony 0003:054C:05C4.0006: failed to retrieve feature report 0x81 with the DualShock 4 MAC address [ 1747.621300] sony 0003:054C:05C4.0006: hidraw2: USB HID v81.11 Gamepad [Sony Computer Entertainment Wireless Controller] on usb-0000:01:00.0-1.3/input0 [ 1747.621314] sony 0003:054C:05C4.0006: failed to claim input
This looks like a problem with the USB connection - bad cable/bad USB port (less likely). Can you try different ports (assuming you didn't do that already) or another USB cable ?
@mitu I'll have to go and get a different cable. Anything I should look for in a cable for a ps4 controller then?