Xbox Controller S doesn't work
#1
Hi,
I'm running the hardy PPA builds on Hardy 32-bit and they are working fine except that my Xpads don't work in XBMC. I can test them in jscalibrate and play with them in planetpinguin racer but in XBMC nothing happens.
Can anyone tell me what I have to change in the settings?
lsusb gives:
Code:
Bus 001 Device 023: ID 045e:0289 Microsoft Corp. Xbox Controller S
Bus 001 Device 022: ID 045e:0288 Microsoft Corp. Xbox Controller S Hub
And dmesg:
Code:
[ 6003.527055] usb 1-9: new full speed USB device using ohci_hcd and address 22
[ 6003.731076] usb 1-9: configuration #1 chosen from 1 choice
[ 6003.733942] hub 1-9:1.0: USB hub found
[ 6003.743818] hub 1-9:1.0: 3 ports detected
[ 6004.084790] usb 1-9.1: new full speed USB device using ohci_hcd and address 23
[ 6004.186919] usb 1-9.1: configuration #1 chosen from 1 choice
[ 6004.189922] input: Microsoft X-Box pad v2 (US) as /devices/pci0000:00/0000:00:02.0/usb1/1-9/1-9.1/1-9.1:1.0/input/input16
I tried changing the keymap.xml (replacing the name tags) with Microsoft Corp. Xbox Controller S and also Microsoft X-Box pad v2 (US) but it didn't help.
Reply
#2
Yeah for some reason hardy mucked up the xpad drivers by making the dpad into an axis instead of buttons and making the deadzone zero so it always thinks its moving and they even completely renamed the controller Sad (I think all this was because they were playing with the 360 controller support)
I actually had to download the original drivers source and edit it back to the way it used to be to make it work right as it stands now I have it working 100% in hardy just like it used too in gusty

I will upload my modified source package with some instructions on how to install it (its pretty easy actually) for you a little later
Reply
#3
Ok here you go instuctions are in a text file in the archive (mostly copied from the ubuntu wiki)
http://blackbolt.x-scene.com/Jezz_X/Cust...ers.tar.gz
Reply
#4
Hi,
im sorry to disturb, but had same problems with x-box controller and was happy finding this solution here.

tried to compile but somehow path or something else missing. unhappy i cant figure out what i can do to get xpad-driver compiled.

snippet for my compile-log:
Code:
root@media-live:/usr/src/xpad# make
make modules -C /usr/src/linux-headers-2.6.24-16-generic SUBDIRS=/usr/src/xpad
make[1]: Betrete Verzeichnis '/usr/src/linux-headers-2.6.24-16-generic'
  CC [M]  /usr/src/xpad/xpad.o
/usr/src/xpad/xpad.c:76:18: Fehler: xpad.h: No such file or directory
/usr/src/xpad/xpad.c:82: Fehler: Feldtyp hat unvollständigen Elementtypen
/usr/src/xpad/xpad.c:85: Fehler: »GAMEPAD_XBOX« ist hier nicht deklariert (nicht in

may be a hint for a dummy?

regards,
ozett
Reply
#5
are you sure you have the xpad.h in the same directory as xpad.c (/usr/src/xpad/) ?
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image

Want a clean no-ads paste bin? http://pastebin.ubuntu.com/
Reply
#6
hi,
i followed the hint to the ubuntu-wiki and found that i had to download xpad.h with

wget "http://xbox-linux.cvs.sourceforge.net/*checkout*/xbox-linux/kernel-2.6/drivers/usb/input/xpad.h"

after that all compiled fine and controller works like charm.

regards,
ozett
Reply
#7
I did include the .h file in the archive I uploaded :\ so no idea
Reply
#8
Thanks! Helped me with my Cordless Logitech Controller issues Wink
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#9
Hi,

I have followed the instructions here and I cannot get the controller to work in XBMC. I am running Hardy 64.

The axis are also swapped when using jcalibration and the dpad does not work, only the analog stick.

Another problem I have is that i have to do a chown on /dev/input/js0 to get jcalibration to work. It keeps telling me I don't have permission but i cannot figure out the problem (on reboot the chown does not stick): I get the same problem with Nero about the dvd burner (even though brasero has no problem).

If someone can help with all 3 problems i'd be grateful.
Reply
#10
Bus 007 Device 005: ID 045e:0289 Microsoft Corp. Xbox Controller S
Bus 007 Device 004: ID 045e:0288 Microsoft Corp. Xbox Controller S Hub
Bus 007 Device 003: ID 13fd:2040
Bus 007 Device 002: ID 2001:f103 D-Link Corp. [hex]
Bus 007 Device 001: ID 0000:0000
Bus 006 Device 003: ID 1058:1102 Western Digital Technologies, Inc.
Bus 006 Device 001: ID 0000:0000
Bus 005 Device 001: ID 0000:0000
Bus 004 Device 001: ID 0000:0000
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 003: ID 4101:1302
Bus 001 Device 001: ID 0000:0000

Here is my lsusb. I tried renaming the device in the source code to the same as above but to no avail.
Reply
#11
hmm.. still no change after following your steps..

didnt got any errors during the proces either though.. just still the axis swapped.
Code:
razor@mediacenter:~/xpad$ lsusb
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 009: ID 045e:0289 Microsoft Corp. Xbox Controller S
Bus 001 Device 008: ID 045e:0288 Microsoft Corp. Xbox Controller S Hub
Bus 001 Device 004: ID 15c2:ffdc SoundGraph Inc. iMON PAD Remote Controller
Bus 001 Device 002: ID 046d:c504 Logitech, Inc. Cordless Mouse+Keyboard Receiver
Bus 001 Device 001: ID 0000:0000
razor@mediacenter:~/xpad$ make
make modules -C /usr/src/linux-headers-2.6.24-19-generic SUBDIRS=/home/razor/xpad
make[1]: Map '/usr/src/linux-headers-2.6.24-19-generic' wordt binnengegaan
  Building modules, stage 2.
  MODPOST 1 modules
make[1]: Map '/usr/src/linux-headers-2.6.24-19-generic' wordt verlaten
razor@mediacenter:~/xpad$ sudo make install
cp -f xpad.ko /lib/modules/2.6.24-19-generic/kernel/drivers/input/joystick
razor@mediacenter:~/xpad$ sudo modprobe -r xpad
razor@mediacenter:~/xpad$ sudo depmod
razor@mediacenter:~/xpad$ sudo modprobe xpad

2nd problem:
XBMC wont respond at all at my controller..
HTPC + Mediaserver
E8400 - ABIT I-N73HD - 2GB DDR2 - 3.5TB - Geforce G210 - ANTEC FUSION V2 - Ubuntu 10.04 - XBMC-PVR

TV-Server
Ubuntu 10.04 - Tvheadend - Smargo Reader - Oscam Card Server - 2x PCI DVB-C
Reply
#12
hmm checked the XBMC.log and noticed controller is being recognized, XBMC even logs the buttons are being pressed but nothing happens.

When i press my remote controll it works though.

http://www.pastebin.ca/1201180
HTPC + Mediaserver
E8400 - ABIT I-N73HD - 2GB DDR2 - 3.5TB - Geforce G210 - ANTEC FUSION V2 - Ubuntu 10.04 - XBMC-PVR

TV-Server
Ubuntu 10.04 - Tvheadend - Smargo Reader - Oscam Card Server - 2x PCI DVB-C
Reply
#13
Hmm got it fixed.. stupid error on my side though.. didn't change the name in keymap.xml. Didn't think it was neccesary for the origional xpad.

Works like a charm now!

Thanks.
HTPC + Mediaserver
E8400 - ABIT I-N73HD - 2GB DDR2 - 3.5TB - Geforce G210 - ANTEC FUSION V2 - Ubuntu 10.04 - XBMC-PVR

TV-Server
Ubuntu 10.04 - Tvheadend - Smargo Reader - Oscam Card Server - 2x PCI DVB-C
Reply
#14
Not exactley an expert on linux , but i would say i'm no noob.

But when i compile the driver supplied i get this

Quote:ghost@SATURN:/media/Media/Xbox Linux/xpad$ sudo make
make modules -C /usr/src/linux-headers-2.6.24-19-generic SUBDIRS=/media/Media/Xbox Linux/xpad
make[1]: Entering directory `/usr/src/linux-headers-2.6.24-19-generic'
scripts/Makefile.build:41: /media/Media/Xbox/Makefile: No such file or directory
make[2]: *** No rule to make target `/media/Media/Xbox/Makefile'. Stop.
make[1]: *** [_module_/media/Media/Xbox] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.24-19-generic'
make: *** [all] Error 2

I'm sure its a stupid error on my part, but i can't seem to place what's going wrong, the makefile is straightforward enough, and both files are in the same directory as the makefile, and before hand i made sure i installed all the essentials for build.

Can anybody point out what went wrong?

Nevermind, i realized my mistake right after i posted, I have a space in my path name its not recognizing the space
Reply
#15
Hi everyone,

I tried to compile the old xpad module because all buttons of my xbox controller didn't work. I had errors when i compiled xpad module on Gentoo 2.6.26-r1 .

Code:
make modules -C /usr/src/linux-2.6.26-gentoo-r1 SUBDIRS=/home/mimimati/.sourceApp/xpad
make[1]: entrant dans le répertoire « /usr/src/linux-2.6.26-gentoo-r1 »
  CC [M]  /home/mimimati/.sourceApp/xpad/xpad.o
/home/mimimati/.sourceApp/xpad/xpad.c: In function ‘xpad_probe’:
/home/mimimati/.sourceApp/xpad/xpad.c:495: erreur: ‘struct input_dev’ has no member named ‘cdev’
/home/mimimati/.sourceApp/xpad/xpad.c:564: attention : ignoring return value of ‘input_register_device’, declared with attribute warn_unused_result
make[2]: *** [/home/mimimati/.sourceApp/xpad/xpad.o] Erreur 1
make[1]: *** [_module_/home/mimimati/.sourceApp/xpad] Erreur 2
make[1]: quittant le répertoire « /usr/src/linux-2.6.26-gentoo-r1 »
make: *** [all] Erreur 2

So i modified xpad.c with new functions of input.h and now it works.

This is the patch and the file xpad.c :

Code:
381c381
<       struct usb_xpad *xpad = dev->private;
---
>       struct usb_xpad *xpad = input_get_drvdata(dev);
407c407
<       struct usb_xpad *xpad = dev->private;
---
>       struct usb_xpad *xpad = input_get_drvdata(dev);
495,496c495,496
<       input_dev->cdev.dev = &intf->dev;
<       input_dev->private = xpad;
---
>     input_dev->dev.parent = &intf->dev;
>     input_set_drvdata(input_dev, xpad);
Reply

Logout Mark Read Team Forum Stats Members Help
Xbox Controller S doesn't work0