My Xbox controller stay off when my raspberry pi 4 get turned on
-
I just download and installed RetroPie 4.7.1 image for Raspberry Pi 4 from the website and have an issue with my controller.
The controller is detected (EmulationStation say one controller got detected and propose to configure it if not done already) but the controller stay off, I have to unplug and plug it again for it to turn on and be able to use it.
I also have RetroPie 4.7.1 freshly installed on a Raspberry Pi 3B+ and it doesn't seems to have the same problem with the same controller plugged, the controller turn on when the Raspberry is turned on, as expected.
What could be the problem? Is there any log I can check to get more information?
-
@a12c4 said in My Xbox controller stay off when my raspberry pi 4 get turned on:
The controller is detected (EmulationStation say one controller got detected and propose to configure it if not done already) but the controller stay off, I have to unplug and plug it again for it to turn on and be able to use it.
Looks like it disconnects during usage - do you have a proper power source for the Pi4 ? Check the system log during configuration with
dmesg
and see if the device disconnects/reconnects (before you unplug/plug it back). -
@mitu Thanks for your message. The power source come from LABISTS starter pack for Rapsberry Pi 4.
The
dmesg
command log the following information. I tried to search for the error messagedevice descriptor read/64, error -32
but got no luck so far.[ 2.693482] usb 1-1.4: new full-speed USB device number 4 using xhci_hcd [ 2.803781] usb 1-1.4: device descriptor read/64, error -32 [ 3.014705] systemd[1]: /lib/systemd/system/smbd.service:9: PIDFile= references path below legacy directory /var/run/, updating /var/run/samba/smbd.pid → /run/samba/smbd.pid; please update the unit file accordingly. [ 3.033749] usb 1-1.4: device descriptor read/64, error -32 [ 3.036802] systemd[1]: /lib/systemd/system/nmbd.service:9: PIDFile= references path below legacy directory /var/run/, updating /var/run/samba/nmbd.pid → /run/samba/nmbd.pid; please update the unit file accordingly. [ 3.114801] random: systemd: uninitialized urandom read (16 bytes read) [ 3.128648] random: systemd: uninitialized urandom read (16 bytes read) [ 3.129601] systemd[1]: Listening on Journal Socket. [ 3.130519] systemd[1]: Condition check resulted in Kernel Module supporting RPCSEC_GSS being skipped. [ 3.130603] random: systemd: uninitialized urandom read (16 bytes read) [ 3.130974] systemd[1]: Started Forward Password Requests to Wall Directory Watch. [ 3.141560] systemd[1]: Starting Load Kernel Modules... [ 3.144202] systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point. [ 3.253539] usb 1-1.4: new full-speed USB device number 5 using xhci_hcd [ 3.390960] usb 1-1.4: New USB device found, idVendor=045e, idProduct=02ea, bcdDevice= 4.08 [ 3.390988] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 3.391019] usb 1-1.4: Product: Controller [ 3.391040] usb 1-1.4: Manufacturer: Microsoft [ 3.391061] usb 1-1.4: SerialNumber: 3033363030313836343334363531 [ 3.863703] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null) [ 3.972400] systemd-journald[120]: Received request to flush runtime journal from PID 1 [ 4.493662] xpad: loading out-of-tree module taints kernel. [ 4.493668] xpad: loading out-of-tree module taints kernel. [ 4.495444] input: Microsoft X-Box One S pad as /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/input/input1 [ 4.496012] usbcore: registered new interface driver xpad [ 4.623720] vc_sm_cma: module is from the staging directory, the quality is unknown, you have been warned.
After I unplug and plug again the controller to make it work:
[ 712.251861] usb 1-1.4: USB disconnect, device number 5 [ 714.611071] usb 1-1.4: new full-speed USB device number 6 using xhci_hcd [ 714.778439] usb 1-1.4: New USB device found, idVendor=045e, idProduct=02ea, bcdDevice= 4.08 [ 714.778461] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 714.778478] usb 1-1.4: Product: Controller [ 714.778493] usb 1-1.4: Manufacturer: Microsoft [ 714.778508] usb 1-1.4: SerialNumber: 3033363030313836343334363531 [ 714.783648] input: Microsoft X-Box One S pad as /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/input/input2
/var/log/deamon.log also seems to contain interesting information too ... I guess ... it log information about bluetooth which doesn't make much sense to me because I use a usb cable.
May 16 17:53:33 retropie bthelper[583]: [#033[0;93mCHG#033[0m] Controller DC:A6:32:FD:80:48 Name: retropie May 16 17:53:33 retropie bthelper[583]: [#033[0;93mCHG#033[0m] Controller DC:A6:32:FD:80:48 Alias: retropie May 16 17:53:33 retropie bthelper[583]: [#033[0;93mCHG#033[0m] Controller DC:A6:32:FD:80:48 UUIDs: 00001801-0000-1000-8000-00805f9b34fb May 16 17:53:33 retropie bthelper[583]: [#033[0;93mCHG#033[0m] Controller DC:A6:32:FD:80:48 UUIDs: 0000110e-0000-1000-8000-00805f9b34fb May 16 17:53:33 retropie bthelper[583]: [#033[0;93mCHG#033[0m] Controller DC:A6:32:FD:80:48 UUIDs: 00001200-0000-1000-8000-00805f9b34fb May 16 17:53:33 retropie bthelper[583]: [#033[0;93mCHG#033[0m] Controller DC:A6:32:FD:80:48 UUIDs: 0000110c-0000-1000-8000-00805f9b34fb May 16 17:53:33 retropie bthelper[583]: [#033[0;93mCHG#033[0m] Controller DC:A6:32:FD:80:48 UUIDs: 00001800-0000-1000-8000-00805f9b34fb May 16 17:53:33 retropie bthelper[583]: [#033[0;93mCHG#033[0m] Controller DC:A6:32:FD:80:48 Alias: BlueZ 5.50 May 16 17:53:33 retropie bthelper[583]: [#033[0;93mCHG#033[0m] Controller DC:A6:32:FD:80:48 Pairable: yes May 16 17:53:33 retropie bthelper[583]: Changing power off succeeded May 16 17:53:34 retropie bthelper[583]: Changing power on succeeded
After unplug and plug again my controller:
May 16 18:05:28 retropie thd[417]: Error reading device '/dev/input/event1' May 16 18:05:31 retropie systemd-udevd[1061]: Process '/usr/bin/jscal-restore /dev/input/js0' failed with exit code 1. May 16 18:05:31 retropie systemd-udevd[1061]: Process '/usr/sbin/th-cmd --socket /var/run/thd.socket --passfd --udev' failed with exit code 1. May 16 18:05:31 retropie systemd-udevd[1062]: Process '/usr/sbin/th-cmd --socket /var/run/thd.socket --passfd --udev' failed with exit code 1.
Do you make sense of the information logged here? Because I don't, I will try to compare it with my Raspberry Pi 3 log output to see if it highlight something.
-
The only error is on boot:
[ 2.803781] usb 1-1.4: device descriptor read/64, error -32
[ 3.033749] usb 1-1.4: device descriptor read/64, error -32though the device seems to be detected later on
[ 3.253539] usb 1-1.4: new full-speed USB device number 5 using xhci_hcd
[ 3.390960] usb 1-1.4: New USB device found, idVendor=045e, idProduct=02ea, bcdDevice= 4.08
[ 3.390988] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3.391019] usb 1-1.4: Product: Controller
[ 3.391040] usb 1-1.4: Manufacturer: Microsoft
[ 3.391061] usb 1-1.4: SerialNumber: 3033363030313836343334363531The rest of the messages are ok.
Try plugging the controller in one of the USB2 ports (the non-blue ones).
-
@mitu said in My Xbox controller stay off when my raspberry pi 4 get turned on:
Try plugging the controller in one of the USB2 ports (the non-blue ones).
It's already plugged into a USB2 port, I may try a USB3 port then. I will also try another controller.
I compared the log files with my Raspberry Pi 3, there is of course not those error messages "device descriptor [...]", another difference is the controller seems to be detected first as an dwc otg controller" as we can see in the log.
[ 2.988726] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.10 [ 2.988744] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 2.988760] usb usb1: Product: DWC OTG Controller [ 2.988775] usb usb1: Manufacturer: Linux 5.10.17-v7+ dwc_otg_hcd [ 2.988790] usb usb1: SerialNumber: 3f980000.usb [ 2.989598] hub 1-0:1.0: USB hub found [ 2.989680] hub 1-0:1.0: 1 port detected [ 2.990769] dwc_otg: FIQ enabled [ 2.990781] dwc_otg: NAK holdoff enabled [ 2.990793] dwc_otg: FIQ split-transaction FSM enabled [ 2.990812] Module dwc_common_port init [ 2.991149] usbcore: registered new interface driver usb-storage ////// [...] [ 3.414348] usb 1-1: new high-speed USB device number 2 using dwc_otg [ 3.414533] Indeed it is in host mode hprt0 = 00001101 [ 3.654729] usb 1-1: New USB device found, idVendor=0424, idProduct=9514, bcdDevice= 2.00 [ 3.654756] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 3.655672] hub 1-1:1.0: USB hub found [ 3.655860] hub 1-1:1.0: 5 ports detected [ 3.957322] systemd[1]: System time before build time, advancing clock. [ 3.974342] usb 1-1.1: new high-speed USB device number 3 using dwc_otg [ 4.104877] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00, bcdDevice= 2.00 [ 4.104904] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 ////// [...] [ 4.494391] usb 1-1.3: new full-speed USB device number 4 using dwc_otg [ 4.627884] usb 1-1.3: New USB device found, idVendor=045e, idProduct=02ea, bcdDevice= 4.08 [ 4.627909] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 4.627925] usb 1-1.3: Product: Controller [ 4.627941] usb 1-1.3: Manufacturer: Microsoft [ 4.627956] usb 1-1.3: SerialNumber: 3033363030313836343334363531 ////// [...] [ 7.468470] xpad: loading out-of-tree module taints kernel. [ 7.472966] input: Microsoft X-Box One S pad as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3:1.0/input/input0 [ 7.473780] usbcore: registered new interface driver xpad
Notice this line:
[ 4.494391] usb 1-1.3: new full-speed USB device number 4 using dwc_otg
On the Raspberry Pi 4 it says:
[ 3.253539] usb 1-1.4: new full-speed USB device number 5 using xhci_hcd
-
@a12c4 said in My Xbox controller stay off when my raspberry pi 4 get turned on:
I compared the log files with my Raspberry Pi 3, there is of course not those error messages..
The Pi4 and Pi3 are different hardware and have different USB controllers, hence the difference. That's not why your controller behaves this way.
-
@mitu said in My Xbox controller stay off when my raspberry pi 4 get turned on:
The Pi4 and Pi3 are different hardware and have different USB controllers, hence the difference. That's not why your controller behaves this way.
There must be some difference somehow. I tried 2 different controllers: Xbox One Series X controller and Xbox One S controller ("S" not "Series S"). I tried all 4 usb ports. Everything work fine on my Pi 3 but none of them get turned on when my Pi 4 boot.
I think I will move on, anyway I planned to use the Xbox One wireless dongle and buy batteries + a docking station for refilling the batteries, so this problem shouldn't bother me anymore after that. I'm just leaving as much information as possible in case someone else encounter the same problem in the future.
Thanks for your help.
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.