How to connect Sixaxis on 15.10?

How can I use PS3 Sixaxis gamepad on Ubuntu 15.10? I have tried different repos but I am always getting 404 not found.


Solution 1:

The easiest way to do this is to compile it yourself. Here's how I managed to get it working on Ubuntu 15.10 Wily.

~/$ sudo apt-get install pyqt4-dev-tools git 
~/$ sudo apt-get install libusb-dev libjack-dev libbluetooth-dev pyqt4-dev-tools
~/$ cd Downloads
~/Downloads/$ git clone https://github.com/falkTX/qtsixa.git
~/Downloads/$ cd qtsixa
~/Downloads/qtsixa/$ make
~/Downloads/qtsixa/$ sudo make install

After that it should be installed, and you can use the qtsixa program to connect to your device via bluetooth. TO do so, first connect your six axis controller to your computer via usb, and then enter the command below

~/$ sudo sixpair

After that unplug the usb from the controller and run the next command to connect to your six axis controller via bluetooth.

~/$ sixad --start

You will be prompted to press the Playstation button on your controller, which you actually need to hold down for a few seconds. Finally if everything worked, your controller should rumble for a second and you should be good to go.

Solution 2:

On Ubuntu 15.10/16.04 and Linux Mint 18, you can still use the QtSixA PPA, but specifying "vivid" as the Ubuntu version (15.04), since that was the last officially supported version. To do so, execute the following:

sudo add-apt-repository "deb http://ppa.launchpad.net/falk-t-j/qtsixa/ubuntu vivid main"
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 736E4F0B
sudo apt update
sudo apt install sixad

Note: as far as I can tell, the GUI based application is no longer useful, at least to detect and connect controllers through Bluetooth. Because of that, you need to use the command line-based applications, i.e. sixad and sixpair

Edit: Apparently and according to my tests, sixad starts automatically at boot, but doesn't work at all when that happens, having to stop it an re-start it to make it to work. To prevent sixad from being started at boot, you have to execute:

sudo sistemctl disable sixad

and, when you're going to use it, execute:

sudo sixad -s

of course, all the above is because QTSixA is no longer supported. The PS3 and PS4 controllers are supposed to work natively in Linux, but I still prefer to use it instead of the native support. I haven't be able to connect my PS3 controllers natively, and when I use QTSixA, I can do other things like specify the Bluetooth MAC address to be paired.

I think I will mail the developer to know if it's possible for him to resume the support. I believe that applying only small modifications, the project could work properly out-of-the-box. And, even without doing anything, the PPA could still work.

Solution 3:

Run:

sudo add-apt-repository ppa:falk-t-j/qtsixa
sudo apt-get update
sudo apt-get install qtsixa

Connect with your USB : sixpair

Disconnect sixaxis from USB sixad -s

Press the PS button to connect via bluetooth.

Source

Solution 4:

Recent add on when compiling from source:

  • The only repo that allowed me to connect two controllers at the same time was the fork of RetroPie: https://github.com/RetroPie/sixad
  • I experienced the problem that even when pairing went smooth, I got no data at /dev/input/js0. I could only solve that by using another Bluetooth dongle.

One more thing: Some tutorials write "Press PS key on the controller to connect". But I had to press and hold the key for 1-2 seconds.

Hope that helps if you experience issues.