RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Sony DualShock 3 - call for testers: "sixaxis" script module

    Scheduled Pinned Locked Moved Ideas and Development
    sixaxisdriverbeta
    208 Posts 24 Posters 34.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.
    • M
      MadHorse @psyke83
      last edited by MadHorse

      @psyke83 I have just one Gasia clone controller, but if can be of help I may send it to you.
      If the shipment price is not too high it can be done.
      Please let me know.

      1 Reply Last reply Reply Quote 0
      • M
        MadHorse
        last edited by

        @psyke83 do you think it will be possible to integrate in the next release both the sixad driver and the sixaxis even if it's not working with gasia controller?
        It seems to me that it is working much better than the sixad driver, it allows me to connect multiple controller without problem while the sixad driver it givesme problem very often.
        Thank you very much

        1 Reply Last reply Reply Quote 0
        • P
          psyke83 Global Moderator
          last edited by psyke83

          This post is deleted!
          1 Reply Last reply Reply Quote 0
          • P
            psyke83 Global Moderator
            last edited by

            I've updated the PR with a potential fix for Gasia pads if anyone is interested in testing. The fix is specific to the customhidsony module which should get installed along with the sixaxis module, but you also need to manually install custombluez so that the BlueZ compatibility for third-party sixaxis controllers will work.

            @MadHorse,

            Unfortunately, sixad will interfere with the native driver, so both can't be used at the same time. We've no plans to remove sixad, however, so it'll always be available for manual installation. Perhaps the sixad daemon could at least be updated to use the newer controller button map so that it will better co-exist with the new driver, but I haven't touched that yet. In the meantime, I'd appreciate if you could test the PR.

            edge3000E 1 Reply Last reply Reply Quote 0
            • S
              Silent
              last edited by

              I'm willing to give it a try soon with my 2 legimate DS3 controllers, but I have a doubt I'd like to clarify first - how is the situation with analog triggers? Normally they are not an issue but now with Steam Link being available for rpi and Retropie, and with Moonlight Game Streaming, lack of pressure sensitivity on triggers with a sixad driver is somewhat annoying.

              1 Reply Last reply Reply Quote 0
              • edge3000E
                edge3000 @psyke83
                last edited by

                @psyke83 Thank you for your work on the sixaxis scripts!

                After I setup a new Stretch build on my Pi 3B+ I found I could no longer get more than 4 dualshock3's to connect at the same time using the ps3controller driver. I installed your sixaxis PR and am happy to report I can get 5 official dualshock3's working great! I will borrow at least 1 more PS3 controller and do some more thorough testing to make sure 6player Xmen arcade still works.

                Inputs seemed very responsive as if the input lag is reduced as well.

                Thanks again!

                1 Reply Last reply Reply Quote 0
                • S
                  Silent
                  last edited by Silent

                  So I removed ps3controller and installed sixaxis (rebased on the most up to date RetroPie-Setup) and ran into a weird issue...

                  After pairing my two legimate DualShock 3's I did not need to reconfigure them in EmulationStation, they worked as is! However, I can't get them to work in any of RetroArch emulators.

                  I tried removing all gamepads from es_input.cfg and it did not help - later I'll try resetting ES controls completely and maybe re-pairing the controllers.

                  What worries me is that nobody else mentions an issue like this... puzzling.

                  pjftP 1 Reply Last reply Reply Quote 0
                  • pjftP
                    pjft @Silent
                    last edited by

                    @Silent Have you tried re-configuring them in ES, though? That's what then sets up the controls in the remaining emulators - maybe there's something missing there, even though they paired and worked just fine?

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      Silent @pjft
                      last edited by Silent

                      @pjft Yes, I have. One thing worth noting is that libretro joystick configuration shows both pad 0 and 1 as "not connected".

                      That said, I'll try one more time.

                      EDIT:
                      I have repeated the steps (including removing es_input and re-adding onfinish action for it), and it works fine everywhere (including Retropie-Setup and runcommand), but not in game. Interestingly, when launching the game it says "controller connected" but no button works.

                      EDIT2:
                      An entry in retroarch-joypads is also being created, so I think there may be something I need to re-set in retroarch configs.

                      1 Reply Last reply Reply Quote 0
                      • S
                        Silent
                        last edited by Silent

                        Update - I tried installing ps3controller driver again and it didn't even want to pair - but thankfully, I had a full SD card backup I made just before swapping drivers (guess I expected problems) and everything works flawlessly now.

                        So all in all, I am not using this driver yet, but I have a clean starting point I can re-try from at a later point. I'll make use of this opportunity to compare retroarch config files with what I remember from the "broken" install and see if I can find the difference.

                        EDIT:
                        I can't find any differences in config files (other than different files in retroarch-joypads, of course). However joypad assignments in Configuration Editor now show PLAYSTATION(R)3 Controller, as expected - after migrating drivers this menu claimed pads are not connected.

                        edge3000E 1 Reply Last reply Reply Quote 0
                        • edge3000E
                          edge3000 @Silent
                          last edited by

                          @Silent Good call making a backup beforehand! The version of sixaxis and related scripts I am running is psyke83's PR test branch of sixaxis, its working great for me. I never had much luck with the up to date RetroPie-Setup version you tried.

                          These are the steps I did to install it, quoting from earlier in this thread:

                          @psyke83 said:

                          You need to be relatively comfortable with using the command-line to test.

                          These commands will enable the PR branch:

                          cd RetroPie-Setup
                          git remote add psyke83 https://github.com/psyke83/RetroPie-Setup
                          git fetch psyke83
                          git checkout sixaxis
                          

                          Make sure to go back to the official branch after testing the PR! Uninstall sixaxis from the menu, then:

                          cd RetroPie-Setup
                          git checkout master
                          S 1 Reply Last reply Reply Quote 0
                          • S
                            Silent @edge3000
                            last edited by

                            @edge3000 Then the steps are identical, the only difference is that I rebased this PR on top of up-to-date RetroPie-Setup because I didn't want to lose newest Setup features. I may try again without rebasing, however. After all, if it ends up working fine I can restore Setup back to master.

                            edge3000E 1 Reply Last reply Reply Quote 0
                            • P
                              psyke83 Global Moderator
                              last edited by

                              @Silent

                              The hid-sony driver uses a completely different button mapping to the old driver, but also identifies itself with the manufacturer prefix -- so you should look for Sony PLAYSTATION(R)3 Controller.cfg.

                              S 1 Reply Last reply Reply Quote 0
                              • S
                                Silent @psyke83
                                last edited by

                                @psyke83 As far as I understand, name doesn't really matter here. I wiped retroarch-joypads when migrating drivers anyway, and I did have a .cfg generated there, the fact whether it had "Sony" prefix or not didn't really bother me.

                                I do wonder however why I did not have to remap the gamepad after migrating drivers. Perhaps I had some older mappings lingering, as right now (after revert, without sixaxis drivers) I my es_input.cfg has mappings for both PLAYSTATION(R)3 Controller and Sony PLAYSTATION(R)3 Controller. I thought that was my PS3 pads presenting differently, as one of them is from Fat PS3 era, while the other was bundled with PS3 Super Slim and they are in fact a bit different - but that doesn't seem to be the case.

                                P 1 Reply Last reply Reply Quote 0
                                • P
                                  psyke83 Global Moderator @Silent
                                  last edited by psyke83

                                  @Silent

                                  Even if you never touched this PR, the hid-sony kernel driver is used on the USB connection, which is likely the reason why you already had a mapping (with the Sony prefix). This PR installs a patched version of this driver; if you're on jessie, the mappings will be different from the stock version, but they are identical to the default stretch version.

                                  If you're using jessie, keep in mind that we recently dropped support, so it would be a good idea to upgrade to a stretch-based image regardless of whether you intend to use this PR.

                                  I can't say for sure why the buttons aren't being detected in emulators, but if you are on jessie, it's possible that you still have the old mappings. Manually deleting the Sony mappings and setting up again might fix your issue.

                                  You can try running evtest (from the package of the same name) to check if controller inputs are working correctly, to rule out driver issues.

                                  S 1 Reply Last reply Reply Quote 0
                                  • S
                                    Silent @psyke83
                                    last edited by Silent

                                    @psyke83 I am not on jessie, no - I run an up to date Stretch version. It's just that I used ps3controller until now.

                                    Good call about USB controllers however! That's most likely the reason.

                                    I did remove mappings completely after initially complaining about that in this thread, reconfigured everything, ensured retroarch does indeed have a .cfg file for this joypad - still, no dice, and an inbuilt joypad selection in Configuration Menu showed controllers as "disconnected".

                                    Since I was unable to go back to proper BT connection after uninstalling sixaxis and going back to ps3controller but restoring the SD image made pads work perfectly again even without having to connect them once (which means DS3's themselves were still correctly paired), I am going to give it another try soon. Maybe there is something which didn't work quite right the first time, or maybe I should have explicitly unpaired controllers from ps3controller first.

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      SleepingDog
                                      last edited by

                                      Hi, sorry for not fine-combing the thread before posting this. It's 04:20 at night and I can't sleep but need to try, so I thought I'd at least try to get this off my chest.

                                      I have just installed RetroPie, I have an old PS3 controller which I got working. But I don't have a second controller. Tomorrow I thought about buying a new one, problem is PS3 controllers aren't for sale anymore where I live. Only PS4 controllers.

                                      Does this new thing discussed in this thread make it possible to use both a PS3 controller and PS4 controller? What about a PS3 controller and Xbone controller?

                                      Again, sorry for not fine-combing the thread but I need to try and get some sleep. Kind of asking this at the very last minute since I am getting a ride into town tomorrow from a friend to be able to buy a controller. Would suck if I get home and the PS3 controller doesn't work.

                                      So if possible I would be really grateful if someone responded to me very soon before I buy a new expensive controller. >__<

                                      1 Reply Last reply Reply Quote 0
                                      • edge3000E
                                        edge3000 @Silent
                                        last edited by

                                        @Silent Just to clarify I did start with the fresh Stretch image and did all the updates from RetroPie-Setup before applying the sixaxis PR.

                                        So far I have tested 5 dualshock 3's at once wirelessly and they are stable!

                                        S 1 Reply Last reply Reply Quote 0
                                        • S
                                          Silent @edge3000
                                          last edited by Silent

                                          @edge3000 Right, that's not how I tried indeed - I attempted to set it up on my existing RetroPie installation. I don't really have a spare SD card to try and I don't think I want to replace its contents with a new installation for testing, then restore it from backup again. Was hoping I can try it in a live environment.

                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            Silent
                                            last edited by Silent

                                            OK, I'm giving this another go on my existing RetroPie installation (Stretch based) - removed ps3controller driver, rebooted and proceeded to installing sixaxis.

                                            Why is custombluez installed automatically with sixaxis, when the instructions say to grab it only if you have third party PS3 controllers?

                                            I'll edit this post with progress as I go by.

                                            EDIT:
                                            So I retraced my steps and results are identical, sadly. EmulationStation works perfectly with the controller (presenting itself as Sony PLAYSTATION(R)3 Controller), reconfigured buttons anyway to be sure and to re-create a RetroArch configuration for it (which it did, \\RETROPIE\configs\all\retroarch-joypads contains Sony PLAYSTATION(R)3 Controller.cfg). Despite all that, libretro joypad assignment (in Configuration Editor in ES) sees the pad as "not connected" and games do not react to it.

                                            Even weirder, starting lr emulators does show Sony PLAYSTATION(R)3 Controller configured on port #0! Bindings don't work at all, though.

                                            Also tried removing and reinstalling retroarch from core packages, no success.

                                            EDIT2:
                                            Tried evtest - every button and axis (including analog triggers) work fine. Which makes sense, considering controller works perfect in EmulationStation.

                                            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.