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

    Questions regarding generic Wii Pro controller on x86 install

    Scheduled Pinned Locked Moved General Discussion and Gaming
    controllerbluetoothmayflashwii
    36 Posts 3 Posters 5.2k 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.
    • ClydeC
      Clyde @movisman
      last edited by Clyde

      @movisman Okay, now it's my part to experience strange happenings. The Mayflash adapter already was set to Xinput when the home button didn't work. I then switched it to Dinput to test it, and apart from the name displayed in the input configuration dialog of ES, nothing changed. BUT after I switched back to Xinput, the home button worked! 😒

      That said, it may be that the switch just looked like it was set to Xinput, because I used both controllers at the same time with it, whereas Xinput indeed only allows one connection, as I tested just now.

      So yes, the home button works in Xinput mode, but not in Dinput mode.

      edit: While testing both modes, I noticed a nice feature of the Mayflash adapter. It can switch the input mode on the fly without a reboot or even disconnecting the first controller. The second loses its connection if the adapter is set to Xinput, of course.

      M 1 Reply Last reply Reply Quote 0
      • ClydeC
        Clyde
        last edited by Clyde

        Ouf of curiosity, I played around with bluetooth pairing on the Linux console. If you haven't sent back the controllers by now, you may try this on any Debian-based Linux system, e.g. Retropie/Raspbian, any Ubuntu variant, or Linux Mint.

        sudo apt install bluez-utils    # making sure bluetoothctl is installed
        bluetoothctl
        

        You'll land in the bluetoothctl command line. I'll show you the pairing process of my Qumox controller with the MAC address 8C:CD:E8:19:57:80 ([bluetooth]# is the command prompt). I'll put commands with little output together in one code block and commands with longer output separate in their own code blocks.

        [bluetooth]# default-agent 
        Default agent request successful
        [bluetooth]# power on
        Changing power on succeeded
        [bluetooth]# list
        Controller D4:6D:6D:69:9D:43 cubi [default]
        [bluetooth]# scan on
        Discovery started
        [CHG] Controller D4:6D:6D:69:9D:43 Discovering: yes
        

        Now press the pairing button on the controller. You should see something similar to this:

        [NEW] Device 8C:CD:E8:19:57:80 Nintendo RVL-CNT-01-UC
        [CHG] Device 8C:CD:E8:19:57:80 RSSI: -22
        [CHG] Device 8C:CD:E8:19:57:80 RSSI: -37
        

        If you see your controller, you can continue. Like the Linux console (bash in most Debian-based distributions), the bluetoothctl console supports tab completion, so you can just enter the first number of the mac address (e.g. "8") and the tab key will complete it for you.

        [bluetooth]# pair 8C:CD:E8:19:57:80
        Attempting to pair with 8C:CD:E8:19:57:80
        [CHG] Device 8C:CD:E8:19:57:80 Connected: yes
        [CHG] Device 8C:CD:E8:19:57:80 Modalias: usb:v057Ep0330d0001
        [CHG] Device 8C:CD:E8:19:57:80 UUIDs: 00001124-0000-1000-8000-00805f9b34fb
        [CHG] Device 8C:CD:E8:19:57:80 UUIDs: 00001200-0000-1000-8000-00805f9b34fb
        [CHG] Device 8C:CD:E8:19:57:80 ServicesResolved: yes
        [CHG] Device 8C:CD:E8:19:57:80 Paired: yes
        Pairing successful
        [CHG] Device 8C:CD:E8:19:57:80 ServicesResolved: no
        [CHG] Device 8C:CD:E8:19:57:80 Connected: no
        
        [bluetooth]# devices 
        Device 8C:CD:E8:19:57:80 Nintendo RVL-CNT-01-UC
        [bluetooth]# paired-devices 
        Device 8C:CD:E8:19:57:80 Nintendo RVL-CNT-01-UC
        
        [bluetooth]# info 8C:CD:E8:19:57:80
        Device 8C:CD:E8:19:57:80 (public)
                Name: Nintendo RVL-CNT-01-UC
                Alias: Nintendo RVL-CNT-01-UC
                Class: 0x00000508
                Icon: input-gaming
                Paired: yes
                Trusted: no
                Blocked: no
                Connected: no
                LegacyPairing: yes
                UUID: Human Interface Device... (00001124-0000-1000-8000-00805f9b34fb)
                UUID: PnP Information           (00001200-0000-1000-8000-00805f9b34fb)
                Modalias: usb:v057Ep0330d0001
        

        The device is not trusted automatically (Trusted: no), so we'll have to do it manually:

        [bluetooth]# trust 8C:CD:E8:19:57:80 
        [CHG] Device 8C:CD:E8:19:57:80 Trusted: yes
        Changing 8C:CD:E8:19:57:80 trust succeeded
        

        Now enter this command and press any button on the controller:

        [bluetooth]# connect 8C:CD:E8:19:57:80 
        Attempting to connect to 8C:CD:E8:19:57:80
        Failed to connect: org.bluez.Error.Failed
        [CHG] Device 8C:CD:E8:19:57:80 Connected: yes
        

        I actually had to press the A button again after the command failed, so I can't say for sure in which order the command and the button press have to be executed. Just experiment. :)

        help in the bluetoothctl console will list all of its commands, and exit will end it.

        After pairing and trusting the controller like this, it also appeared in the bluetooth applet of my KDE Plasma 5 desktop panel, and I could connect to it via its GUI as if I had paired it that way.

        Just another option to pair your current or future controllers …

        M 1 Reply Last reply Reply Quote 0
        • ClydeC
          Clyde
          last edited by Clyde

          I just stumbled upon these threads.

          • https://retropie.org.uk/forum/topic/14493/retropie-lag-missed-key-inputs-on-oem-ps3-bluetooth-controllers
          • https://retropie.org.uk/forum/topic/20303/rpi-3-b-tricky-bluetooth-problem-with-multiple-ps3-controllers

          The first poster had to use a BT adapter because his/her wireless PS3 controller had lag and missing inputs with the Pi's own BT. In the second thread, it's suggested that turning off WIFI can improve connections to BT controllers by strengthening the BT signal. The latter also links to this script from @cyperghost for easily switching the WIFI on and off.

          Just FYI that BT adapters may be a good idea in general, and that disabling WIFI might help with bitchy BT controllers. 😉

          edit: some typos, it's definitely too early in my part of the world to write comprehensive forum posts. 😒

          1 Reply Last reply Reply Quote 0
          • M
            movisman @Clyde
            last edited by

            @Clyde said in Questions regarding generic Wii Pro controller on x86 install:

            @movisman Okay, now it's my part to experience strange happenings. The Mayflash adapter already was set to Xinput when the home button didn't work. I then switched it to Dinput to test it, and apart from the name displayed in the input configuration dialog of ES, nothing changed. BUT after I switched back to Xinput, the home button worked! 😒

            That said, it may be that the switch just looked like it was set to Xinput, because I used both controllers at the same time with it, whereas Xinput indeed only allows one connection, as I tested just now.

            So yes, the home button works in Xinput mode, but not in Dinput mode.

            edit: While testing both modes, I noticed a nice feature of the Mayflash adapter. It can switch the input mode on the fly without a reboot or even disconnecting the first controller. The second loses its connection if the adapter is set to Xinput, of course.

            How strange! I had a reply back from Mayflash support confirming what I thought, which is all buttons mappable in xinput mode, but in dinput mode the home button will not work, although you get 4 controller support.

            1 Reply Last reply Reply Quote 0
            • M
              movisman @Clyde
              last edited by

              @Clyde said in Questions regarding generic Wii Pro controller on x86 install:

              Out of curiosity, I played around with bluetooth pairing on the Linux console. If you haven't sent back the controllers by now, you may try this on any Debian-based Linux system, e.g. Retropie/Raspbian, any Ubuntu variant, or Linux Mint.

              Actually, I got a bit cheesed off with trying to get these things paired, and as I had to send back the other ones (which were damaged anyway) along with something else, I thought i'd just send them back and take them to the post office at the same time.

              So I no longer have them, and now just planning my next move. With the commands you mentioned, although not like for like I did try to pair with the command line using bluetoothctl, but even when I pressed the sync button on the controller, I would never get a [NEW] device for it. My laptop and a couple of other devices would should up as [NEW] though. So the BT controller simply wasn't seeing it.

              The same thing happened when I substituted internal BT (disabled in BIOS) for a USB dongle I found. It never appeared as a [NEW] device. All a bit strange. I don't think Ubuntu Server has bluez-utils installed, but I think it has the bluez application. Either way my Linux Mint install which has everything on there by default couldn't see the controllers.

              Part of me wishes i'd kept them for further investigation, but i'm right near the last 20% of my Ubuntu Server appliance install, which I wanted to get finished over the xmas period, so I didn't want to spend too much more time on it.

              Tonight, I am going to try and pair up my DS4 controller and see if that works without a dongle - will keep you posted on that. Currently using a wired PC Xbox 360 pad which works great, but i'd like a wireless controller for primary. Almost tempted to shell out for a new model Xbox one controller which fully supports BT without a dongle, and then use the DS4 for the occasional second player (if it pairs), or the wired Xbox controller..

              Cheers!

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

                Well, I tried my Sony DS4 controller (newest version), and it simply paired first time, and ES recognised it as a straight up wireless gamepad when I went to configure the input. Was able to configure all buttons without issue, and everything just works as you would expect.

                The whole thing took less than 3 minutes, so definitely a strange thing with those Qumox controllers.

                Only downer is they don't power down by themselves, but I don't plan to use the PS4 controller with this anyway as a primary, mainly because i'll have to keep plugging the controller back into the PS4 to re-pair. Also my girlfriend may use the PS4 and/or the RetroPie install occasionally and I want it to be hassle free. However it was a useful test!

                Also, just FYI, my second DS4 paired fine too and 2 player just worked, one controller had a blue lightstrip, the other red.

                Cheers

                1 Reply Last reply Reply Quote 0
                • ClydeC
                  Clyde
                  last edited by

                  Whatever works for you is fine. Have fun!

                  M 1 Reply Last reply Reply Quote 0
                  • M
                    movisman @Clyde
                    last edited by

                    @Clyde

                    Indeed. Cheers for all the help! I will look into another controller, at least I know it's nothing to do with my setup. Just an incompatibility of sorts, or a requirement of some type of adapter, or possible controller fault.

                    Will get something sorted! Cheers.

                    1 Reply Last reply Reply Quote 0
                    • ClydeC
                      Clyde
                      last edited by

                      I would very much like to know your final solution, if you want to share it here. 😊

                      1 Reply Last reply Reply Quote 0
                      • G
                        gpmcty
                        last edited by

                        I will be very curious if you can get the generic Wii U pro controllers to work. I was not successful with the ones I have tried. I have the EEkit and a Nyco, neither of which will connect to the Raspberry Pi or my laptops. They will work with the Mayflash adapter. Funny thing is they will connect to the Wii U without any issue. I have not tried a new bluetooth dongle. Ended up getting two authentic pro controllers and they synced without issue to the Pi.

                        ClydeC 1 Reply Last reply Reply Quote 0
                        • ClydeC
                          Clyde @gpmcty
                          last edited by

                          @gpmcty I'm curious as well: Why did you swap them if they'd worked with the Mayflash adapter?

                          M 1 Reply Last reply Reply Quote 0
                          • M
                            movisman @Clyde
                            last edited by

                            @Clyde

                            Hi,

                            Just seen this, I didn't spot the notification that you had replied! So, no final solution as of yet, but I do have in my possession an Xbox One controller which I got brand new for a bargain (£25), and this works very well indeed with the xpadneo driver (not available via RetroPie-Setup as of yet), connected directly via BT. So currently i'm using that, and have a wired 360 controller for the second player. I am looking at buying a second wireless controller though, but not sure what to go for. Would prefer one which doesn't need an adapter, so either another Xbox One controller if any steals come up (don't want to pay full price though), or maybe a second hand Wii U Pro (official), assuming that will pair of course.

                            Interesting that @gpmcty also had issue connecting the third party controllers directly without the adapter, this was also my experience. I guess the only downside of a Mayflash adapter is the non-working home button if you need to use dinput for 2 player. But that must be it though?

                            Cheers

                            1 Reply Last reply Reply Quote 0
                            • ClydeC
                              Clyde
                              last edited by

                              Thanks for the update, it's interesting to follow your way to a working solution.

                              Yeah, it seems that it is a kind of game of chance to get the right BT controllers for the Pi, may it be that I was lucky or you and @gpmcty were unlucky.

                              And yes, it seems to be either direct connection without the home key, or using an adapter. Ironically, I'm fine with my adapter although I don't use the home key anyway. :)

                              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.