Kodi Community Forum

Full Version: [Ubuntu] Concise install for 360 wireless controllers
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
Running Ubuntu 9.10 minimal with xbmc 9.11.

I have read a plethora of info on getting wireless controllers working and have been swamped with info. Not sure if xpad is already installed, not sure if I should use grumbels xboxdrv. Not sure if I should blacklist xpad IF I install xboxdrv.

Then Im not completely sure how to get it installed. Do I need to compile it? Download and run somthing like a apt-get? Pull from a git? I have seen so many different ways.

Is this a good thread to follow?
http://forum.xbmc.org/showthread.php?tid...light=xpad

Should I get the newest 0.5 source code from here, and what do I do with it if so? What about the ppa from the same page, would that work for 9.10?
http://pingus.seul.org/~grumbel/xboxdrv/

I realize that I have asked a lot, most likely none of my questions are formed correctly. Its just that I have all this info and dont want to do the wrong thing. My being stymied and wanting to purge my head of questions has now overwhelmed me not wanting to be belittled for lack of linux knowledge.

Any help is welcome.
i used this tutorial with "0.5 source code" to install my Xbox Controller S

http://ubuntuforums.org/showthread.php?t=825464
Thank you very, very much. Greatly appreciated.
Worked and compiled once I got all the dependencies. Instead of worrying about which is the newest version I pulled from the git hub which compiled what I think is 0.6. Its said that it doest need to know if the controller is wireless or wired. Have not tested it yet.

I just 'cd' to the directory I wanted the get hub to download to then:

'git clone git://github.com/Grumbel/xboxdrv.git' then scons in that dir for the newest driver.
Ive tested this newer driver, you do not need to choose if its wired or wireless, once you start the driver and hook up all your wireless controllers you cant hook up wired ones for a mixed setup and vise versa.

But the Wireless ones seem to work in the console at least. I just cant seem to get a Keymap working.

I have tried to put a Keymap.xml in/home/xbmc/.xbmc/userdata/keymaps but when I load the xboxdrv it says that no keymap is present.

Also, does anyone know how to automatically load this driver on boot? If so would it be beneficial to auto start 4 instances of the driver to that controllers can be turned on and added at will?
frostypepper Wrote:Ive tested this newer driver, you do not need to choose if its wired or wireless, once you start the driver and hook up all your wireless controllers you cant hook up wired ones for a mixed setup and vise versa.

But the Wireless ones seem to work in the console at least. I just cant seem to get a Keymap working.

I have tried to put a Keymap.xml in/home/xbmc/.xbmc/userdata/keymaps but when I load the xboxdrv it says that no keymap is present.

Also, does anyone know how to automatically load this driver on boot? If so would it be beneficial to auto start 4 instances of the driver to that controllers can be turned on and added at will?

yesterday i got my xbox 360 wireless controller. i have included the 'xpad' kernel driver in my small xbmc-distro (running kernel 2.6.35.1) and it works with xbmc (maybe some keymappings must be changed). the xpad driver works now with xbox360 controllers (tested with 2.6.35). maybe you can try it also with the kernel xpad driver (dont know which kernel you use)
@openelec.tv
Do all the lights work on your wireless controller and does it actually turn off the controller after a period of no use? Have you tried mixing it with a wired controller?

The xboxdrv driver does assign a led to the correct player and turn off the controller.

I dont think xpad is present in a minimal install of Ubuntu. I looked for it via lsmod and dont see it.

Maybe I'll give them a try if I can find the newest version and it supports everything nicely.
frostypepper Wrote:Do all the lights work on your wireless controller

yes, all 4 LEDs in the ring

frostypepper Wrote:and does it actually turn off the controller after a period of no use?

after which time it does the controller turn off?

frostypepper Wrote:Have you tried mixing it with a wired controller?

no, because i only have this controller :-) and i have this only for testing

frostypepper Wrote:The xboxdrv driver does assign a led to the correct player and turn off the controller.

I dont think xpad is present in a minimal install of Ubuntu. I looked for it via lsmod and dont see it.

Maybe I'll give them a try if I can find the newest version and it supports everything nicely.

i will try to test the xboxdrv driver... but the xpad driver loads automatically and most keys working without any customization with xbmc...
Quote:after which time it does the controller turn off?

Woops! Guess I had a dyslexic moment (or would that be a lysdexic moment Wink

What I meant to ask was, does the controller turn itself off after a certain amount of time.

Quote:yes, all 4 LEDs in the ring

Does led 1 light up, or all of them? Im trying to get one led per controller; just to be fancy.

I think xboxdrv supports guitars and dance mats too. Not really seeing myself using a dance mat, but who knows!
frostypepper Wrote:Woops! Guess I had a dyslexic moment (or would that be a lysdexic moment Wink

What I meant to ask was, does the controller turn itself off after a certain amount of time.



Does led 1 light up, or all of them? Im trying to get one led per controller; just to be fancy.

I think xboxdrv supports guitars and dance mats too. Not really seeing myself using a dance mat, but who knows!

afaik xpad driver supports no also other devices then the pad. all 4 LEDS are blinking Rolleyes
imo, xpad is shite. you can't configure it like you can xboxdrv.

with xpad the controls were too sensitive and at one point (maybe not now?) there was an issue because the dpad was registered as axis and not as buttons. which would cause a single dpad button press to send the stupid focus into scroll mode which was awful when trying to move down a single line-item.

my advice: blacklist xpad and use xboxdrv (yes, you have to blacklist xpad if you want to use xboxdrv otherwise you will have a module and a userspace driver fighting for control of the ... controller)

once you have your controller working in linux (ie, the driver loads and you can use jstest successfully) THEN you should focus on getting it to work with xbmc.

you can get a proper keymap for the xboxdrv driver from this thread:
http://forum.xbmc.org/showthread.php?p=5...post572507

However, know this: I am using 10.04 therefore you *may* have to tweak settings for 9.10. I don't believe you *should* have to, but it may be possible.

SDL button/axis mappings to jstest button/axis mappings: add 1

so jstest reports a button as button 0, in xbmc/SDL it is button 1

just make sure your controller works with jstest before even thinking about xbmc.

xbmc troubleshooting:

even if you don't have a working keymap, xbmc should at least register the button presses.

with xbmc running, open a ssh/telnet session to your xbmc box from another computer. and tail your /home/{user}/.xbmc/temp/xbmc.log file

when you push a button you will see a down event and up event and it will tell you the number of the button that was pressed. edit your keymap file to fix the buttons/axis that are not working properly.
Yea, xpad isnt quite ruffling my skirt, I may stick to xboxdrv.

The lines you added to rc.local call the xboxdrv daemon, but is /usr/local/bin/xboxdrv pointing to the directory that the driver is in or actually calling the driver?

Would I have to actually 'make install' xboxdrv (or somthing similar that I dont know about) to be able to call it without running it as ./xboxdrv? If not I dont understand how to call it in the xboxdrv-daemon.

I dont think the daemon is running, the controllers are not recognized when I sync them. Do I need to push my xbmc account into root areas to do it? I ran 'ps aux' to see what is running and haven't been able to see it.

I know that I will have at minimum 2 to 4 wireless controllers connected at all times. Should I just bypass the daemon altogether and just run 2 to 4 instances (just in case 4 people want to play) all the time?
frostypepper Wrote:The lines you added to rc.local call the xboxdrv daemon, but is /usr/local/bin/xboxdrv pointing to the directory that the driver is in or actually calling the driver?

I'm calling the executable itself. /usr/local/bin is where I copied the driver and daemon script after I compiled it. (daemon script is in the tools folder.)

frostypepper Wrote:Would I have to actually 'make install' xboxdrv (or somthing similar that I dont know about) to be able to call it without running it as ./xboxdrv? If not I dont understand how to call it in the xboxdrv-daemon.

I don't think the makefile has an action for install (at least it didn't when I started using it...). Just "sudo cp {file} {path-of-your-choice}" and edit the locations in rc.local accordingly.

frostypepper Wrote:I dont think the daemon is running, the controllers are not recognized when I sync them. Do I need to push my xbmc account into root areas to do it? I ran 'ps aux' to see what is running and haven't been able to see it.

Worry about getting xboxdrv running first, then you can mess around with daemonizing it.

frostypepper Wrote:I know that I will have at minimum 2 to 4 wireless controllers connected at all times. Should I just bypass the daemon altogether and just run 2 to 4 instances (just in case 4 people want to play) all the time?

Some people prefer to just call the executable at startup. I choose to daemonize because it allows you to hotplug the wireless dongle. If for some reason it gets unplugged you'd have to manually kill and restart the driver. AFAIK, you should be able to turn off the controller itself and re-authenticate to the dongle with no issues, so using the daemonize script is not essential. It was 'more' essential when I was using a wired xbox360 controller (to achieve hotplug ability.)

Cheers
I can manually start the driver, compiled it from the git hub (I think v0.6 is out) and stuck it in my usr/local/bin along with the daemon that came with the source files.

I putty into a console and can run multiple instances of the driver; well in this case I only have 2 wireless controllers, so two instances. The controllers push data to the screen when I dont run it silent. I have even ran zsnes and played some games (before the emulator hard locks my system) so I know it works.

I have added the daemon to the rc.local similar to how bobb0 did; but it doesnt recognize the controllers.

I have manually added a line to rc.local to run a instance of xboxdrv by adding '/usr/local/bin/./xboxdrv --wid 0' and it seemed to work.

I added the exact same thing right after but called '/usr/local/bin/./xboxdrv --wid 1' and it did nothing for my second controller.

I thought calling the driver directly was working yesterday, but now it doesnt turn on even the first controller when I reboot. Strange, I have to be doing something wrong.

I think ultimately hot-plugability (yea, I know its not a word) would be the best option.
Its really weird, I cant seem to run the xboxdrv-daemon in any capacity. Cant see it via 'ps aux', I have tried just adding it to the rc.local with no success. I have also tried adding it to /etc/init.d/local (which I read might work) with no success.

I for some reason just cant automatically start more than one instance of xboxdrv via re.local, but I can start as many manually.

I have been playing around with many configurations; thank goodness I have a solid state drive for root. It reboots so quickly.
Pages: 1 2