4

Since the last officially supported version is "vivid"(Ubuntu 15.04) from QtSixA PPA and don't work for Ubuntu Xenial (16.04).

1
  • In recent versions of Ubuntu, it is not necessary to install anything anymore. I described the process in an answer over the original question since this one is specific to 16.04.
    – Didier L
    Apr 21 '21 at 23:11
9

On Ubuntu 16.04 - Xenial (maybe work on above)

Note: Don't work for PS3 Gasia / Shanwan game controllers (China/fake PS3 controllers) -- I tested only with a Shanwan controller!

Install from source

Since the last officially supported version is "vivid"(Ubuntu 15.04) from QtSixA PPA and don't work for Xenial (16.04). So we need compile from the only repo that works (and has updated) and allow to connect two controllers at the same time was the fork of RetroPie:

sudo apt-get install dialog build-essential pyqt4-dev-tools libusb-dev libbluetooth-dev python-dbus -y
wget https://github.com/RetroPie/sixad/archive/master.zip -O sixad-master.zip
unzip sixad-master.zip
cd sixad-master
make
sudo make install

Configuring

1.) First make sure you have Bluetooth on your computer.

2.) Plug in the controller via USB first to do the initial pairing. Run the sixpair command:

sudo sixpair

Sample of output when successful pair:

Current Bluetooth master: XX:XX:XX:XX:XX:XX
Setting master bd_addr to XX:XX:XX:XX:XX:XX

XX:XX:XX:XX:XX:XX is the MAC of your Bluetooth device.

3.) Unplug the controller and run:

sudo sixad -s

This starts the sixad daemon which waits for incoming PS3 controller connections. sixad will completely take over the Bluetooth adapter (exclusive control, so no other Bluetooth devices other than PS3 controllers will work after you start sixad).

4.) Press the ps3 button on your PS3 controller and wait for 2-3 seconds. You'll feel the controller vibrate when it successfully connects.

Sample of output when successful connected:

[ ok ] Starting bluetooth (via systemctl): bluetooth.service.
sixad-bin[23052]: started
sixad-bin[23052]: sixad started, press the PS button now
Watching... (5s)
sixad-sixaxis[23069]: started
sixad-sixaxis[23069]: Connected 'PLAYSTATION(R)3 Controller (**XX:XX:XX:XX:XX:XX**)' [Battery 05]

To turn off sixad and disable control: Just press CTRL+C

Test the functionality [Optional]

You can test the functionality of your controller through Jstest-gtk (install: sudo apt-get install jstest-gtk)

Disable sixad service [Optional]

Warning: sixad will completely take over the Bluetooth adapter (exclusive control, so no other Bluetooth devices other than PS3 controllers will work after you start sixad).

sudo update-rc.d sixad disable
sudo service sixad stop

References:

https://askubuntu.com/a/834907/139248
https://retropie.org.uk/forum/topic/2913/guide-use-qtsixa-on-ubuntu-16-04-and-derivatives

4
  • 1
    To give the control to the bluetooth controller you have to use: sudo sixad -r Sep 14 '17 at 21:06
  • 1
    Thanks! My controller worked with jstest-gtk, and then I configured it with steam (askubuntu.com/questions/348612/ubuntu-13-04-steam-dualshock3) Just a note for future users: the controller shuts down if idle for too long
    – josinalvo
    May 15 '18 at 16:04
  • 1
    This is also working for Bionic. Thanks, I was looking for something like this some time!
    – TheFisch
    Oct 13 '20 at 20:31
  • NOT RECOMMENDED in 2021: even after a make uninstall and a reboot, my bluetooth adapter was not found. Took me about an hour of trial and error to even start bluetooth after sixad took over.
    – kraxor
    Nov 14 '21 at 19:01

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.