Arcade Build - AUX Buttons
-
So far I;ve only used a PS3 controller with RetroPie, but looking to build a game console with arcade style controllers (big knob joystick, big buttons etc).
Going for a basic design... on the primary one, 6 buttons and a joystick, coin and player-1 button, same as controller 2 except just a player-2 button, no coin.
On the primary only however, I read a lot of posts and seen a few images where people added 4 auxilary buttons for various commands.
I assume one is a reset button maybe?
Anyways... just wondering for those who have gone the arcade machine route... what would you assign the 4 extra buttons to?
-
@THRobinson I use a button dedicated to EXIT, and another for PAUSE. Two others I use for volume up and volume down.
I would encourage not skipping coin for player two. I have coin and start for all 4 players on my four player cocktail style arcade. Some arcade games expect coin for each player. Gauntlet, for example adds health based on the player coin. Quite a few titles in fact behave a specific way based on where coin is added.
-
Have to ask the seller if has another COIN button outside of the kit. Use to love Gauntlet at the arcade... and it loved taking my coins. :D
EXIT may be good, I tried Superman last night, haven't seen that in years... and when I went to exit pressing select/start I got a COIN ERROR and couldn't escape. Keyboard was already put away so had to do the undesired option of pulling the power out.
Console itself will have a shutdown button, so not needing that on the controller. Volume I won't need... my build will be like a Playstation, Xbox, etc... console (RasPi) will sit at the TV with an HDMI cable so volume controlled with the TV remote.
EXIT and PAUSE make sense though... for the other two... SAVE and RESTORE? can you do those options for MAME games, old NES (apart from Zelda) and such?
-
@THRobinson said in Arcade Build - AUX Buttons:
I went to exit pressing select/start
I have my hot keys disabled because of things like this. Or worse, when playing something like Metal Slug and I am dropping in coins and quickly trying to press start, it is very easy to accidentally exit the game in progress! Oops. Sorry player 2. I was trying to rejoin the game!
EXIT and PAUSE make sense though... for the other two... SAVE and RESTORE? can you do those options for MAME games, old NES (apart from Zelda) and such?
Save states are good options for libretro cores-- so it depends on the emulators you use. I don't use them, but I know others here do.
-
Is there a page /instructions somewhere to manually assign buttons on a joystick?
For now I'm using a PS3 controller, I used the button setup for up/down/left/right etc... be nice to assign different functions to a couple of the buttons I don't use.
-
@THRobinson This is a loaded question because it will always depend on the emulator you are using. Also, What is the controller? Is it a keyboard controller like an IPAC over USB? Are the buttons wired up to a disassembled gamepad?
The route you take to solving this might be as simple as just configuring inputs in Emulation Station. What I do is a little more involved--I hand edit the retroarch.cfg files that correspond to ALL and in some cases to each emulator. This only affects libretro cores, so for other emulators like AdvanceMAME or AdvanceMESS, you need to edit the corresponding configuration files. As always, the wiki here can point you to the configs used for each emulator. Some even have in-game GUI menus like AdvanceMAME where it is way easier to setup controls.
Another complication that some dive into is using special drivers like the xbox driver. This can add all kinds of configuration options but it also makes things a lot harder. There are some very interesting threads in the form that go into a lot of detail.
Because everyone has a different hardware config, there is no simple answer. Check out some of the controller pages in the docs that correspond to your hardware, or at least closest to your hardware. Keyboard controllers are lacking in the docs, but searching the forums can help fill in some blanks.
-
Well, as mentioned, currently using a PS3 controller which is what I'd currently like to change.
The arcade build will be using a Zero Delay USB board that comes with the kit.
Been to a few forums, including this one, getting ideas and seeing what other have done, and general consensus is that it's a good idea to include 4 auxiliary buttons. But... most never say what they have them assigned to, which is why I'm asking here. Figured if I get a few responses of what people have set theirs to, there's probably a few that most people are using.
So far PAUSE and EXIT are on the list... especially since for me, exiting MAME games often results in me getting stuck and coin related errors.
-
@THRobinson Hmm. Well, as I mentioned, I disabled hotkeys and have a dedicated EXIT button, but my situation is the exception rather than the rule. Most folks use hotkeys and are not experiencing issues. It makes me wonder. . . how exactly is your system setup to begin with? Are you using the standard 4.2 image? ;-)
-
I have mine setup with the RetroPie controller setup...
http://bobbyromeo.com/wp/wp-content/uploads/2016/11/controllers_cropped.png
Then setup the buttons like this...
https://cdn.shopify.com/s/files/1/1020/3485/files/image015_grande.png?14598543052016245458
But... the buttons at the top (left top, left bottom, right top, right bottom) I don't seem to ever use. I'd like to remap left top and right top as pause and exit, but not sure how. The controller config wizard (or whatever it's called) didn't seem to have those options. Which I assume will be the case when I get the arcade controllers built, so, trying to sort out the 'how' before I get it built.
I'm looking at the official setup page but not seeing what I'm after. Is there a WIKI for changing the config file?
https://github.com/RetroPie/RetroPie-Setup/wiki/Controller-Configuration
-
@THRobinson My answer is to head into
/opt/retropie/configs/all/retroarch.cfg
and edit the button assignments. Make a backup first.The file has lots of comments in there describing what the various lines do. I am using
input_exit_emulator = escape
but this is a keyboard key assignment. I don't know if you can assign a gamepad button as I have never had to deal with that. Perhaps someone has asked that question in the forum already. -
Is that something I can do on a PC?
Like... connect to the RaspPi over the network, copy the file to the PC and use Notepad to edit and when done copy back?
-
@THRobinson There are several ways to do it. RetroPie menu lets you edit the config files, but I always find it easier to navigate by connecting over the network via SMB share. Done that way, you don't have to copy files, you can just edit them in place with a text editor. RetroPie has built-in shares for configs, roms, etc. which is super handy.
You start in the configs/all folder and there you can setup your retroarch.cfg file which will apply broadly across all libretro cores. Then, you can get core-specific and makes edits in the configs/emulator folders. Done properly, these retroarch.cfg files tweak the defaults from the /all folder. It kinda works like a cascading style sheet (CSS).
As a last resort, you can always edit files from the command line on the Pi using nano.
For many folks, this is what building an arcade out of a Pi is all about. The Pi is intended to be a teaching tool, and you will learn a lot customizing your preferences, even if you are just building an arcade system. I take lots of notes.
-
Excellent... I was worried I had to do it all from the cmd prompt. Even the simplest things never seem to work when I go the route. The step-by-step's I follow, I always seem to get different screens and such.
I tried UBUNTU a few weeks ago, setting up my media server (ended up with OpenElec, works great). Soon as I installed it I tried an update, wouldn't work, said something about incorrect repositories, went to uninstall LibreOffice as per a few how-to's online and YouTube, couldn't because certain files not found. And this was 5min after a new install. Should work without issues. I don't doubt that Linux OS's are great, for programmers... general population though, it's awful. :D
Thanks for the info... I never have time during the week to do this stuff, have to give it a try this weekend. Not a fan of having to pull the power out from the Pi to get out of a stuck screen.
-
@THRobinson Yeah, that power thing is very suspect. I never have problems like that, especially related to coin/start inputs. Pulling the power on a Pi this way could corrupt the SD card, depending on what it is doing when you pull the power. Most of us who have been using the Raspberry Pi for a while have had some incident like that. I am now very cautious when it comes to shutdowns and restarts. I even have a mausberry circuit installed and a script running that watches GPIO pins (button press) that issues a shutdown command. It is a weakness for sure, but one you can work around. Your lockups, however, are not normal.
Is your media server running on a Pi? I have another Pi running mine, and for simplicity's sake, I use Sam Nazarko's OSMC. It's basically a "skinned" kodi that runs on Raspbian. Sam was the guy behind the original Raspbmc, one of the early images that was basically a preconfigured Kodi for Raspbian. Anyway, he rebranded as OSMC. It looks nice, it is actively developed, stable, and runs great, even on a Pi2 and earlier. It also includes a module for Pi setup, so you can configure Wifi, and other settings beyond Kodi's reach.
I have NOT installed Kodi on my arcade system, but I will on the next one I build which will be a portable set-top box.
-
Ya... it's hit/miss on which games have the issue. MAME so far. Never had issues with NES games yet. Probably another way around it for sure, but, no keyboard hooked up. Usually start/select together exits, sometimes it just ignores the one button completely and keeps adding coins.
When I make the game console, I plan to add a button to run a shutdown command on the console (not the joystick). Bought a small momentary power switch with a small LED in it, add a resistor and connect to the GPIO's directly. I bought a pack of these and jumper wires as well, for a small guitar amp project with a breadboard, figured sacrifice a few to get the single-pin parts so no soldering to the Pi directly. Though in most cases I'll probably run the shutdown from RetroPie's shutdown screen.
I have a master power switch going in the rear as well, because still need a way to power off the powered USB hub which will power the joysticks and the cooling fan.
Media server is running an old Core2Quad I upgraded from. Was running Win7 for years, but decided to change the case, switch to a fanless GPU, and got a free 32GB SSD drive so, decided to try OpenElec. I have 2 x 3TB drives in the computer as well, and a few computers stream from it in the house, all wired with ethernet, no WiFi. Runs fine... and if I ever need to switch out the other HTPCs, I'll probably use a RaspPi. But, for the main server HTPC on my TV, I'll probably always run a full computer.... though next upgrade, I'm building a case and getting a mini/micro ATX. Looks nice right now, but the new case is noisy, flimsy, and interior layout could be better. I can build something much nicer and more silent... probably for less too. Silverstone Grandia GD09, for the price, very disappointed, but after lots of work, got the noise down and installed a Flirc, internal edition not USB, added a small iR window at the front, can't tell it's there. Works pretty good, pretty impressed with OpenElec... again, tried Ubuntu, installed it twice and still wouldn't even update properly because of repository issues and such... unimpressed.
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.