Xboxdrv not working with PS3 controller

I'm trying to use my PS3 controller over USB. I've ran into a host of problems and I'm extremely frustrated at this. I'm using xboxdrv and nothing is happening. The system is recognizing there is a controller attached. I get the following when I'm running it with detach-kernel-driver.

Controller: PLAYSTATION(R)3 Controller
Vendor/Product: 054c:0268
USB Path: 001:028
Controller Type: Playstation 3 USB
Starting without uinput
Your Xbox/Xbox360 controller should now be available as: /dev/input/js0 /dev/input/event4
Press Ctrl-c to quit, use '--silent' to suppress the event output

Nothing happens when I'm using the controller. I press the PS button before I run xboxdrv, and the controller skips a blink and continues blinking.

I'm running Elementary OS, which is Ubuntu 12.04. I found that there was a kernel issue with supporting the PS3 controller so I installed the latest Kernel (3.14). I thought this would solve the issue but nothing.

I tried running the controller over Bluetooth, but I'm also having issues with it. This is due to the on-board bluetooth also not being supported by the kernel, and it is conflicting with a Bluetooth USB dongle that I got.

The is a perfect fake of the PS one. I asked another person that bought it and he said it worked perfectly with his PS3. I don't think this is the issue plaguing me. I will try and get an original one to try it out. I also ran Ubuntu 14.04 in virtual machine, and nothing as well.

Up for suggestions and help!

2 Answers

Chances are fairly high that the kernel version of Elementary OS is out-of-date. Updating to a more stable version of Ubuntu, such as 14.04, would be advisable. Once you've done that, have a look at the recommendations provided by Game Imps. They suggest running the xboxdrv command as such:

sudo xboxdrv --detach-kernel-driver

If this does not work, try removing your Bluetooth dongle and utilizing bluez with the 14.04 installation's kernel installed.

Your other, more costly, option, is to purchase a controller that supports Linux natively, such as the Logitech F710. This controller has out-of-the-box wireless support for most Linux distros, especially Ubuntu distributions, as it pairs not with Bluetooth, but with a dedicated USB 2.0 dongle (included with the controller).

This worked for me:

  1. Press the Playstation button on the controller
  2. Plug controller in via USB
  3. Pair with bluetooth whilst USB is plugged in
  4. Start xboxdrv whilst USB is plugged in
  5. Unplug USB whilst xboxdrv is running

I know it seems weird, but it's the only way it worked for me.

Also, the buttons change when on bluetooth, so run evtest and find what the /dev/input/event__ is for your controller. Then edit this to include the correct /dev/input/event__ and run it:

sudo xboxdrv --evdev /dev/input/event__ KEY_#300=y,KEY_#302=a,KEY_#301=b,BTN_DEAD=x,BTN_TOP=start,BTN_TRIGGER=back,KEY_#704=guide,BTN_BASE6=rb,BTN_BASE5=lb,BTN_TOP2=du,BTN_BASE2=dl,BTN_BASE=dd,BTN_PINKIE=dr,BTN_THUMB=tl,BTN_THUMB2=tr --evdev-absmap ABS_#49=rt,ABS_#48=lt,ABS_X=x1,ABS_Y=y1,ABS_Z=x2,ABS_RZ=y2 --axismap -Y1=Y1,-Y2=Y2 --calibration RT=0:127:255,LT=0:127:255 --mimic-xpad-wireless

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

You Might Also Like