Mayflash n64 controller adapter problems. All buttons configure in ES, but no config files generated or saved.
-
@justintoxicated @vretro I am experiencing the exact same issue. I have been messing around with the config files for the past 2 weeks trying to get the damn thing to work. It is recognizing it as ?USB Gamepad USB Gamepad. The I can get the controller to work in game, but the peak analog values are messed up (I.e Mario won't run). It took me so long to get it even working in the roms but now you cannot edit the config file for the ?USB Gamepad USB Gamepad so I am behind the eightball once again. I can't edit the config file in putty because something about the ? Character throws the whole system off. Is it time to throw in the towel and give up? Are there other solid adaptors that will allow you to use an original N64 controller? Full Disclosure: I got so frustrated I ordered all the games I used to have for my N64 today. They just arrived. Man I wish I could get this thing to work on Retropie
-
@nooddjob please read my post above for an awesome adapter.
-
@nooddjob you are much closer to us (im in the processes of printing return label due to the char i can't fix !) But now here you are giving me hope that it might work in game! You should be able to edit the InputAutoCfg.ini, and when you launch mupen64plus, it will generate the correct settings in the mupen64plus.cfg file (unless you set mode to 0 which tells it not to override/generate) for that device.
What are you using for an editor? I can edit in vim when I SSH in (or local terminal) but I don't expect non linux people to learn that. I can also edit via notepadd++ just by navigating to my retropie in windows explorer \RETROPIE\configs\n64\inputAutoCgi.ini. notepad++ is an ok general purpose editor that can handle a non native car as show in the screenshots posted above.
Please share how you were able to get the controller to work in game :) I have this one and NES controller adapter I have been fighting with on my only day off. Rhe NES does not have the special char and still refuses to work (though it is through retroarch not mupen64plus.!
here are the settings I pulled from links I found on the net and maybe links above. They looked ruffly correct compared to Jtest (which you can run to adjust your settings) Please note I may have modified the gamepad name which I would not do if you have it working!
; USB GamePad USB GamePad_START
[USB GamePad USB GamePad]
plugged = True
plugin = 2
mouse = False
AnalogDeadzone = 100,100
AnalogPeak = 20000,20000
DPad R = button(13)
DPad L = button(15)
DPad D = button(14)
DPad U = button(12)
Start = button(9)
Z Trig = button(8)
B Button = button(2)
A Button = button(1)
C Button R = axis(3-)
C Button L = axis(3+)
C Button D = axis(2+)
C Button U = axis(2-)
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+)
; USB GamePad USB GamePad_END -
So I got this working in mupen64plus but it still will not work in retroarch.
Starfox is much easier with the proper controller!
I feel like the driver just does not have a proper cfg file, and I'm thinking I could tweak one of the ones in udev and rename it with the joypad's name and possibly get it to register but I'm not really sure how those drivers get developed in the first place? Are these cfg files people typically write do to make the controllers recognizable in retroarch and es?
I might still return the adapter and try to find a better one, I just didn't really wanna spend $50+ on an adapter for N64. I have limited time I can return the adapter to amazon, so that puts a huge dent in development / configuration time trying to get it to work. Also I think Z and start need to be swapped in the config above.
-
I know this is a old topic but here is what i did to make this work
Delete your file here manually opt/retropie/configs/all/emulationstation/es_input.cfg
then start retropie and config controller and it should create the settings in your es_input.cfg
Here is mine
<?xml version="1.0"?>
<inputList>
<inputConfig type="joystick" deviceName="�USB GamePad USB GamePad" deviceGUID="03000000790000007918000010010000">
<input name="a" type="button" id="1" value="1" />
<input name="b" type="button" id="2" value="1" />
<input name="down" type="hat" id="0" value="4" />
<input name="hotkeyenable" type="key" id="0" value="1" />
<input name="left" type="hat" id="0" value="8" />
<input name="leftanalogdown" type="axis" id="1" value="1" />
<input name="leftanalogleft" type="axis" id="0" value="-1" />
<input name="leftanalogright" type="axis" id="0" value="1" />
<input name="leftanalogup" type="axis" id="1" value="-1" />
<input name="leftshoulder" type="button" id="6" value="1" />
<input name="lefttrigger" type="button" id="9" value="1" />
<input name="right" type="hat" id="0" value="2" />
<input name="rightanalogdown" type="axis" id="2" value="1" />
<input name="rightanalogleft" type="axis" id="3" value="1" />
<input name="rightanalogright" type="axis" id="3" value="-1" />
<input name="rightanalogup" type="axis" id="2" value="-1" />
<input name="rightshoulder" type="button" id="7" value="1" />
<input name="start" type="button" id="8" value="1" />
<input name="up" type="hat" id="0" value="1" />
</inputConfig>next open your /opt/retropie/configs/n64
use gedit to open mupen64plus.cfg
Here is my config
[Input-SDL-Control1]Mupen64Plus SDL Input Plugin config parameter version number. Please don't change this version number.
version = 2
Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic
mode = 0
Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number
device = 0
SDL joystick name (or Keyboard)
name = "USB GamePad USB GamePad"
Specifies whether this controller is 'plugged in' to the simulated N64
plugged = True
Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 4=Transfer pak, 5=Rumble pak
plugin = "2"
If True, then mouse buttons may be used with this controller
mouse = False
Scaling factor for mouse movements. For X, Y axes.
MouseSensitivity = "2.00,2.00"
The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0. For X, Y axes.
AnalogDeadzone = "1024,1024"
An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80). For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value
AnalogPeak = "20000,20000"
Digital button configuration mappings
DPad R = "hat(0 right)"
DPad L = "hat(0 left)"
DPad D = "hat(0 down)"
DPad U = "hat(0 up)"
Start = "button(8)"
Z Trig = "button(9)"
B Button = "button(2)"
A Button = "button(1)"
C Button R = "axis(3-)"
C Button L = "axis(3+)"
C Button D = "axis(2+)"
C Button U = "axis(2-)"
R Trig = "button(7)"
L Trig = "button(6)"
Mempak switch = "key(44)"
Rumblepak switch = "key(46)"Analog axis configuration mappings
X Axis = "axis(0-,0+)"
Y Axis = "axis(1-,1+)"the main stuff i changed was
mode=0
AnalogPeak = "20000,20000"
AnalogDeadzone = "1024,1024"
Im sure peak can be a bit higher my controller is worn out and deadzone could be smaller as well but these work fine for me -
@sduchnych said in Mayflash n64 controller adapter problems. All buttons configure in ES, but no config files generated or saved.:
SDL joystick name (or Keyboard)
name = "USB GamePad USB GamePad"SDL joystick name (or Keyboard)
name = "USB GamePad USB GamePad" (this does have that special character infront of it but i cant copy it here
-
@edmaul69 I know this is really old but as much as I love raphnet adapters, and they're my first choice for an adapter, they have some issues with the linux distro used in retropie that causes issues which is why I stopped using them for my retropie projects. (I mentioned this previous to @Rion as well.) Perhaps it's been fixed now that we're on stretch instead of jessie. Raphnet has a page all about the issue and how to fix it, but quite honestly patching and recompiling the kernel is not something I'm willing to do just for a USB adapter.
-
@Furluge said in Mayflash n64 controller adapter problems. All buttons configure in ES, but no config files generated or saved.:
The page states this is not an issue since RetroPie 3.8, which was released almost 3 years ago (https://retropie.org.uk/2016/05/).
Note: This section does not apply to RetroPie 3.8 SD card images, thanks to the use of a 4.4 series kernel.
-
@mitu Cool, good to know, I might have to switch back. I think three years ago would have been roughly around the time I stopped used the raphnet adapters due to the issue. Jut goes to show just how old this topic was. (2017, yikes.) (Edit: I did not buy one. I lost my goddamn mind and bought a bliss-box instead due having hell with updating to Raspian Stretch with 13 controllers connected at once.)
-
@Furluge yeah i was the reason that raphael learned about the issue which affected a crap ton of controllers. Then he so awesomely found the bug in linux and created the fix for it. But yeah its been fixed for a long ole time. 😊
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.