Friday, January 24, 2020

Setting up a Raspberry Pi 3/3+ and RGB-Pi JAMMA... [UPDATED 05.10.20]

[UPDATE 05.10.20] The OS has since been updated to Version 2. Along with that, the RGB-Pi Wiki has been updated to include a visual tutorial like this one. Check out the RGB-PI INSTALLATION TUTORIAL and the RGB-PI OS TUTORIAL. As the Wiki is now updated, I will no longer update this tutorial and I am leaving this up for posterity. Many thanks to aTg and rTomas from RGB-Pi for all their hard work with everything related to the RGB-Pi and it's OS. I'm glad I could help them and everyone else with this tutorial. Have fun, and keep gaming!

This post is mainly for the English speaking people. There are some videos about using the JAMMA RGB-Pi, but most of them are just a quick introduction to the JAMMA RGB-Pi and quick review, or they are in Spanish (Hola mi amigos de habla español). I'm hoping to give a visual aid for those, like myself, are visual learners.

That being said...

Here's where you can order the JAMMA RGB-Pi. You'll need to provide some basic information (name, mailing address, email), then you'll get an email within 24 hours with payment information. At this point, the ordering process may seem sketchy, but don't despair. I need to point out that I AM NOT A PAID REPRESENTATIVE FOR THE RGB-PI. I did place my own order, and within 2 weeks, I received the JAMMA RGB-Pi in the mail from Barcelona, Spain.

[UPDATE 02.22.20] For ordering, you just need to provide what product you're planning on purchasing, destination, and your email address. You'll still get an email with further instructions for ordering.

It's packed in a foam block and shipped in a padded envelope. It arrived unscathed, which is a great plus.

Now, while you're waiting for the JAMMA RGB-Pi, you could prep some things to make the installation easier. Go to this link to view the original instructions. I'll be following the instructions for the most part, but I'll be jumping around, since there is a lot of prep work for it.


Optional Prep Work

If you have a 3D printer, or access to one, you may want to consider printing a A mount and fan shroud/duct. This mount will house your Raspberry Pi and cool your JAMMA RGB-Pi as well.

This is my print/setup. You'll also want to get some M3 nuts and bolts to get it all secured. At the time of this post, the mount needs to be modified slightly in order for it to fit together properly. See the comments at the Thingiverse page of the mount to get some tips.

It's a bit of a tight fit for M3 screws to go through the Raspberry Pi's original mounting holes, so I drilled them out just a little. Go with slow rotations if you plan on doing this modification, or you run the risk of destroying your Raspberry Pi in the process.

[UPDATE 02.22.20] Originally, I created this print but wanted to use M3 screws. Back then, the print didn't accommodate for M3 nuts. The newest revision of the base has an option to use M3 nuts, so the modification I did in the next step is not necessary.

I used a countersink bit so the bolts sit flush. The original design called for the bolt or screw to be screwed directly into the mount from the top. Unfortunately,  I didn't have any screws that would fit flush against the board.

 I had long enough bolts to go through the bottom, so I ended up fastening the nuts on the board. I quadruple checked that the nuts were not touching anything adjacent to them.

 For the fan shroud part, I had to go through the top. Going through the bottom made both the JAMMA RGB-Pi and the Raspberry Pi bow...also, the bolts weren't long enough.

This print utilizes a 40mm computer fan for active cooling. The JAMMA RGB-Pi also requires a heat sink to be placed a large gold square. There are heat sink kits available through most online retailers. The same heat sink that is used for the Raspberry Pi can be used for that spot on the JAMMA RGB-Pi. I recommend ordering a multi pack so you can also place some on the Raspberry Pi for more extensive cooling.

You should also get a micro SD card and a USB drive. You will need an 8GB micro SD to flash the RGB-Pi OS to, and a minimum 32GB USB drive for the BIOS files and games.


Prepping the micro SD card

While you're still waiting for the JAMMA to RGB-Pi to come in, and if you already have a micro SD card readily available, it's time to flash the OS to it. You'll need to download the RGB-Pi OS and also Balena Etcher. There are other programs you could use to burn the OS to the micro SD card as well; if you're more familiar with those programs, the procedure is generally the same. If not, download and install Etcher to your computer.


Insert your micro SD card to your computer and let it be recognized, taking note of what drive letter it is assigned. After that, start Etcher. Etcher's interface is very simple. You'll first select what image you want to burn (in this case, RGB-Pi OS). Make sure you know where the OS image is saved on your computer. The micro SD card should already be selected in the second step of the process. Verify that the drive letter corresponds to the one your micro SD card has been recognized in. If all look good, then the next step is to click Flash.

 You'll see this screen next. Let Etcher do it's thing. It'll flash the micro SD card then verify what it flashed.

You'll see this after verification. Just click Cancel. DO NOT CLICK FORMAT DISK! Otherwise, you'll have to flash it again. 

After flashing the micro SD card, insert it into the Raspberry Pi. You can complete all the finally assembly at this point, if you have the 3D printed parts made and/or the JAMMA RGB-Pi arrived.

This is how mine looks. To power the fan, I have it drawing power from the USB. It's only 5V, but its enough to keep the Raspberry Pi and the JAMMA RGB-Pi cool through most sessions. If you're fan is rated for 12V, you can connect it directly to the 12V line on your arcade cabinet's power supply.


If you have a 6 button cabinet, there is one more step to be done. There are 2 jumpers on the JAMMA RGB-Pi that needs to be cut (J1 and J2). Take a hobby knife and cut right in between those jumpers.

[UPDATE 03.30.20] If you're planning to install your JAMMA RGB-Pi into an MVS (Neo Geo cabinet/harness), there is a switch on the opposite side of the JAMMA RGB-Pi to switch it from mono sound (which most JAMMA cabinets have) to stereo sound (MVS cabinets).


If you currently have a JAMMA harness with mono sound and want to switch it to stereo, you'll have to switch how audio is connected. Check the above to see what needs to be changed.

JAMMA Time!

Now that it's all assembled, it's time to install it in your JAMMA arcade cabinet!

In the instructions, it mentions to install a "T" piece into your JAMMA harness, if yours doesn't already have one in it. The JAMMA RGB-Pi does come with 3 embedded in the foam that the JAMMA RGB-Pi was sent in. It goes into pin 7 of your JAMMA harness.

This is mainly to protect the JAMMA RGB-Pi, or any JAMMA game, from being inserted incorrectly, potentially destroying components on the board.

Next, you will need to check the 5V voltage pin (pin 3). With ONLY your multimeter connected to pin 3 and ground, set your meter to read DC voltage and adjust the voltage at pin 3 to 5.25 VDC. I luckily have a power supply that has an adjustable 5V rail, but not all may have it. I asked on the RGB-Pi Discord and it is recommended that the 5V pin be tuned to 5.25VDC and anything more than that could be potentially bad for the JAMMA RGB-Pi.

 IF your cabinet doesn't have adjustable 5V rail, you might want to consider investing in one in the future. You could try using your current power supply without adjusting the 5V pin. However, neither I, nor the fine folks at RGB-Pi will be held responsible for any damage done to your JAMMA RGB-Pi, Raspberry Pi, your arcade cabinet, the arcade power supply if you choose to proceed WITHOUT adjusting the 5V pin.

After adjusting the 5V pin, it's time to install the JAMMA RGB-Pi to the JAMMA harness. But before you do, I'll have to stress this:

MAKE SURE THE POWER SUPPLY TO YOUR ARCADE CABINET IS TURNED OFF BEFORE YOU INSTALL YOUR JAMMA RGB-PI!


Remember, with the "T" piece in place, you can only insert the JAMMA RGB-Pi one way, so don't force it on if it's not going on properly. Check the orientation of the JAMMA harness and readjust if necessary.

Turn on the power supply to your arcade cabinet. You should see the red power light turn on, then shortly, the green access light should start blinking.

 If all goes well, you should see the RGB-Pi OS splash screen...Sorry, I was too excited to see this thing to boot up the first time that I didn't wait until the whole splash screen popped up.

 You'll then be greeted with this screen. This is to set up the controls of the cab for the RGB-Pi OS.

[UPDATE 03.21.20] If you need to skip some button inputs, just hold down any of the buttons you've already set up.

 This screen is essentially telling you that it's preparing the micro SD card for the OS. At this point, let it do it's thing. It will take a few minutes to complete.

 You'll see this screen when everything is done. It'll then reboot the OS.

 At this point, you'll see this screen. As you can see, it's all in Spanish. If you're an English speaker, this doesn't help. Here's how you change the language.

 Go to this cog icon. Press the A button.

 The first option will allow you to change the language from Español to English by moving the joystick left.

 After selecting English, press B to go back. You'll see a little loading screen before it goes back to the main screen.
There we go. As you can see, there are no games installed. This is where the USB drive comes in.

 Navigate to the "Settings" (that cog icon), then move to "Load Games From". If you haven't inserted your USB drive into the Raspberry Pi, you can do so now. Give the Pi a few seconds to read the drive, then back on the screen, press right on the joystick. It should show USB/NFS option, then switch over to another screen.

The screen will look similar to this. When it activates the USB, the OS will write the proper folder structures to it. This is where you'll need to place the BIOS files and game ROMS to.

At this point, take the USB drive to your computer and load all the BIOS files and game ROMS to it. Bring the USB drive back and insert it in the Pi. If your cabinet is still on, insert your USB drive to the Pi, navigate to "Information". You'll see an option there that allows you to search the drive for files on the drive. Select that, and give it some time to index the drive.

When it finishes, the OS will go back to the main screen and should show you all the games you have on the USB drive.

If the games were detected, you should see a screen similar to this, where it shows the consoles and/or the arcade games on the USB drive.

At this point, your setup should be all ready to go. It's more than likely that you'll have to fine tune the controls to your liking. In order to do that, you'll have to get into the settings for Retroarch. Button combination is usually set to pressing "Start" and "Y" button.

I may add on do this in the future by either adding to this blog post or by making another blog post. I'm hoping that this helps anyone to get their setup going. Feel free to @ me on Twitter @goombakid if there's something I'm missing here or to give feedback. If you need any further help, go to the RGB-Pi Discord and ask your question there. It usually gets answered pretty quick.

Good luck, and have fun gaming!

9 comments:

  1. Excellent write-up! I just got mine in the mail today. My board is a little different though; it has pads for 12v/5v/Gnd and I'm assuming those are for wiring a fan.

    ReplyDelete
    Replies
    1. I think there were a few revisions of the board. I got the one that had the point to add buttons 5 and 6 if you had a kick harness.
      5V should be enough to cool both the RPi and JAMMA RGB-Pi if your cab is on for a quick gaming sesh. Use 12V if you're leaving your cab on for a long time.

      Delete
  2. Thanks for the write up. Almost ready to start putting things together. This will be really helpful.

    ReplyDelete
  3. Thanks so much for the advice 😁

    ReplyDelete
  4. Great instructions. Can you elaborate on how the Jamma RGBpi connects to video. There is nothing onlie about this. I realize is has RGB on the Jamma harness, but I assume you can also use any of the the outputs on the RPi. Also, Does the SD card need to be dedicated to the OS while games must come from USB HD, or can ROMS be put on the SD card as well. Noob here, obviously. TIA!

    ReplyDelete
    Replies
    1. I'm not the creator of this thing, so I'm not sure how to answer it. I'll try my best, though.
      The video is coming off off the GPIO pins on the Pi itself. I'm not sure what wizardry happens, but I'm thinking most of the magic is done in the OS itself, since it's pre-configured for RGB monitor use.
      You can load the ROMs onto the SD card instead of an external drive, you'll just have to know how to upload your games to the SD card after burning it. Using an external drive makes it easier to add games.

      Delete
  5. Great tutorial. Is the Discord still up? I tried to find it and it is coming up not found.

    ReplyDelete
  6. Hey thanks for this post! Found it through a google image search for RGB Pi. Just picked one up myself and trying to find a 3 B+ to pair with it - tough going these days with supply line tomfoolery. Got some questions for you if you have a moment - What length M3 screws did you get for this? I'm also going to order a 5V 40mm fan, but kind of odd it's a 40 and not a 30 as most Pi kits are 30mm... I'm assuming a 30 won't fit on that mount? Or maybe it will? Thanks again for this extensive write up, there's not a lot of info I can find on this kind of project, unsurprisingly.

    ReplyDelete
  7. hola e instalado el rgb-pi jamma raspberry 4 en una arcade video sonic va todo bien pero no consigo sacar el sonido conecto un cable del altavoz al pin10 o pi L y otro a masa pero nada de nada alguna solucion me podeis dar sali2

    ReplyDelete