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

    N64 Controller Analogue Stick issues

    Scheduled Pinned Locked Moved Help and Support
    8 Posts 5 Posters 19.1k 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.
    • V
      vretro
      last edited by

      Pi Model: (3)
      RetroPie Version Used: (3.6.0)
      Built From: (Binary updates on Raspian)
      USB Devices connected: USB N64 adaptor
      Controller used: Official N64 controller via USB adaptor

      After configuring an N64 controller using EmulationStation then running Mupen64 (and some manual fixing of config files) when using the analogue stick in games, the character you control seems to be restricted to "walking" speed even when fully pointed in any direction.

      I have tested this adaptor setup using OpenEmu on Mac and it seems to respond properly with a full range of speeds with no other issues.

      Is there a way to adjust the range of the axis or something like that?

      When another player uses a SNES style Dpad controller, they can move at full speed, so I know that the game is running at full speed.

      I am also having issues getting this controller to show up in the controller configuration screen of EmulationStation - so it took a lot of attempts to get it configured initially.

      R 2 Replies Last reply Reply Quote 0
      • T
        Twitch0815
        last edited by

        @vretro
        Could you post the specific model of the adapter you are using?

        Also can you post your config file how you have the controller mapped.

        Take a look here,
        http://wiki.libretro.com/index.php?title=Mupen64Plus
        Seems to be a few options you might try

        mupen64-astick-deadzone
        you would edit that i /opt/retropie/configs/all/retroarch-core-options.cfg

        1 Reply Last reply Reply Quote 0
        • V
          vretro
          last edited by

          Hi Twitch0815!

          The device ID for the N64 to USB adaptor (N64 / PS2 2in1 USB Controller Adapter) is as follows as reported by lsusb:
          Bus 001 Device 001: ID 6666:0667 Prototype product Vendor ID WiseGroup Smart Joy PSX, PS-PC SmartJoyPad

          You can see what the product looks like via Amazon:
          http://www.amazon.com/Nintendo-64-N64-2in1-Controller-Adapter/dp/8565000168

          My focus is on the stand alone Mupen due to the performance at this time and my post is in reference to using the adaptor in this scenario, rather than in Retroarch.

          Thank you for the page you referenced, I will use that information relating to the deadzone to try and resolve. Does your answer relate specifically to a lr-mupen config?

          Below is the controller config from configs/n64/InputAutoCfg.ini:

          ; Boom Smart Joy Converter_START
          [HID 6666:0667]
          plugged = True
          plugin = 2
          mouse = False
          AnalogDeadzone = 4096,4096
          AnalogPeak = 32768,32768
          DPad R = button(13)
          DPad L = button(15)
          DPad D = button(14)
          DPad U = button(12)
          Start = button(11)
          Z Trig = button(10)
          B Button = button(5)
          A Button = button(4)
          C Button R = button(1)
          C Button L = button(3)
          C Button D = button(2)
          C Button U = button(0)
          R Trig = button(7)
          L Trig = button(6)
          Mempak switch = key(109)
          Rumblepak switch = key(114)
          X Axis = axis(0-,0+)
          Y Axis = axis(1-,1+)
          ; Boom Smart Joy Converter_END

          1 Reply Last reply Reply Quote 0
          • L
            laxattack
            last edited by

            How did you get this adapter to work in retropie? I have the same one and can't get it to configure the controller.

            1 Reply Last reply Reply Quote 0
            • R
              RetroResolution @vretro
              last edited by

              @vretro Hi, I had exactly the same issue -using a Wise N64 usb adapator and my original N64 controller.
              I needed to adjust the axis range and dead zone to allow Mario to run in Super Mario, etc.

              I'll see if I can dig out the settings; I'll post more when I've found them!

              If a post has helped you, please encourage the author by up-voting via the ^ icon located in the bottom-right corner.

              RetroResolution.com - Adventures in retro gaming on original hardware and via emulation with RetroPie on the Raspberry Pi.

              1 Reply Last reply Reply Quote 0
              • R
                RetroResolution @vretro
                last edited by RetroResolution

                @vretro I believe the issue is the Analog Peak value, which is easy to fix.

                It seems I started writing a guide for this, but haven't finished it due to several other project guides I've been working on. Here's some of my notes, along with my settings to adjust the AnalogDeadZone and AnalogPeak for the InputAutoCfg.ini

                You'll probably need to adjust the dead zone and peak values specifically to your controller; using jstest you can obtain exact values to fine tune these.

                The problme is caused by maximum analogue axis values of the original N64 controller being considerably lower than that of the PlayStation Dualshock, at least as detected by the Mayflash SS/PS/N64 Usb Adaptor unit.
                There's also an issue with the deadzone calibration, meaning that the analogue stick requires excessive movement before the player's intention is registered.

                Dead zone - analogue controls tend to register input values even when in the neutral position. Depending on an individual controller's quality, construction, age etc this can vary somewhat. The PlayStation Dualshock I use has a tendancy to register axis values for the left stick in the range from 0 to 1000 or so (positive or negative). A dead zone is established to disregard these values, at the cost of requiring the stick to be moved a certain amount before a game responds to the input.

                /opt/retropie/configs/n64/InputAutoCfg.ini

                Part of my file, where I have commented the original Dead Zone and Peak values, and inserted the revised values:

                ; HuiJia PS/SS/N64 Joypad to USB BOX_START
                [HuiJia PS/SS/N64 Joypad to USB BOX]
                plugged = True
                plugin = 2
                mouse = False
                ;AnalogDeadzone = 4096,4096
                AnalogDeadzone = 338,338
                ;AnalogPeak = 32768,32768
                AnalogPeak = 21200,21200

                If a post has helped you, please encourage the author by up-voting via the ^ icon located in the bottom-right corner.

                RetroResolution.com - Adventures in retro gaming on original hardware and via emulation with RetroPie on the Raspberry Pi.

                1 Reply Last reply Reply Quote 2
                • S
                  sula_rob
                  last edited by

                  Hi guys,

                  Having searched on this, I found this thread & I'm trying to fix the same issue. My Dualshock 3s feel virtually digital & it's impossible to control Mario subtly like you could with an N64 pad.

                  I located the autoconfig input file via the Retropie Configuration Editor, and thought I'd made the suggested changes but nothing seems any different. It's the first time I've changed any file, so I'm not sure I did it correctly.

                  Should this file make changes detected by all the emulators & plugins? I use gles2rice for Mario, and reading its config file it seems to reference the same default values in its code. Do I have to change anything apart from the main input 'auto config'?

                  Thanks

                  Rob

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

                    Sorted; I realised I was using Retroarch emus, so am going to experiment with this again in the week in the pursuit of absolute Mario nirvana. 🙂

                    Rob

                    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.