DualShock 4 leaving "ghost" controller even if unplugged
-
Good evening everyone! Boa noite a todos!
I'm having some troubles with my retropie, i've started using it with my dualshock 4 controller, and worked fine (with the dualshock 4 limitations), but since i bought a ipega 9076 controller (and i recommend it) ive stopped using the dualshock wired and started using the ipega 2,4ghz dongle to play wirelessly.
but a "ghost" controller shows up and "bamboozle" my inputs (it keeps pressing "up), i've erased all my inputs and just reconfigured my ipega controller, but it now shows up as "Sony Computer Entertainment Wireless Controller (not configured)"ive runned this commant to see whats going on:
cat /proc/bus/input/devices I: Bus=0003 Vendor=2563 Product=0575 Version=0110 N: Name="SHANWAN PS3/PC Gamepad" P: Phys=usb-0000:01:00.0-1.4/input0 S: Sysfs=/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.4/1-1.4:1.0/0003:2563:0575.0002/input/input1 U: Uniq= H: Handlers=event0 js0 B: PROP=0 B: EV=1b B: KEY=1fff0000 0 0 0 0 0 0 0 0 0 B: ABS=30027 B: MSC=10 I: Bus=0003 Vendor=054c Product=05c4 Version=0111 N: Name="Sony Computer Entertainment Wireless Controller" P: Phys=py-evdev-uinput S: Sysfs=/devices/virtual/input/input2 U: Uniq= H: Handlers=event1 js1 B: PROP=0 B: EV=20000b B: KEY=3fff0000 0 0 0 0 0 0 0 0 0 B: ABS=e0301ff B: FF=0
the second controller should not be showing up, it does not show up in the es_input.cfg
cat /home/pi/.emulationstation/es_input.cfg <?xml version="1.0"?> <inputList> <inputAction type="onfinish"> <command>/opt/retropie/supplementary/emulationstation/scripts/inputconfiguration.sh</command> </inputAction> <inputConfig type="joystick" deviceName="SHANWAN PS3/PC Gamepad" deviceGUID="03000000632500007505000010010000"> <input name="rightanalogup" type="axis" id="3" value="-1"/> <input name="pageup" type="button" id="4" value="1"/> <input name="rightanalogdown" type="axis" id="3" value="1"/> <input name="up" type="hat" id="0" value="1"/> <input name="left" type="hat" id="0" value="8"/> <input name="select" type="button" id="8" value="1"/> <input name="rightanalogleft" type="axis" id="2" value="-1"/> <input name="leftanalogdown" type="axis" id="1" value="1"/> <input name="leftanalogright" type="axis" id="0" value="1"/> <input name="right" type="hat" id="0" value="2"/> <input name="leftanalogleft" type="axis" id="0" value="-1"/> <input name="rightanalogright" type="axis" id="2" value="1"/> <input name="pagedown" type="button" id="5" value="1"/> <input name="leftanalogup" type="axis" id="1" value="-1"/> <input name="y" type="button" id="3" value="1"/> <input name="x" type="button" id="0" value="1"/> <input name="down" type="hat" id="0" value="4"/> <input name="start" type="button" id="9" value="1"/> <input name="b" type="button" id="2" value="1"/> <input name="a" type="button" id="1" value="1"/> </inputConfig> </inputList>
i cant play any games, can't even exit games because the games uses this second controller as the input
examples:
super mario 64 makes mario look up
silent hill 1 scrolls trough the menu
retroarch menu just does not moveimportant note: if i connect a dualshock wired it shows up as controller 3 and i can then use it, on retroarch menu then i cant disable other controllers and force my ipega controller to be controller 1 and save it, then i can play, but as soon as i shutdown it stops working.
can anyone help me fix it?
thank you very much!
-
Please add some info about your setup, as detailed in https://retropie.org.uk/forum/topic/3/read-this-first.
I: Bus=0003 Vendor=054c Product=05c4 Version=0111
N: Name="Sony Computer Entertainment Wireless Controller"
P: Phys=py-evdev-uinput
S: Sysfs=/devices/virtual/input/input2This looks like a 'virtual' controller, added by a python (?) script. Did you install any additional input/gamepad related scripts on your system ?
-
@mitu
my setup is:
a raspberry pi 4 - 1gb ram
with a 16gb sd card
original Pi PSU
running retropie 4.7.1Thank you very much, yes i've added the dualshock 4 driver (ds4drv) trough pip3, maybe it is it? how do i remove it? i can see the process with ps -e
734 ? 00:00:00 ds4drv
i can then kill the process leaving me with just the ipega device
cat /proc/bus/input/devices I: Bus=0003 Vendor=2563 Product=0575 Version=0110 N: Name="SHANWAN PS3/PC Gamepad" P: Phys=usb-0000:01:00.0-1.4/input0 S: Sysfs=/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.4/1-1.4:1.0/0003:2563:0575.0002/input/input1 U: Uniq= H: Handlers=event0 js0 B: PROP=0 B: EV=1b B: KEY=1fff0000 0 0 0 0 0 0 0 0 0 B: ABS=30027 B: MSC=10
but as soon as i reboot the pi it comes back up.
-
I'm not familiar with
ds4drv
(it's not needed anyway since the DS4 has a native driver in the Linux kernel now), but maybe you added a service or a start-up program (in/etc/rc.local
) as part of the installation ? Uninstall the service or remove the start of the driver in/etc/rc.local
. -
@mitu
Thank you, removing the call for the ds4drv on /etc/rc.local solved it!
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.