# xbox contoller detected but does not make /dev/input/js0

## sonicbhoc

http://xbox.cvs.sourceforge.net/xbox-linux/kernel-2.6/drivers/usb/input/?hideattic=1

There is a new version of the xbox controller driver. We have version 0.0.5. They have version 0.1.6. and it has dance pad support! which is exactly what I need right now... So, I want to use their version of the xpad driver. Do I just copy over their version of xpad.c and xpad.h and the makefile into my kernel, or will that bork it?Last edited by sonicbhoc on Sat Sep 23, 2006 6:24 pm; edited 1 time in total

----------

## sonicbhoc

Well, nobody replied so I went ahead and did it. It almost worked, but there is no /dev/input/js0 or /dev/js0.

Here is some output:

```

usbcore: registered new driver usbfs

usbcore: registered new driver hub

usb usb1: configuration #1 chosen from 1 choice

usb 1-1: new low speed USB device using uhci_hcd and address 2

usb 1-1: configuration #1 chosen from 1 choice

usbcore: registered new driver usb-storage

usbcore: registered new driver hiddev

input: USB HID v1.10 Mouse [Microsoft Microsoft 5-Button Mouse with IntelliEye(TM)] on usb-0000:00:1f.4-1

usbcore: registered new driver usbhid

drivers/usb/input/hid-core.c: v2.6:USB HID core driver

usbcore: registered new driver xpad

drivers/usb/input/xpad.c: driver for Xbox controllers v0.1.6

usb 1-2: new full speed USB device using uhci_hcd and address 3

usb 1-2: configuration #1 chosen from 1 choice

usb 1-2.1: new full speed USB device using uhci_hcd and address 4

usb 1-2.1: configuration #1 chosen from 1 choice

```

```

input: PC Speaker as /class/input/input0

input: AT Translated Set 2 keyboard as /class/input/input1

input: Microsoft Microsoft 5-Button Mouse with IntelliEye(TM) as /class/input/input2

input: Xbox DDR dancepad as /class/input/input3

```

and ls /dev/js0 and /dev/input/js0 both get me file not found. What's wrong?

----------

## sonicbhoc

Damnit! I really want to play stepmania, if anybody has any sort of info that can help me...

ln -s /dev/input/event3 /dev/input/js0 did not work, even after changing the permissions. It says "not a joystick," which is complete bull according to the dmesg output.

----------

## mtoups

Same problem.  Previously everything worked fine, but a recent "overdue" emerge world broke something.  Still searching for the solution or what to roll back.

----------

## mtoups

 *mtoups wrote:*   

> Same problem.  Previously everything worked fine, but a recent "overdue" emerge world broke something.  Still searching for the solution or what to roll back.

 

Which version of udev are you running?  I was not getting /dev/input/js0 etc using udev-104-r12  However it was creating a /dev/input/event0 etc.  

Putting the following into /etc/portage/package.mask

```

=sys-fs/udev-104-r12

=sys-fs/udev-104-r11

```

and re-emerging udev to downgrade to sys-fs/udev-103 fixed my problem.

My kernel is 2.6.19-gentoo-r5.

PS I guess I am using a modified version of /usr/src/linux/drivers/usb/input/xpad.c version 0.0.6 that was edited to add dancepad suppport.

----------

## weaksauce

don't know if it's helpful or not, but I had that problem at one point with one of my dancepads, and the problem was related to the driver, xpad.c  If you open it up and go to the part with all the devices listed, some of them (at that time) had the format 0x0e6f, for example, and other 1x0e6f.  If I changed that preceding 1 to a 0, it made the pad suddenly recognized as /dev/input/js0 (it was always recognized by lsusb).  Hope this helps, but you may have a version that it does not apply to.  Or, if your pad is not in the driver right now, you may just need to add a line for it (I've had to do that a couple of times   :Confused:  )

----------

