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

    Has anyone Gotten the Mayflash Gamecube Adapter to work with Retropie?

    Scheduled Pinned Locked Moved Help and Support
    helpadaptergamecube
    21 Posts 4 Posters 17.5k 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.
    • mediamogulM
      mediamogul Global Moderator @hyawatha15
      last edited by

      @hyawatha15, @suprjami

      I have ToadKing's driver working with the Mayflash adapter without any issues. Once it's in 'Wii' mode, ToadKing's driver, as well as the Dolphin emulator can't distinguish it from Nintendo's own. I followed the instructions below:

      Just got this working on my Raspberry Pi 3. You are going to want to be on the latest RetroPie (3.6+) which uses Debian Jessie (as opposed to Wheezy).
      Using the latest RetroPie image, I did a clean install on my SD card followed by the obligatory update:

      sudo apt-get update
      sudo apt-get -y upgrade

      After that, you will need to pull the code from here via git. Here's what I do to clone, build, and install the adapter driver:

      cd ~
      git clone https://github.com/ToadKing/wii-u-gc-adapter
      cd wii-u-gc-adapter
      make
      chmod +x wii-u-gc-adapter
      sudo cp wii-u-gc-adapter /usr/local/bin
      sudo chown root /usr/local/bin/wii-gc-adapter

      The above commands will build the adapter driver, make it executable, and move it to a standard location (out of the home folder).
      Debian Jessie has migrated to systemd, so I made a basic service file to allow the driver to run on boot (and as root):

      sudo touch /etc/systemd/system/gamecube.service
      sudo chown root:root /etc/systemd/system/gamecube.service
      sudo nano /etc/systemd/system/gamecube.service

      Paste this into the file and save it:

      [Unit]
      Description=Wii U Gamecube Adapter
      Before=systemd-user-sessions.service
      
      [Service]
      TimeoutStartSec=0
      
      ExecStart=/usr/local/bin/wii-u-gc-adapter
      User=root
      
      [Install]
      WantedBy=multi-user.target
      

      Then to enable and start the service:

      sudo systemctl enable /etc/systemd/system/gamecube.service
      sudo systemctl start gamecube.service

      Reboot and check that the service is running:

      sudo systemctl status gamecube.service

      You should get something like this:

       gamecube.service - Wii U Gamecube Adapter
         Loaded: loaded (/etc/systemd/system/gamecube.service; enabled)
         Active: active (running) since Wed 2016-03-16 23:08:34 EDT; 11min ago
       Main PID: 363 (wii-u-gc-adapte)
         CGroup: /system.slice/gamecube.service
                 └─363 /usr/local/bin/wii-u-gc-adapter
      

      RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

      suprjamiS 1 Reply Last reply Reply Quote 3
      • suprjamiS
        suprjami @mediamogul
        last edited by

        @mediamogul Fantastic! I encourage you to respond with the same contents on that GitHub issue.

        mediamogulM 1 Reply Last reply Reply Quote 1
        • mediamogulM
          mediamogul Global Moderator @suprjami
          last edited by

          @suprjami

          I will. It should also be acknowledged that this was resolved by the user 'ewrogers' in this thread.

          RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

          H 2 Replies Last reply Reply Quote 2
          • H
            hyawatha15 @mediamogul
            last edited by

            @mediamogul Thank you very much for putting that information up! Much appreciated!

            mediamogulM 1 Reply Last reply Reply Quote 0
            • mediamogulM
              mediamogul Global Moderator @hyawatha15
              last edited by

              @hyawatha15

              Not a problem. I had to work around a few other problems that were inherent with the Gamecube controller's analog control implementation. If you run into these issues as well, give me a shout. I may be able to help further.

              RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

              T 1 Reply Last reply Reply Quote 0
              • H
                hyawatha15 @mediamogul
                last edited by

                @mediamogul So funny thing.. I went through the steps and it's still stuck at connecting on port 0.

                When I type: sudo systemctl status gamecube.service
                I get: gamecube.service - Wii U Gamecube Adapter
                Loaded: loaded (/etc/systemd/system/gamecube.service; enabled)
                Active: active (running) since Wed 2016-09-14 1:10:15 UTC; 7min ago
                Main PID: 402 (wii-u-gc-adapte)
                CGroup: /system.slice/gamecube.service
                └─402 /usr/local/bin/wii-u-gc-adapter

                Sep 14 01:10:15 retropie wii-u-gc-adapter[402]: adapter 0x0x1146c48 connected
                Sep 14 01:10:15 retropie wii-u-gc-adapter[402]: connecting on port 0

                I can't control anything with the gamecube controller. The prompt to set the inputs isn't coming up either.

                mediamogulM 1 Reply Last reply Reply Quote 0
                • mediamogulM
                  mediamogul Global Moderator @hyawatha15
                  last edited by mediamogul

                  @hyawatha15

                  I might be misunderstanding you, but the 'Input Configuration' tool only shows up automatically on the first boot of the system. Any other time it has to be invoked by either the keyboard or another controller that you have already mapped. Assuming this is the issue, you would press whatever you have already mapped to 'Start' while in Emulation Station and the config option will be at the bottom of the resulting menu.

                  RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                  H 1 Reply Last reply Reply Quote 1
                  • H
                    hyawatha15 @mediamogul
                    last edited by

                    @mediamogul

                    Interesting, I thought the input menu came up any time a new controller that hasn't been used before gets plugged in. I'll use a working controller to bring up the Input Configuration tool.

                    I assumed that because I was still seeing: Sep 14 01:10:15 retropie wii-u-gc-adapter[402]: connecting on port 0, I was stuck where I was at before. I'll update this post when I get home to try it.

                    1 Reply Last reply Reply Quote 0
                    • T
                      tebra @mediamogul
                      last edited by

                      @mediamogul said in Has anyone Gotten the Mayflash Gamecube Adapter to work with Retropie?:

                      @hyawatha15

                      Not a problem. I had to work around a few other problems that were inherent with the Gamecube controller's analog control implementation. If you run into these issues as well, give me a shout. I may be able to help further.

                      Hi mediamogul,
                      I follow your guide to use my Mayflash Gamecube adapter on my RetroPie v4.0.3 RPi3. Works good.
                      Only issue left are the analog controls (shoulders and sticks).
                      Any help/news about that?
                      Thanks

                      mediamogulM 1 Reply Last reply Reply Quote 0
                      • mediamogulM
                        mediamogul Global Moderator @tebra
                        last edited by mediamogul

                        @tebra said in Has anyone Gotten the Mayflash Gamecube Adapter to work with Retropie?:

                        Only issue left are the analog controls (shoulders and sticks).

                        Are you trying to configure your triggers to be analog or digital? Personally, I would recommend digital in most cases, although analog is possible. Also, what exactly are the problems you're facing with the stick?

                        RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                        T 1 Reply Last reply Reply Quote 0
                        • mediamogulM
                          mediamogul Global Moderator
                          last edited by

                          I might not be around later, so I thought I'd post the configs I use for my own adapter for you to use as a reference.

                          Analog Triggers:

                          sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
                          	--evdev /dev/input/by-id/usb-raphnet.net_GC_N64_to_USB__v2.9_3918-event-joystick \
                          	--detach-kernel-driver \
                          	--force-feedback \
                          	--dpad-as-button \
                          	--deadzone-trigger 15% \
                          	--deadzone 4000 \
                          	--device-name "Raphnet Gamecube Adapter - Analog Triggers (xboxdrv)" \
                          	--silent \
                          	--calibration X1=-23436:0:26594,Y1=-25693:0:26593,X2=-20521:0:23068,Y2=-24890:0:19246 \
                          	--axismap -Y1=Y1,-Y2=Y2 \
                          	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_RX=x2,ABS_RY=y2,ABS_RZ+=LT,ABS_THROTTLE+=RT \
                          	--evdev-keymap BTN_C=x,BTN_EAST=y,BTN_WEST=a,BTN_NORTH=b,BTN_TR=back,BTN_SOUTH=start,BTN_Z=lb,BTN_TL=rb,BTN_TL2=du,BTN_TR2=dd,BTN_START=dl,BTN_SELECT=dr \
                          	--ui-axismap start+x1=REL_X:10,start+y1=REL_Y:10 \
                          	--ui-buttonmap guide=void,tl=void,tr=void,start+lb=BTN_LEFT,start+rb=BTN_RIGHT
                          

                          Digital Triggers:

                          sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
                          	--evdev /dev/input/by-id/usb-raphnet.net_GC_N64_to_USB__v2.9_3918-event-joystick \
                          	--detach-kernel-driver \
                          	--force-feedback \
                          	--dpad-as-button \
                          	--trigger-as-button \
                          	--deadzone-trigger 15% \
                          	--deadzone 4000 \
                          	--device-name "Raphnet Gamecube Adapter (xboxdrv)" \
                          	--silent \
                          	--calibration X1=-23436:0:26594,Y1=-25693:0:26593,X2=-20521:0:23068,Y2=-24890:0:19246 \
                          	--axismap -Y1=Y1,-Y2=Y2 \
                          	--buttonmap LT=lb,RT=rb \
                          	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_RX=x2,ABS_RY=y2,ABS_RZ+=LT,ABS_THROTTLE+=RT \
                          	--evdev-keymap BTN_C=x,BTN_EAST=y,BTN_WEST=a,BTN_NORTH=b,BTN_TR=back,BTN_SOUTH=start,BTN_Z=lb,BTN_TL=rb,BTN_TL2=du,BTN_TR2=dd,BTN_START=dl,BTN_SELECT=dr \
                          	--ui-axismap start+x1=REL_X:10,start+y1=REL_Y:10 \
                          	--ui-buttonmap guide=void,tl=void,tr=void,start+lb=BTN_LEFT,start+rb=BTN_RIGHT
                          

                          RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                          T 1 Reply Last reply Reply Quote 0
                          • T
                            tebra @mediamogul
                            last edited by

                            @mediamogul said in Has anyone Gotten the Mayflash Gamecube Adapter to work with Retropie?:

                            @tebra said in Has anyone Gotten the Mayflash Gamecube Adapter to work with Retropie?:

                            Only issue left are the analog controls (shoulders and sticks).

                            Are you trying to configure your triggers to be analog or digital? Personally, I would recommend digital in most cases, although analog is possible. Also, what exactly are the problems you're facing with the stick?

                            I try to use my GC controler with reicast emulator.
                            But when I start /opt/retropie/emulators/reicast/bin/reicast-joyconfig it hang at "please move tha analog stick as far left as possible now"
                            So I suppose that default stick confioguration is not analog.

                            mediamogulM 1 Reply Last reply Reply Quote 0
                            • T
                              tebra @mediamogul
                              last edited by

                              @mediamogul said in Has anyone Gotten the Mayflash Gamecube Adapter to work with Retropie?:

                              I might not be around later, so I thought I'd post the configs I use for my own adapter for you to use as a reference.

                              Analog Triggers:

                              sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
                              	--evdev /dev/input/by-id/usb-raphnet.net_GC_N64_to_USB__v2.9_3918-event-joystick \
                              	--detach-kernel-driver \
                              	--force-feedback \
                              	--dpad-as-button \
                              	--deadzone-trigger 15% \
                              	--deadzone 4000 \
                              	--device-name "Raphnet Gamecube Adapter - Analog Triggers (xboxdrv)" \
                              	--silent \
                              	--calibration X1=-23436:0:26594,Y1=-25693:0:26593,X2=-20521:0:23068,Y2=-24890:0:19246 \
                              	--axismap -Y1=Y1,-Y2=Y2 \
                              	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_RX=x2,ABS_RY=y2,ABS_RZ+=LT,ABS_THROTTLE+=RT \
                              	--evdev-keymap BTN_C=x,BTN_EAST=y,BTN_WEST=a,BTN_NORTH=b,BTN_TR=back,BTN_SOUTH=start,BTN_Z=lb,BTN_TL=rb,BTN_TL2=du,BTN_TR2=dd,BTN_START=dl,BTN_SELECT=dr \
                              	--ui-axismap start+x1=REL_X:10,start+y1=REL_Y:10 \
                              	--ui-buttonmap guide=void,tl=void,tr=void,start+lb=BTN_LEFT,start+rb=BTN_RIGHT
                              

                              Digital Triggers:

                              sudo /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
                              	--evdev /dev/input/by-id/usb-raphnet.net_GC_N64_to_USB__v2.9_3918-event-joystick \
                              	--detach-kernel-driver \
                              	--force-feedback \
                              	--dpad-as-button \
                              	--trigger-as-button \
                              	--deadzone-trigger 15% \
                              	--deadzone 4000 \
                              	--device-name "Raphnet Gamecube Adapter (xboxdrv)" \
                              	--silent \
                              	--calibration X1=-23436:0:26594,Y1=-25693:0:26593,X2=-20521:0:23068,Y2=-24890:0:19246 \
                              	--axismap -Y1=Y1,-Y2=Y2 \
                              	--buttonmap LT=lb,RT=rb \
                              	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_RX=x2,ABS_RY=y2,ABS_RZ+=LT,ABS_THROTTLE+=RT \
                              	--evdev-keymap BTN_C=x,BTN_EAST=y,BTN_WEST=a,BTN_NORTH=b,BTN_TR=back,BTN_SOUTH=start,BTN_Z=lb,BTN_TL=rb,BTN_TL2=du,BTN_TR2=dd,BTN_START=dl,BTN_SELECT=dr \
                              	--ui-axismap start+x1=REL_X:10,start+y1=REL_Y:10 \
                              	--ui-buttonmap guide=void,tl=void,tr=void,start+lb=BTN_LEFT,start+rb=BTN_RIGHT
                              

                              So I can use virtual xboxdrv with ToadKing's driver?

                              mediamogulM 1 Reply Last reply Reply Quote 0
                              • mediamogulM
                                mediamogul Global Moderator @tebra
                                last edited by

                                @tebra

                                I accidentally posted my settings for the RaphNet Gamecube adapter. I'll have to dig up my configs for Mayflash after a while. Sorry for the confusion.

                                RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                1 Reply Last reply Reply Quote 0
                                • mediamogulM
                                  mediamogul Global Moderator @tebra
                                  last edited by mediamogul

                                  @tebra said in Has anyone Gotten the Mayflash Gamecube Adapter to work with Retropie?:

                                  when I start /opt/retropie/emulators/reicast/bin/reicast-joyconfig it hang at "please move tha analog stick as far left as possible now"

                                  If I remember correctly, I couldn't get reicast-joyconfig to read the analog stick either, but I'm almost certain you can just add the standard axis values to /home/pi/.reicast/emu.cfg and it will read them normally.

                                  I believe the following are the two configs I used with the Mayflash adapter and ToadKing's driver:

                                  Analog Triggers

                                  /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
                                  	--evdev /dev/input/by-id/usb-mayflash_limited_MAYFLASH_GameCube_Controller_Adapter-event-mouse \
                                  	--force-feedback \
                                  	--deadzone-trigger 15% \
                                  	--deadzone 4000 \
                                  	--device-name "Mayflash GameCube Port 1 (xboxdrv)" \
                                  	--silent \
                                  	--axismap -Y1=Y1,-Y2=Y2 \
                                  	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_RZ=x2,ABS_Z=y2,ABS_RX=LT,ABS_RY=RT,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y \
                                  	--evdev-keymap BTN_TOP=x,BTN_TRIGGER=y,BTN_THUMB2=a,BTN_THUMB=b,BTN_BASE2=back,BTN_BASE4=start,BTN_TOP2=lb,BTN_PINKIE=rb
                                  

                                  Digital Triggers

                                  /opt/retropie/supplementary/xboxdrv/bin/xboxdrv \
                                  	--evdev /dev/input/by-id/usb-mayflash_limited_MAYFLASH_GameCube_Controller_Adapter-event-mouse \
                                  	--force-feedback \
                                  	--trigger-as-button \
                                  	--deadzone-trigger 15% \
                                  	--deadzone 4000 \
                                  	--device-name "Mayflash GameCube Port 1 (xboxdrv)" \
                                  	--silent \
                                  	--axismap -Y1=Y1,-Y2=Y2 \
                                  	--buttonmap LT=lb,RT=rb \
                                  	--evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_RZ=x2,ABS_Z=y2,ABS_RX=LT,ABS_RY=RT,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y \
                                  	--evdev-keymap BTN_TOP=x,BTN_TRIGGER=y,BTN_THUMB2=a,BTN_THUMB=b,BTN_BASE2=back,BTN_BASE4=start,BTN_TOP2=lb,BTN_PINKIE=rb
                                  

                                  RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                  T 1 Reply Last reply Reply Quote 0
                                  • T
                                    tebra @mediamogul
                                    last edited by

                                    @mediamogul said in Has anyone Gotten the Mayflash Gamecube Adapter to work with Retropie?:

                                    /dev/input/by-id/

                                    Thank you for your config but I have a problem: my gamepad is not listed on /dev/input/by-id/
                                    Here is the information given by "cat /proc/bus/input/devices" command
                                    I: Bus=0003 Vendor=0000 Product=0000 Version=0000
                                    N: Name="Wii U GameCube Adapter Port 1"
                                    P: Phys=
                                    S: Sysfs=/devices/virtual/input/input2
                                    U: Uniq=
                                    H: Handlers=event2 js0
                                    B: PROP=0
                                    B: EV=20000b
                                    B: KEY=f 0 0 0 0 0 0 0 adb0000 0 0 0 0 0 0 0 0 0
                                    B: ABS=3f
                                    B: FF=50000 0 0

                                    I: Bus=0003 Vendor=0000 Product=0000 Version=0000
                                    N: Name="Wii U GameCube Adapter Port 2"
                                    P: Phys=
                                    S: Sysfs=/devices/virtual/input/input3
                                    U: Uniq=
                                    H: Handlers=event3 js1
                                    B: PROP=0
                                    B: EV=20000b
                                    B: KEY=f 0 0 0 0 0 0 0 adb0000 0 0 0 0 0 0 0 0 0
                                    B: ABS=3f
                                    B: FF=50000 0 0

                                    mediamogulM 1 Reply Last reply Reply Quote 0
                                    • mediamogulM
                                      mediamogul Global Moderator @tebra
                                      last edited by mediamogul

                                      @tebra

                                      You can also fall back on using the event numbers as well:

                                      --evdev /dev/input/event2
                                      
                                      --evdev /dev/input/event3
                                      

                                      RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                      T 1 Reply Last reply Reply Quote 0
                                      • T
                                        tebra @mediamogul
                                        last edited by

                                        @mediamogul
                                        Is it possible by N: Name="Wii U GameCube Adapter Port 1" and N: Name="Wii U GameCube Adapter Port 2".
                                        Because if I reboot the rpi3 without my keyboard the event number will change. I'm right?

                                        mediamogulM 1 Reply Last reply Reply Quote 0
                                        • mediamogulM
                                          mediamogul Global Moderator @tebra
                                          last edited by mediamogul

                                          @tebra said in Has anyone Gotten the Mayflash Gamecube Adapter to work with Retropie?:

                                          Is it possible by N: Name="Wii U GameCube Adapter Port 1" and N: Name="Wii U GameCube Adapter Port 2".

                                          Sadly no. Those do not actually point to the events.

                                          if I reboot the rpi3 without my keyboard the event number will change. I'm right?

                                          I believe you're right. However, it might help to rearrange the order of your devices in relation to the USB slots to where the keyboard is always seen last.

                                          RetroPie v4.5 • RPi3 Model B • 5.1V 2.5A PSU • 16GB SanDisk microSD • 512GB External Drive

                                          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.