SHANWAN / PS3 CONTROLLER Pi3 RETROPIE 3.6 BLUETOOTH SETUP
-
@dhanar10 Hi,thankyou for the update with your success.I've just randomly seen this as it seems that I do not get properly notified of new posts.
I'm curious as to how you've managed to get this working,as currently I still cannot get the SZMY-POWER pad to pair correctly other than one rare time!
-
I can also now happily confirm that I have got the SZMY-POWER pad paired and working!
I achieved this on the latest build of RetroPie running inside OSMC as 'RetroOSMC'.
The steps taken were as follows:
1)Updating RetroPie Setup to latest build.
2)Uninstalling all PS3 controller packages
3)Installing 'GASIA ONLY' PS3 package
4)navigating via SSH to
cd /usr/sbin/
5)Changing the permissions inside this directory by doing:
sudo chmod 755 sixad-sixaxis
6)Then restarting the Sixad Daemon:
sudo /etc/init.d/sixad restart
7)Happy Days!!
I'm not sure exactly what has changed for this to now work but I am assuming it's something to do with the RetroPie build?
I am over the moon that this is now working as I actually feel that the SZMY-POWER controllers are much better build quality than the SHANWAN's and actually eventually now seem to not require any Bluez patching to be done etc.
I just hope that the pairing is consistent and reliable.Fingers crossed.
-
Hmmmmmm...as ever yet more work to be done! :-(
Controller paired and worked fine.I quit Emulation Station numerous times and booted back in and the controller was still paired nicely.
The stumbling block however came when I rebooted the Pi itself,as I wanted to check the stability of the pairing.Upon rebooting the Pi and then back into Emulation station,the one light on the controller stays on indicating that it is paired,however the controls don't do anything and when plugging the controller in via USB lead it also doesn't work (which previously worked with no trouble) and instead it just starts rumbling while the 1+3 lights stay on and then just continues to endlessly rumble even when I unplug it from the USB with no way to stop it!!!Arrrrgggggghhhhhhhhhh!!!
SO CLOSE.
-
Got the SHANWAN controller working like this:
Insert the bt-dongle, fire the retropi up.
Update all packages
- remove sixad installation from gui
- sudo apt-get update
- sudo apt-get bluez-tools (at least CSR 4.0 wasn't fully recognized without it)
- sudo hciconfig hci0 up (at least CSR 4.0 required this)
- reboot
- install the ps3contoller from the GUI (extras)
- install/config the SHANWAN controller (third option)
- Pair the controller by plugging it in via usb-cable for few seconds (it rumbles). Press the p3-button
- remove the usb cable and press the p3 button. It takes few moments while all the leds blink and then only the 1st led should be lit.
- configure the input using the gui.
If it still does not work, buy CSR 4.0 -bluetooth adapter. Then it's guranteed to work.
-
I have worked out that the issue seems to be that when rebooting the system the Sixad Daemon does not restart and after running the following again it once again it seems to pair:
sudo /etc/init.d/sixad restart
Can anyone help me with how to make this run upon Reboot/Launch?I think this may well solve the issue
-
I can confirm that if I reboot and restart the Sixad service it now pairs every time without fail,if someone could just enlighten me as to how I can make this automated so that it restarts on reboot automatically that would be amazing.
-
@Wolfman100 i finally got my SZMY-POWER controller to work even after reboot. Stoked! What worked for me was after you restart the sixad service and pair the controller, save the sixad as a daemon by typing "sudo update-rc.d sixad defaults" then reboot and it should be all good.
I noticed from test playing that the controls get very laggy. Has anyone experienced this? I have to literally point my controller at the pi. I wonder if it's because it's sitting right next to my xbox one s (which is turned on) in the shelf under the tv, and my router is sitting behind the tv. Could that cause any interference? It's pretty bad trying to control games. Bt signal seems very weak. Gotta be within 3 feet to work properly, still with minor lag.
Would appreciate any feedback and help. Thanks guys. I've learned so much from everyone at this forum.Happy New Year!
Cheers!
-
@Krayzie I now too have managed to get it paired everytime by adding some script.I think my case is slightly different as I am running RetroPie inside OSMC.
Regarding the lag,mine seems to be OK...slight lag,but bearable.Bear in mind that the use of shaders and high-res rendering etc will increase the lag time considerably.
-
I am interested on getting a PS3 gamepad because it has a similar symbol layout and button layout in Japan to the one of a SNES gamepad, is true that the XBOX gamepad uses the same XABY buttons as a SNES but its locations are swapped
-
hello
All the messing around Ive done with this! lol I was on retrOSMC, but now have retropie on attract 200gb image. I couldve bought 10 genuine PS3 controllers with all the time Ive burned.. hehe anyway all part of the fun, init. What actually worked for me was this,.. https://raspberrypi.stackexchange.com/questions/54522/retropie-ps3-controller-over-bluetoothHad to configure buttons which took a while but got there in the end!! Aint possible for retropie build guys to incorporate this so it works out the box?? just a thought. would save 1000's man hours globally Im sure! LOL
cheers
-
There's so much to read.. and I am totally new to all of this. I am having the same issue, my replica PS3 controllers will not pair wirelessly and there is a constant vibration when plugged directly in, how do I fix this?
-
ShanWan gamepad controllers in Linux - vibration bug fix for the USB connection
Original idea:
https://forums.gentoo.org/viewtopic-t-1038906-start-0.htmlUbuntu (Should work for RetroPie which is debian based):
Kernel recompillation (https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel).
sudo apt-get source linux-image-$(uname -r)
sudo apt-get build-dep linux-image-$(uname -r)
cd linux-4-4-0 (for 16.04, may be different in the newer version)
edit drivers/hid/hid-sony.c:+/*
-
- The ShanWan PS(R) Ga`epad reports the same id as the Sony SixAxis, therefore
-
- it can't be added to sony_devices[], but we still need to know which one
-
- we're dealing with.
- */
+static int is_shanwan_gamepad(struct hid_device *hdev)
+{ - return strstr(hdev->name, "ShanWan") || strstr(hdev->name, "SHANWAN");
+}
static __u8 *sixaxis_fixup(struct hid_device *hdev, __u8 *rdesc,
unsigned int *rsize)
{<---->
static __u8 *sony_report_fixup(struct hid_device *hdev, __u8 *rdesc,
unsigned int *rsize)
{
struct sony_sc *sc = hid_get_drvdata(hdev);- /*
-
- The ShanWan gamepads, when used over USB, times out when
-
- initialising reports, but it works just fine without init.
- */
- if((sc->quirks & SIXAXIS_CONTROLLER_USB) && is_shanwan_gamepad(hdev))
-
hdev->quirks |= HID_QUIRK_NO_INIT_REPORTS; /* * Some Sony RF receivers wrongly declare the mouse pointer as a * a constant non-data variable. */ if ((sc->quirks & VAIO_RDESC_CONSTANT) && *rsize >= 56 &&
<--------------->
/* * Some compatible controllers like the Speedlink Strike FX and * Gasia need another query plus an USB interrupt to get operational.
-
* The ShanWan gamepads don't like these additional steps. */
-
if(is_shanwan_gamepad(hdev))
-
goto out; ret = hid_hw_raw_request(hdev, 0xf5, buf, SIXAXIS_REPORT_0xF5_SIZE, HID_FEATURE_REPORT, HID_REQ_GET_REPORT);
compile kernel with:
fakeroot debian/rules cleanquicker build:
fakeroot debian/rules binary-headers binary-generic binary-perarch
install the new kernel
cd ../
sudo dpkg -i linux-headers*.deb linux-image-*.debLakka:
Compiling with Ubuntu (http://www.lakka.tv/doc/Compiling-Lakka/):
sudo apt install build-essential u-boot-tools
(the second is needed for mkimage command)git clone https://github.com/libretro/Lakka-LibreELEC
cd Lakka-LibreELEC
DISTRO=Lakka PROJECT=Generic ARCH=i386 make image # for 32 bits PCsinterrupt compillation during linux kernel compillation (when driver section is started), edit build.Lakka-Generic.i386-8.0-devel/linux-4.9.29/drivers/hid/hid-sony.c as before
continue compillation
DISTRO=Lakka PROJECT=Generic ARCH=i386 make image # for 32 bits PCsflash image on USB
install image from USBSwitch off ribbon (needed for my old Acer AA0 110 netbook):
with USB enter command line:- At the boot press tab and type:
live retroarch=0 tty
after logo appears press Alt+F3 - edit roms/System/linux.conf (or similar file name) adding in the beginning:
TIMEOUT 15
SAY PRESS TAB FOR OPTIONS
INTERRUPT 1
(or option which is 0 there). The exact definition can be checked in *conf file in ~/
Reboot from main disk.
- At the boot press tab and type:
linux retroarch=0 tty
after logo appears press Alt+F3
type
retroarch
see error if retroarch does not start and edit
.config/retroarch/retroarch.conf
add line:
menu_shader_pipeline = "O" -
-
wow that looks a bit hard core! Anyway, thought I'd chime in with another issue Im facing..
now my clone shanwan PS3 controllers been working awesomely now for months until I did a full retropie update.
Now they still work, but will not pair to player 1 or position 1 led. it always pairs to player 2. Then the 2nd controller pairs to player 3 etc.. I have completely removed PS3 driver, reboot, reinstall shanwan, reboot, but still same behaviour. Even tried without my keyboard plugged in.
I looked in retropie bluetooth see if anything to clear in there, but nothing.
Is there some residual config thats not being cleaned up by a PS3 driver uninstall? Can I try a manual clean up to start from scratch so to speak?
What was in this latest update, or maybe just something I've done wrong?cheers
-
@trevevs funnily enough I have the same issue. would love to know how to fix this too!
-
hello again
gave up and just whacked a fresh MLP image on my 500gb ext USB disk. backed up my game saves from the rom directory 1st! :-)
Wish I'd done it ages ago, as now everything works brilliantly! woohooI did manage to break it again after trying to put a kodi build on (wont be doing that again!) So now refreshed my build and everything hunky-dorey again! Just thought I'd let you guys know.
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.