The symptom is that when the Xbox controller device is plugged in, the system does not register it as a gamepad, and hence fail to create the /dev/input/js0 directory.
First, we use the following command to monitor the kernel log.
sudodmesg-w
The log is shown below. Note that the controller is only registered as a USB device, but not a HID device. I then plugged in a normal keyboard, and the system register that as an input device correctly.
[ 341.476545] usb 1-9: new full-speed USB device number 10 using xhci_hcd[ 341.625847] usb 1-9: New USB device found, idVendor=1532, idProduct=0a29, bcdDevice=1.01[ 341.625853] usb 1-9: New USB device strings: Mfr=1, Product=2, SerialNumber=3[ 341.625855] usb 1-9: Product: Razer Wolverine V2[ 341.625856] usb 1-9: Manufacturer: Razer[ 341.625858] usb 1-9: SerialNumber: 0000180FB79F929D[ 365.724632] usb 1-10: new low-speed USB device number 11 using xhci_hcd[ 365.884049] usb 1-10: New USB device found, idVendor=03f0, idProduct=2f4a, bcdDevice=0.11[ 365.884060] usb 1-10: New USB device strings: Mfr=1, Product=2, SerialNumber=0[ 365.884064] usb 1-10: Product: HP Business Slim Keyboard[ 365.884068] usb 1-10: Manufacturer: Chicony[ 365.888935] input: Chicony HP Business Slim Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.0/0003:03F0:2F4A.0005/input/input21
[ 365.948931] hid-generic 0003:03F0:2F4A.0005: input,hidraw4: USB HID v1.10 Keyboard [Chicony HP Business Slim Keyboard] on usb-0000:00:14.0-10/input0
[ 365.953729] input: Chicony HP Business Slim Keyboard Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.1/0003:03F0:2F4A.0006/input/input22
[ 366.012837] input: Chicony HP Business Slim Keyboard System Control as /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.1/0003:03F0:2F4A.0006/input/input23
[ 366.012945] input: Chicony HP Business Slim Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-10/1-10:1.1/0003:03F0:2F4A.0006/input/input24
[ 366.013113] hid-generic 0003:03F0:2F4A.0006: input,hiddev0,hidraw5: USB HID v1.10 Device [Chicony HP Business Slim Keyboard] on usb-0000:00:14.0-10/input1
[ 368.740323] usb 1-10: USB disconnect, device number 11
I have tried many, many method on the Internet, but turns out Chat has the best solution