SHANWAN / PS3 CONTROLLER Pi3 RETROPIE 3.6 BLUETOOTH SETUP
-
Firstly,I would like to say...what a great looking new forum,good stuff!
After two weeks of frustrating yet enlightening experiences configuring my new Pi3 and RetroPie I have finally managed to get RetroPie installed and running nicely inside OSMC whilst managing to learn a lot along the way....my smile is lowly returning!
I am however still having issues getting my Shanwan PS3 controller working on my system.To summarise,I have finally managed to get the controller working when plugged in via USB,with the quite major drawback of it constantly vibrating and not stopping!
After trawling so many different forums and sources of information I have not managed to resolve the issue and am nothing but more confused.
Consequentially I am requesting some help in this matter and would also like to make this into the definetive thread to solve these issues,which I know I am not the only one having.Once hopefully this is solved I would like to write a definitive guide as to how to to get to this stage for complete noob's like myself.
My Setup:
Pi3
OSMC with RetroPie 3.6 installed
Shanwan PS3 controller-Works via USB (well,while constantly vibrating at least!) but cannot get it to be paired via Bluetooth.Have attempted to configure via RetroPie Setup.Have tried hsitool scan and it doesn't see the PS3 controller,or incidentally a Wii Controller that I also have.I don not own a Playstation,so the issue is not because of the controller trying to pair to a playstation.The Bluetooth hsitool scan process does however 'see' both my Mac computers.
Any ideas my people??
-
Copying from github issues
Hi,
I have a SHANWAN PS3 GamePad. I'm failing to pair the controller with RetroPi.
I've installed the SHANWAN PS3 GamePad support via the setup-script, however, after
disconnecting the USB cable, the controller do not pair with the bluetooth controller.I've notice some strange facts:
- when I connect the controller via the USB cable it starts to vibrate and never stop (until I do not remove the cable)
- when I execute sudo sixpair I obtain the following output:
Current Bluetooth master: ff:00:03:8f:9f:7b
Setting master bd_addr to 00:1a:7d:da:71:04
However if I execute the same command again, the output does not change. Does it means that the
current Bluetooth master is not updated?
My dmesg:
[ 611.213027] usb 1-1.5.4.2: new full-speed USB device number 10 using dwc_otg
[ 611.315843] usb 1-1.5.4.2: New USB device found, idVendor=054c, idProduct=0268
[ 611.315874] usb 1-1.5.4.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 611.315927] usb 1-1.5.4.2: Product: PS3 GamePad
[ 611.315943] usb 1-1.5.4.2: Manufacturer: SHANWAN
[ 611.533062] usb 1-1.5.4.2: reset full-speed USB device number 10 using dwc_otg
[ 611.661390] input: SHANWAN PS3 GamePad as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.5/1-1.5.4/1-1.5.4.2/1-1.5.4.2:1.0/0003:054C:0268.0004/input/input2
[ 611.662171] sony 0003:054C:0268.0004: input,hiddev0,hidraw2: USB HID v1.10 Joystick [SHANWAN PS3 GamePad] on usb-3f980000.usb-1.5.4.2/input0 -
Some news.
I get the two ps3 controller to work (on rpi2) even if I do not know the wired combination of operations I did. I think the last operations I did where:- install ps3 controller + SHANWAN support via retro pi
- recompile sixpair downloaded from http://www.pabr.org/sixlinux/sixpair.c
- reboot
- manually execute sixpair from command line
I'm planning to attempt to replicate the process on a clean rpi2 + clean ps3 controller, since I do not wank to break the setup that is currently working.
-
Good Stuff Guancio!
Glad to hear that you made some headway and got this working....one way or another.I've been away from my Pi for the last few days,will investigate as of tommorow.
I would definetly not recommend that you 'wank' the setup however...
-
I just noticed that you said you got it working on a Pi2,as far as I'm aware there shouldn't be too many issues with this.It appears that pairing issues are however prevalent with RetroPie 3.6 and a Pi3.I have looked into some possible solutions that have cropped up in the following threads:
https://retropie.org.uk/forum/topic/70/pi3-internal-bluetooth-problems
https://retropie.org.uk/forum/topic/30/definitive-way-to-fix-ps3-controller-not-being-recognized/6
It does unfortunatly also appear that their may be an actual Bug on the Pi3 setup which is currently not solved and is causing the issue.It seems that being able ti pair the controllers but them not responding when a game is launched is also a common issue:
-
Another Useful thread regarding this:
https://retropie.org.uk/forum/topic/265/bluetooth-with-ps3-sixaxis-still-not-connecting
-
Yet another thread on this subject which may help:
https://retropie.org.uk/forum/topic/524/can-i-use-a-generic-ps3-bluetooth-controller-in-retropie/3
-
Another thread from someone else who is also considering taking a hammer to their Pi!!!
https://www.reddit.com/r/RetroPie/comments/49u3cq/bluetooth_not_working_with_pi_3/
-
With reference to this post:
http://blog.petrockblock.com/forums/topic/rpi3-and-ps3-controller-how-to/
sudo apt-get install pi-bluetooth
does not work for me.It say unable to locate package pi-bluetooth
Does anyone know if this is because retropie is installed under osmc?
-
Still no joy in getting the PS3 controller to pair after nearly a month!So much conflicting information out there.This is driving me to the very brink of insanity!
-
Also,just to confirm I have a great little Rii Bluetooth Keyboard that works with the Pi 3's onboard bluetooth flawlessly.
-
Wierdly when I do a hcitool scan the bluetooth only see's my iMac and not my PS3 controller or me Bluetooth keyboard which I'm actually using to type the command!
-
A simple video guide for those that can actually get this working:
-
Is there anyone out there who might be able to he me o this Bank Holiday weekend get my PS3 Shanwan to pair.....just once,so I know it is at least possible??!
-
Hello Wolfman,
I use this topic to tell you I have the same problem (maybe I have to create an antother topic ?) :
- Do a first installation on a raspberry3.
- I don't modify any configuration file.
- When I connect the controller via the USB cable it starts to vibrate and never stop (until I do not remove the cable).
- I can't use the controller or assign each command pad.
So I try this way but it doesn't work :
https://github.com/RetroPie/RetroPie-Setup/wiki/Setting-up-a-PS3-controllerIf I unplug the usb cable the controller stop to vibrate and red light continue to flash and that's all.
Here is my configuration :Pi Model: 3 model B
RetroPie Version Used: 3.7 (rpi-_rpi3)
Built From: SD Image
USB Devices connected: none
Controller used: PS3 ShanwanDo you find any information for this part ?
Thank you.
-
Hi Serum,
No unfortunately I have not found anyway to get the controller to work via Bluetooth with RetroPie.Also I have no definitive way of working out whether the Pi3 even see's the PS3 controller as no-one has given any information on this.This would be the way to tell if the bluetooth in the controller in faulty or functioning at the very least.
I can assign commands to the controller in RetroPie when it is plugged in via USB,but it just contantly vibrates while plugged in which makes it un-useable.
It has now been over 6 weeks and I am not any closer to solving this,but will hopefully find a solution and keep this thread updates.
-
I have now been digging around attempting to get the bluetooth controller in the Pi to see the PS3 controller at root level from the commandline using bluetoothctl following this guide:
https://wiki.archlinux.org/index.php/bluetooth#Bluetoothctl
The Pi does not see the PS3 controller when scanning for devices but every other bluetooth device around.This leads me to assume that one of two scenarios is ocurring:
1)The Bluetooth in the PS3 controller is broken
2)The Pi's Bluetooth needs sixpair to be running in order to see the PS3 controllerIf someone with more in-depth knowledge than me confirm whether either of these possibilities are true?
-
@Wolfman100
Howdy,
I've been following this thread for quite a while and have some good news for you! It is now possible to pair PS3 controllers solely using bluez.Szymon Janc, one of the bluez developers made some patches for bluez, supporting Gasia and Shanwan PS3 clones. They can be found on github and were made for the OpenELEC.tv media centre, however they didn't make it to the master branch, yet.
So here are instructions how to pair your PS3 controller using bluez:
- download the bluez-5.39 source from bluez.org
- apply the patches found on:
github: https://github.com/OpenELEC/OpenELEC.tv/tree/openelec-7.0/packages/network/bluez/patches
(when you download them manually, make sure to chose "raw mode" otherwise HTML tags will stay within the files, so that these patches can't be applied)
3) edit bluez-5.39/src/bluetooh.ver and add the line:sdp_*;
into the 'global' section. If you don't do it, the bluetoothd will not load the sixaxis plugin on startup because of undefined symbols
UPDDATE:
you can skip the above step if you download the already patched bluez source code from my github repo:git clone https://github.com/luetzel/bluez
- run configure, make, make install
./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var --enable-sixaxis make -j3 sudo make install
(note: make sure to 'apt-get install' libical-dev and systemd-dev)
5) run:sudo service bluetooth restart
- download QtSixA from http://qtsixa.sourceforge.net/ and follow the instructions in the INSTALL file; you will only need the 'sixpair' program in the 'utils' subdirectory. Change to the 'utils' dir and edit the Makefile: remove 'hcid_bin' from the line reading:
all: tools hcid_bin
then, do 'make'
If the compilation was successful, you can find the 'sixpair' program in the 'bins' directory. If it doesn't compile, you're probably missing some header files (check the gcc output and install missing dev-packages).
7) Connect your PS3 controller via USB to the Pi. Wait a few seconds until it starts to rumble. Then run:sudo ./sixpair
If successful, you should see something like:
Current Bluetooth master: DE:AD:BE:EF:00:00 Setting master bd_addr to: 00:1F:81:00:06:20
(I also tried bluetoothctl for pairing, but it always requested a key-code, which one cannot enter using the controller)
8) disconnect the controller from USB. Its LEDs start flashing. If the pairing is successful, only LED1 will stay on for controller 1 (LED2 for controller 2 and so on)
9) If you have to pair bluetooth keyboards/mice, simply use the retropie-setup.sh for doing that.
10) More detailed instructions can be found at at http://raspberryblog.de
UPDATE:
To validate these instructions, I tested them on my desktop PC under openSuSE/ Tumbleweed everything worked
as expected and even KDE recognizes my controller as joystick :-D.Cheers,
/luetzel -
@luetzel Amazing!!
Many thanks for contributing what looks to be some very useful information indeed to this thread.
All the info seems pretty in-depth and thus will probably take a minute for me to get my head around as I'm only just past noob status to all of this Linux business!
Will report back soon as.
Thanks again for your very much appreciated input.
-
I have already stumbled...
bluez.org doesn't seem to exit and I'm not exactly what patches to apply exactly and how to apply them.
I should point out also that I don't even know what a Fork or Branch is!
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.