N64 Controller mappings not working with RetroPie 4.4
-
Pi Model or other hardware: (B, B+, 2 B, 3, X86 PC etc..) RaspberryPi 3 B+
Power Supply used: (If using a Pi) Included in kit
RetroPie Version Used (eg 3.6, 3.8.1, 4.1 - do not write latest): 4.4
Built From: (Pre made SD Image on RetroPie website, Berryboot, or on top of existing OS etc.. - please provide the filename of any image used) Preexisting, see link https://www.amazon.com/gp/product/B07CC86PR3/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&psc=1
USB Devices connected: Included SNES type gamepad, N64 stick
Controller used: LUXMO PREMIUM USB Game Controller for Classic N64 https://www.amazon.com/gp/product/B07QPYSXY4/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1
Error messages received: Buttons do not map correctly
Log found in /dev/shm/runcommand.log (if relevant):
Guide used: (Mention if you followed a guide)
File: (File with issue - with FULL path) retropie/configs/n64/InputAutoCfg.ini
Emulator: (Name of emulator - if applicable) Mupen64Plus
Attachment of config files: (PLEASE USE PASTEBIN.COM FOR LARGE LOGS)
How to replicate the problem:Hello experts, I've recently built my first RaspberryPi box for the purposes of trying Kodi as a Plex replacement and to run RetroPie. I have all the ROMS I want and everything seems to be going very well for Nintendo, Atari, etc....but NOT N64.
I have tried running through the configuration wizard, copying a config I found online...but nothing works. I can select the buttons until the cows come home but they don't work in game.
I've looked online and can't find anything that works, and these awesome sticks will have to go back if they just don't work. Help!
Maybe I have it correctly and I need to reload the config, which I thought it did at startup (and failed to remedy itself), but if there's a better way to do this, please reply and I'll be eternally grateful so I can play Goldeneye and Mario Kart with my wife and kids :)Thanks for any assistance you can provide.
The contents of my InputAutoCfg.ini is listed below.. The joystick was detected as a DragonRise Inc. Generic USB Joystick (as purchased says LUXMO) so I copied a DragonRise config off the web--doesn't work. Start buttons, A, B buttons...all don't work.
Footnote: I believe I am using mupen64plus, but retroarch.cfg does exist in /configs/n64. I believe the InputAutoCfg.ini is tied to mupen but at this point I'll do anything that works.
; InputAutoCfg.ini for Mupen64Plus SDL Input plugin
; Keyboard_START
[Keyboard]
plugged = True
plugin = 2
mouse = False
DPad R = key(100)
DPad L = key(97)
DPad D = key(115)
DPad U = key(119)
Start = key(13)
Z Trig = key(122)
B Button = key(306)
A Button = key(304)
C Button R = key(108)
C Button L = key(106)
C Button D = key(107)
C Button U = key(105)
R Trig = key(99)
L Trig = key(120)
Mempak switch = key(44)
Rumblepak switch = key(46)
X Axis = key(276,275)
Y Axis = key(273,274)
; Keyboard_END; USB Gamepad _START
[USB Gamepad ]
plugged = True
plugin = 2
mouse = False
AnalogDeadzone = 4096,4096
AnalogPeak = 32768,32768
Mempak switch =
Rumblepak switch =
Start = button(9)
R Trig = button(5)
C Button D = button(1)
A Button = button(2)
C Button U = button(0)
B Button = button(3)
X Axis = axis(0-, 0+)
Y Axis = axis(1-, 1+)
Z Trig = button(4)
; USB Gamepad _END; DragonRise Inc. Generic USB Joystick _START
[DragonRise Inc. Generic USB Joystick ]
plugged = True
plugin = 2
mouse = False
AnalogDeadzone = 4096,4096
AnalogPeak = 32768,32768
DPad R = axis(0+)
DPad L = axis(0-)
DPAD D = axis(1+)
DPAD U = axis(1-)
Start = button(9)
C Button U = button(0)
C Button R = button(1)
C Button D = button(2)
C Button L = button(3)
B Button = button(4)
A Button = button(5)
L Trig = button(6)
R Trig = button(7)
Z Trig = button(8)
X Axis = axis(0-, 0+)
Y Axis = axis(1-, 1+)
; DragonRise Inc. Generic USB Joystick _END -
I think I did this correctly for reference:
-
Can you check the
mupen64plus.cfg
file (from the same configuration folder) and see how the controllers are mapped to players ? You can paste the files' contents on pastebin.com. -
@mitu Glad I reached you.
Note: This file is listed as mupen64plus.cfg, no "mugen" files in the folder. Attaching screenshot of contents.
-
@machine_74 said in N64 Controller mappings not working with RetroPie 4.4:
"mugen" files in the folde
Who said anything about Mugen ?
Looking at your.cfg
file, the SDL1 is mapped to the SNES controller, while the SDL2 control is mapped to the Dragonrise gamepad (which I assume it's the N64 controller clone). Try switching them in the.cfg
file and see if this changes anything. -
@machine_74 Will be offline for a few hours but will check back. Thank you very much for any help you can provide. I hope we can get something working and that it sticks so I don't have to recreate every time.
-
@mitu It's been a long day, read that wrong.
I'll switch it and test tonight. Yeah, the DragonRise is that one.
If this does work, how can I go about playing games with two USB pads, and then switch to two N64 sticks, without changing that mupen64plus.cfg file every time? -
@machine_74 Are they all connected all the time ? I'm thinking pulling out the SNES controller would make the 2nd one be P1.
-
@mitu Yeah me too. Not all the same time. It just occurred to me that this config file is in the n64 section only, so if this works I could make controller 2 have the same config, and then use the existing configs for the NES/SNES.
Ideally I would plug in the N64 sticks and the config would work for them, and then swap out and the existing USB pad config would work for them.
Also, I don't think I ever used it with the regular pad unplugged as it was the only way I could enter the configuration wizard after things got mucked up.
-
@mitu OK, progress. I unplugged the USB pad and
Now if I go through the config and perform the following mappings:
D-Pad = directional pad
Start = Start
Select = trigger on bottom
Button A / East = Blue A
Button B / South = Green B
Button X / North = n/a
Button Y / West = n/a
Left Shoulder = Left Shoulder
Right Shoulder = Right Shoulder
Triggers/Thumbs = n/a
Left Analog Stick (Up/Down/Left Right) = middle stick
Right Analog Stick = n/a
Hotkey = Start + Select (trigger)Using Mario Kart, I am then left with a working blue B button which is normally A and no button to back out of menus.
After some experimenting, I mapped the green and blue buttons and the closest c-buttons to be E/S/N/W, i.e.
Button A / East = C-down
Button B / South = Blue A button
Button X / North = C-left
Button Y / West = Green B buttonI now have to hit C-down to enter menus in the main screen pre-ROM, but after I get into Mario Kart, the A and B buttons function as they should, and I have to just move my thumb to the C-down to fire.
I hit Start and the trigger and it backs me out. Not bad.But.
I backed up this configuration and tried to map A and B where I thought it should go and actually have a functioning C-button set for games like the Ocarina of Time, and no go. I put it back.
So, I'm going to replicate Joystick #1 to Joystick #2 in the config and give it a whirl, but why is this so hard? There must be an INI with the correct mappings out there, but I have yet to find it, that works on both the menus and the games. Right?
-
Thanks for your help and advice. I got it working on a config that isn't perfect in the menu, but works great in game. With the other system emulators working fine my only concern right now is the speed of the N64 games, and whether or not I want to attempt to overclock my Pi 3 B+.
-
Has anyone ever figured out how to get the mapping for the Dragonrise controller to work properly? I have been at this for a few days and have had no luck. It is starting to drive me mad that I cannot get this controller to work as intended. After much trial and error, I was able to get it to work without a hot key on the L2 trigger so that it will not restart every time, but now the B button still will not work in game. Additionally, the A is the B button in Emulation Station, then it swaps when I load Mario Kart or the Ocarina of time. I am new to this so any help would be appreciated.
-
@pegasus1130 Please open a new topic and add details about your system, as detailed in https://retropie.org.uk/forum/topic/3/read-this-first.
-
@pegasus1130
I am dealing with a similar issue and I am now very, very close to getting it working. I found a post from a year or so ago which suggested that opening the retroarch GUI from within the emulator, then remapping from the "control" menu therein. For me, this involved hitting f1 on a keyboard to bring up the retroarch gui and then switching each button around according to the results of jstest, and finally saving a "core remap file". This let me fix everything but a few buttons. The issue that remains is that there is no listing in that controls menu for buttons 0 and 1, which are my C up and C right.
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.