• Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login
RetroPie forum home
  • Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login
Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

SHANWAN / PS3 CONTROLLER Pi3 RETROPIE 3.6 BLUETOOTH SETUP

Scheduled Pinned Locked Moved Help and Support
255 Posts 33 Posters 215.4k Views
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L
    luetzel @Ransom
    last edited by 23 Jun 2016, 06:11

    Hi @Ransom
    Sorry that the guide is not clear enough. Yes, you have to 'cd' into the bluez folder after cloning it from the git repo. And, ./configure, as well as make must be run while being within the bluez folder. If not sure, you can check your current working directory with 'pwd'. Thus:

    cd bluez
    ./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var --enable-sixaxis
    make

    should do it on your machine. Remember that 'make' or 'configure' may fail, if some header files are missing. Watch out for 'foo.h is missing' messages and install the missing dev packages using 'sudo apt-get install <name>-dev'.

    I haven't had time to update the instructions with a list of all package-dependencies for compilation on a freshly installed system.

    /luetzel

    1 Reply Last reply Reply Quote 0
    • D
      dagosand @luetzel
      last edited by 23 Jun 2016, 16:50

      @luetzel said in SHANWAN / PS3 CONTROLLER Pi3 RETROPIE 3.6 BLUETOOTH SETUP:

      @dagosand
      I don't think it is necessary to bother the bluez guys with this issue. It just due to the fact that /firmware is at a non-standard location in contrast to other distributions. Guess that it is already possible to pass a ./configure --flag for pointing bluez to the path of the /firmware directory.

      Great!
      Can you tell me how can I pass the correct flag in ./configure?

      thanks

      L 1 Reply Last reply 24 Jun 2016, 05:25 Reply Quote 0
      • L
        luetzel @dagosand
        last edited by 24 Jun 2016, 05:25

        @dagosand
        I checked ./configure --help for suitable flags pointing it to the firmware directory, but it doesn't seem to be present^^ However, nothing speaks against using a symbolic link to /etc/firmware on distributions using a non standard firmware location. In some distributions, the link is automatically created by post-install scripts of the .deb or .rpm package. If you compile from source you have to do it manually.

        1 Reply Last reply Reply Quote 1
        • A
          auswear
          last edited by auswear 27 Jun 2016, 21:11

          I am really struggling getting this working.. I've think I've done all the above steps correctly as I can get one controller to pair, but I can't get 2 to pair at the same time. It's either one or the other. What am I doing wrong?

          Also is there any way to stop the controller from vibrating every time I plug it into the USB to charge?

          L 1 Reply Last reply 28 Jun 2016, 05:43 Reply Quote 0
          • L
            luetzel @auswear
            last edited by 28 Jun 2016, 05:43

            Hi @auswear
            For the second controller, try to “register” it using sixpair, but without having the first controller already paired/connected via bluetooth. Then, check with ‘sudo bluetoohctl’ whether you can see hardware addresses of both controllers. For pairing the second controller, wait until LED 1 lights up on the first, only then press the PS button on your second controller. If this doesn’t help, remove both devices using bluetoothctl and start over again with sixpair. Both must be authenticated/trusted for pairing them at the same time. You can check/follow the pairing process with dmesg and bluetoothctl.

            About charging:
            It is not possible to charge Shanwan controllers without rumbling while being connected to an USB port of your Raspberry Pi/Computer. Here I use an USB wall charger instead. Since the LEDs do not indicate battery level of the controller, I
            use a ‘ USB charge doctor' in order to follow current/mA during charging. When mA drop below ~0.03, the battery is fully charged.

            1 Reply Last reply Reply Quote 0
            • H
              Hetoft
              last edited by 30 Jun 2016, 11:33

              Hi @luetzel (and all you others)

              Thanks so much for your work on this.

              I am trying to configure my two genuine PS3 controllers (of course, just starting off with one) on RetroPie 4.0 (newest beta) on OSMC on a RPi3 and the onboard bluetooth.

              I simply can not figure out how to get it to pair up. Even though I run the PS3 driver configuration from the RetroPie settings, whenever I disconnect it from the USB cable, it is not able to establish the bluetooth connection.

              Bluetooth is enabled and able to discover my devices. I also tried with a bluetooth USB dongle; same result.

              At some point in all of this tinkering, I managed to establish the bluetooth connection, with the controller vibrating and lighting in the 1 LED. However, I couldn't configure any of the buttons, and a jstest didn't react to any of the button presses. When I then rebooted my Pi, the connection was lost again.

              I know this thread is about the Shanwan controllers, but it seems you have plenty of knowledge about the controllers, so I though it'd be worth a try to ask here anyway...

              Thanks so much in advance. :)

              L 1 Reply Last reply 30 Jun 2016, 14:17 Reply Quote 0
              • L
                luetzel @Hetoft
                last edited by luetzel 30 Jun 2016, 14:17

                Hi @Hetoft,
                all what I can say is that you should try to monitor the pairing process in order to identify the reason why it fails.
                First of all, check the output of 'hciconfig', which should reveal something like this:

                hci0:   Type: BR/EDR  Bus: USB
                        BD Address: 00:1B:10:00:2A:EC  ACL MTU: 1017:8  SCO MTU: 64:1
                        UP RUNNING PSCAN
                        RX bytes:549 acl:0 sco:0 events:29 errors:0
                        TX bytes:1564 acl:0 sco:0 commands:29 errors:0
                

                If you don't see UP RUNNING PSCAN there is something wrong with your bluetooth device.

                Next, watch what happens using 'sudo bluetoohctl' when you press the PS button:

                [NEW] Controller 00:1B:10:00:2A:EC raspi5 [default]
                [NEW] Device 01:B6:AD:7F:63:25 PLAYSTATION(R)3 Controller
                [NEW] Device 01:B6:52:85:63:25 PLAYSTATION(R)3 Controller
                [NEW] Device 20:73:AB:91:DD:6F Bluetooth V3.0 Keyboard
                [CHG] Device 01:B6:52:85:63:25 Connected: yes
                

                Check the connection status of your controller with info <hw address>

                info 01:B6:52:85:63:25
                Device 01:B6:52:85:63:25
                        Name: PLAYSTATION(R)3 Controller
                        Alias: PLAYSTATION(R)3 Controller
                        Class: 0x000540
                        Icon: input-keyboard
                        Paired: no
                        Trusted: yes
                        Blocked: no
                        Connected: yes
                        LegacyPairing: no
                        UUID: Human Interface Device... (00001124-0000-1000-8000-00805f9b34fb)
                        Modalias: usb:v054Cp0268d0000
                

                Lighting of LED1 on your device indicates that it is connected and paired with your Pi. If you're not able to configure buttons, check whether your controller was registered as an input device. 'dmesg' should display something like this:

                [  482.434909] input: PLAYSTATION(R)3 Controller as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3:1.0/bluetooth/hci0/hci0:11/0005:054C:0268.0001/input/input0
                [  482.436176] sony 0005:054C:0268.0001: input,hidraw0: BLUETOOTH HID v0.00 Joystick [PLAYSTATION(R)3 Controller] on 00:1b:10:00:2a:ec
                

                If it wasn't registered as an input device, you probably have to add the 'joydev' and 'uinput' kernel modules into your /etc/modules (reboot), or load them manually with

                'sudo modprobe joydev'
                'sudo modprobe uinput'
                

                Cheers,
                /luetzel

                B 1 Reply Last reply 12 Jul 2016, 18:17 Reply Quote 0
                • W
                  Wolfman100
                  last edited by Wolfman100 7 Dec 2016, 19:32 12 Jul 2016, 18:15

                  Hey Grandmaster @luetzel !

                  Guess what?!My Shanwan controller broke....due to the crapy cheap lead it came with breaking the mini USB port pins!

                  So I bought another controller,and got it to pair no problem first time.........BUT.......now with this one I can't configure the buttons!Emulation Station detects the Gamepad but no button presses work for configuration.I have also checked 'jstest' and it seems to see all of the controllers various buttons,axis etc but doesn't respond (show any output) when I push the buttons while in 'jstest'.The same problem @Hetoft seems to be having.

                  As you seem to clearly be the bonafide expert in this PS3 controller drama any help would be very very well received!

                  Here is my 'dmesg' output:

                  [77212.502099] input: PLAYSTATION(R)3 Controller as /devices/platform/soc/3f201000.uart/tty/ttyAMA0/hci0/hci0:12/0005:054C:0268.0003/input/input4
                  [77212.508016] sony 0005:054C:0268.0003: input,hidraw2: BLUETOOTH HID v0.00 Joystick [PLAYSTATION(R)3 Controller] on b8:27:eb:a1:9b:7f
                  

                  According to this it seems to see it as an input device...although 'input4' it seems.Could this be part of the issue you think?

                  L 1 Reply Last reply 14 Jul 2016, 17:08 Reply Quote 0
                  • B
                    BuZz administrators @luetzel
                    last edited by 12 Jul 2016, 18:17

                    @luetzel - please consider styling your posts (eg using code blocks etc) http://commonmark.org/help/

                    To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

                    W 1 Reply Last reply 12 Jul 2016, 18:32 Reply Quote 0
                    • W
                      Wolfman100 @BuZz
                      last edited by 12 Jul 2016, 18:32

                      @BuZz NIce one @BuZz .Always wondered how people did that!

                      1 Reply Last reply Reply Quote 0
                      • L
                        luetzel @Wolfman100
                        last edited by 14 Jul 2016, 17:08

                        @Wolfman100
                        sorry for my delayed answer. Did you try to remove the existing/ broken controller using bluetoothctl?

                        Meanwhile I have patched the latest bluez-5.40 release and pushed it to my github repo https://github.com/luetzel/bluez/tree/bluez-5.40

                        It compiled without errors and I successfully paired both of my PS3 clones at the same time.
                        According to 5.40's Changelog it fixes some issues "with previously paired devices" whatever that means.

                        Cheers,
                        /luetzel

                        W 1 Reply Last reply 14 Jul 2016, 17:46 Reply Quote 0
                        • W
                          Wolfman100 @luetzel
                          last edited by 14 Jul 2016, 17:46

                          @luetzel no probs man!

                          Erm,I think I built a new system which I never paired the old (broken) controller with...as far as I can remember.

                          Do you think that it comes up as 'input4' could be an issue?Although strange that I don't get any response from button presses with 'jstest'.

                          'According to 5.40's Changelog it fixes some issues "with previously paired devices" whatever that means'

                          Hahah..mysterious!

                          I'll give the new patched bluez a go and see what happens on this never-ending quest to carry on my Donkey Kong adventures....

                          L 1 Reply Last reply 14 Jul 2016, 18:08 Reply Quote 0
                          • L
                            luetzel @Wolfman100
                            last edited by luetzel 14 Jul 2016, 18:08

                            @Wolfman100
                            No I don't think that 'input4' is a problem. My first controller pairs as input0, the second as input1 and so on. I guess that the numbering is related to the other input devices that are already paired when you connect your controller. My bluetooh keyboard appears as input2 and it doesn't really matter in what order I pair my devices.

                            W 1 Reply Last reply 14 Jul 2016, 18:17 Reply Quote 0
                            • W
                              Wolfman100 @luetzel
                              last edited by 14 Jul 2016, 18:17

                              @luetzel OK, that makes sense.

                              I just got this error when doing the 'make -j3' for your Bluez 5.40.


                              monitor/main.c:36:28: fatal error: src/shared/tty.h: No such file or directory
                               #include "src/shared/tty.h"
                                                          ^
                              compilation terminated.
                              Makefile:5663: recipe for target 'monitor/main.o' failed
                              make[1]: *** [monitor/main.o] Error 1
                              make[1]: *** Waiting for unfinished jobs....
                              Makefile:3129: recipe for target 'all' failed
                              make: *** [all] Error 2
                              
                              

                              L 1 Reply Last reply 15 Jul 2016, 05:24 Reply Quote 0
                              • L
                                luetzel @Wolfman100
                                last edited by 15 Jul 2016, 05:24

                                Hi @Wolfman100 ,
                                oops, sorry didn't notice that these files were missing after merging with the 5.40 branch.
                                Please clone the master branch (git clone https://github.com/luetzel/bluez) and try it again.
                                Should be fixed now.
                                Cheers,
                                /luetzel

                                W 1 Reply Last reply 15 Jul 2016, 11:57 Reply Quote 0
                                • W
                                  Wolfman100 @luetzel
                                  last edited by 15 Jul 2016, 11:57

                                  @luetzel Will do.Thanks my man.

                                  1 Reply Last reply Reply Quote 0
                                  • W
                                    Wolfman100
                                    last edited by Wolfman100 15 Jul 2016, 12:15

                                    @luetzel

                                    OK,so I got the Bluez Master to Make and Install fine.The controller Pairs no problem,but still can't configure controls.

                                    Here is my 'dmesg' output...looks like the same controller is registered three times....could this be part of the issue?It looks like the same controller is simultaneously input 0,input 4 and input 5 at the same time.I saw you mentioned removing controllers earlier,how do I do this?

                                    [  432.846781] usb 1-1.5: Product: PLAYSTATION(R)3 Controller
                                    [  432.846794] usb 1-1.5: Manufacturer: SZMY-POWER CO.,LTD.
                                    [  432.933985] input: SZMY-POWER CO.,LTD. PLAYSTATION(R)3 Controller as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.5/1-1.5:1.0/0003:054C:0268.0003/input/input4
                                    [  432.935581] sony 0003:054C:0268.0003: input,hiddev0,hidraw2: USB HID v1.11 Joystick [SZMY-POWER CO.,LTD. PLAYSTATION(R)3 Controller] on usb-3f980000.usb-1.5/input0
                                    [  434.086043] usb 1-1.5: USB disconnect, device number 9
                                    [  434.533717] usb 1-1.5: new full-speed USB device number 10 using dwc_otg
                                    [  434.636697] usb 1-1.5: New USB device found, idVendor=054c, idProduct=0268
                                    [  434.636710] usb 1-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=0
                                    [  434.636717] usb 1-1.5: Product: PLAYSTATION(R)3 Controller
                                    [  434.636724] usb 1-1.5: Manufacturer: SZMY-POWER CO.,LTD.
                                    [  434.642275] input: SZMY-POWER CO.,LTD. PLAYSTATION(R)3 Controller as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.5/1-1.5:1.0/0003:054C:0268.0004/input/input5
                                    [  434.642785] sony 0003:054C:0268.0004: input,hiddev0,hidraw2: USB HID v1.11 Joystick [SZMY-POWER CO.,LTD. PLAYSTATION(R)3 Controller] on usb-3f980000.usb-1.5/input0
                                    [65756.104806] usb 1-1.5: USB disconnect, device number 10
                                    [65767.938356] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
                                    [65767.938390] Bluetooth: HIDP socket layer initialized
                                    [65767.942313] input: PLAYSTATION(R)3 Controller as /devices/platform/soc/3f201000.uart/tty/ttyAMA0/hci0/hci0:11/0005:054C:0268.0005/input/input6
                                    [65767.943239] sony 0005:054C:0268.0005: input,hidraw2: BLUETOOTH HID v0.00 Joystick [PLAYSTATION(R)3 Controller] on b8:27:eb:a1:9b:7f
                                    [65814.026297] Console: switching to colour frame buffer device 240x67
                                    [65818.343306] Console: switching to colour dummy device 80x30
                                    
                                    
                                    L 1 Reply Last reply 15 Jul 2016, 16:16 Reply Quote 0
                                    • W
                                      Wolfman100
                                      last edited by 15 Jul 2016, 13:28

                                      On a side-note,other useful threads for conquering PS3 Controller Issues:

                                      Link 1
                                      Link 2

                                      1 Reply Last reply Reply Quote 0
                                      • L
                                        luetzel @Wolfman100
                                        last edited by 15 Jul 2016, 16:16

                                        Hi @Wolfman100
                                        for removing the controller, simply use sudo bluetoothctl. 'help' will list all possible commands. Then, remove your device with
                                        'remove <dev>' (replace <dev> with the hardware address of your controller). Then, try to pair it again using sixpair.

                                        W 2 Replies Last reply 15 Jul 2016, 18:24 Reply Quote 0
                                        • W
                                          Wolfman100 @luetzel
                                          last edited by 15 Jul 2016, 18:24

                                          @luetzel

                                          Well it seem's that under bluetoothctl their is only one controller paired,so I don't understand how when I do a 'dmesg' I get three different controllers with different inputs.I'm a bit lost here....

                                          osmc@osmc:~$ bluetoothctl
                                          [NEW] Controller B8:27:EB:A1:9B:7F osmc [default]
                                          [NEW] Device 00:26:5C:02:54:D2 PLAYSTATION(R)3 Controller
                                          [NEW] Device CC:C5:0A:1F:F6:C3 Bluetooth 3.0 Macro Keyboard
                                          
                                          
                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post

                                          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.

                                            This community forum collects and processes your personal information.
                                            consent.not_received