adafruit learning system Cupcade the Raspberry Pi Micro Arcade Cabinet Manual

Table of Contents

Advertisement

Quick Links

Cupcade: the Raspberry Pi Micro Arcade Cabinet
Created by Phillip Burgess
Last updated on 2018-12-05 09:34:33 PM UTC

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the Cupcade the Raspberry Pi Micro Arcade Cabinet and is the answer not in the manual?

Questions and answers

Summary of Contents for adafruit learning system Cupcade the Raspberry Pi Micro Arcade Cabinet

  • Page 1 Cupcade: the Raspberry Pi Micro Arcade Cabinet Created by Phillip Burgess Last updated on 2018-12-05 09:34:33 PM UTC...
  • Page 2: Table Of Contents

    Guide Contents Guide Contents Overview Current “Gen 3” Kit Contents: Optional additions: Prior “Gen 1” and “Gen 2” Kit Contents: Optional additions: Plan Ahead Prep Work Raspberry Pi Setup SD Card Setup First Boot Enable WiFi (if needed) Download and Install Cupcade Software Additional Steps for GEN 3 KITS ONLY Additional Steps for GEN 1 &...
  • Page 3 Okay, the Tricky Part… Cabinet Part 4 My Cupcade rocks back and forth when stood up. Configure Input Gen 2 Kit Interface Board Gen 1 Kit Beta Board Part 1 The circuit is 5 Volts but connects to the Raspberry Pi’s 3.3V GPIO pins. Won’t this fry the board? Beta Board Part 2 Arts &...
  • Page 4 Custom Cabinet PCB Files © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 4 of 141...
  • Page 5: Overview

    Overview A Maker Faire exhibit of mine once incorporated a Pac-Man theme “for the old-timers.” It was a surprise then to see young kids all recognized the characters too. How? Smartphones! Thanks to emulation — running old code byte-for- byte on modern hardware — these classic games are still played and relevant a generation later. Much of the mystique of the originals lied in the cabinets and controls.
  • Page 6: Optional Additions

    Mono Enclosed Speaker — 3W 4 Ohm (https://adafru.it/uyB) Acrylic case parts (16) Nylon #4-40 screws and nuts (approx 25 each) Blank microSD card You will also need: Raspberry Pi computer with 40-pin GPIO header, except for Pi 1 Model A+ or Pi 3 Model A+. Compatible boards include: Pi 3 Model B+ (https://adafru.it/Bi1)
  • Page 7: Optional Additions

    4-40 and 2-56 screws and nuts (15 and 3 ea., respectively) Nylon board standoffs (2) Piece of heat-shrink tubing Blank 4GB SD card USB charger/power supply (https://adafru.it/dfY) USB A to micro B cable (http://adafru.it/1513) Gen 1 kits had some additional parts not listed here; Gen 2 kits have these pre-assembled on the interface board. You will also need: Raspberry Pi Model B computer (http://adafru.it/998)
  • Page 8: Plan Ahead

    Plan Ahead This is a red pill / blue pill moment. Think a bit about the “old school” games you like to play. Home console games — those that connect to your TV — have a horizontal screen orientation. But in arcades, many games took advantage of a vertical screen. Cupcade can use either a horizontal or vertical screen orientation, but this must be decided early on.
  • Page 9 Therefore: think ahead about which game(s) you’re most likely to play. Maybe test them out on the Raspberry Pi before assembling the whole kit around it. Determine which perform acceptably with the emulator and look good on the screen…then choose a display and control combination that works well for the most (or most desirable) games from your list.
  • Page 10: Prep Work

    Prep Work The Cupcade cabinet is comprised of 16 laser-cut acrylic parts (15 in Gen 1 & 2 kits). Count the pieces to make sure everything’s there. Depending on your game control layout and choice of Raspberry Pi board, two or three of these pieces won’t be used. This is normal.
  • Page 11 The cabinet marquee has a Cupcade logo etched into it. Optionally, if you like this, you can make the design “pop” by scribbling over it with a marker and then buffing the surface with a tissue or paper towel. Do not do this with a permanent marker, unless you also have a dry-erase marker to follow up with (dry-erase markers remove “permanent”...
  • Page 12: Raspberry Pi Setup

    Raspberry Pi Setup Before assembling anything, let’s get some software installed and tested on the Raspberry Pi board. Doing this early (rather than when everything’s buried inside a case) makes troubleshooting easier. SD Card Setup Start by downloading an SD card image for RetroPie, a nice game emulation package. You’ll find this on the RetroPie download page (https://adafru.it/rA3).
  • Page 13: Enable Wifi (If Needed)

    We need to set up the system to accept keyboard input for navigating the RetroPie menus. Later we’ll make this work with the Cupcade controls, but for now we need keyboard control… Hold down any key for a few seconds so the system acknowledges the keyboard for input, then you’ll get to a configuration screen starting with the D-pad directions.
  • Page 14: Download And Install Cupcade Software

    Now that the controls are enabled, you can access RetroPie menus to set up WiFi (if using wired Ethernet, you can skip ahead to “Download and Install…” below). With no games installed on the card yet (more on that later), the only RetroPie menu option should be “Configuration.” (If not, move left or right until that item’s active), then press your “A”...
  • Page 15 One option is to type commands directly on the Pi. From the RetroPie main screen, press “F4” to exit the GUI and get a command line prompt. From here, you could test the network connection by typing: ping 8.8.8.8 (Press Control+C to exit) Or, if you didn’t already set up ssh as explained in the “SD Card Setup”...
  • Page 16 For the first question, select 1 (PiTFT 2.8 resistive) If your cupcade display will be in horizontal (wider than taller) mode, select rotation 1 If your cupcade display will be in vertical (wider than taller) mode, select rotation 2 It will take several minutes to update your Pi software and install packages ©...
  • Page 17: Additional Steps For Gen 3 Kits Only

    When asked if you want console to appear on PiTFT say When asked if you want HDMI to be mirrored, say Y After the script runs it will ask if you want to reboot. Since we have more things to install, select “no.” Additional Steps for GEN 3 KITS ONLY Skip these steps if building an earlier kit…different directions are provided below.
  • Page 18: Additional Steps For Gen 1 & 2 Kits Only

    curl https://raw.githubusercontent.com/adafruit/Raspberry-Pi-Installer-Scripts/master/arcade-bonnet.sh >arcade-bon sudo bash arcade-bonnet.sh You’ll be asked if you want to disable overscan. Yes! Disable overscan! Install GPIO-halt utility? No. This script takes a little longer to run. When it’s finished, you’ll be asked whether to reboot. Answer “no” again Additional Steps for GEN 1 &...
  • Page 19: Last Steps For All Cupcade Versions

    curl https://raw.githubusercontent.com/adafruit/Raspberry-Pi-Installer-Scripts/master/retrogame.sh >retrogame.sh sudo bash retrogame.sh This script supports several Adafruit gaming projects, and you’ll see Cupcade among the listed options — select that one. After the script runs it will ask if you want to reboot. Select “no.” Last Steps for ALL Cupcade Versions Now shut the system down manually: sudo shutdown -h now Give it about 20 seconds before disconnecting power (watch the status LED on the Pi board —...
  • Page 20: Gen 3 Kit

    Gen 3 Kit The directions on the next few pages relate only to the current third-generation (“Gen 3”) Cupcade kit. If you have a first- or second-generation kit (Gen 1 or 2), skip ahead to the corresponding section. If you bought your kit from Adafruit recently, it’s the current Generation 3 kit. There might still be some earlier kits elsewhere out there in the pipeline.
  • Page 21 Generation 1 kits had you solder up several components and wires on an Adafruit Perma Proto board. Don’t feel left out if you’re running a prior kit! Still entirely playable and in fact we’re using the exact same software across all of them. The changes are mostly to accommodate new hardware as supplies of the original Pi 1 Model B dried up.
  • Page 22: Assemble Components

    Assemble Components These directions are for the current “Gen 3” Cupcade kit. Buttons No soldering for this first step… Plug a quick-connect wire set into each of the four buttons. There’s no specific polarity to these…either wire can go to either pin. PiTFT Display On the back of the PiTFT, near the GPIO pins, are two pads labeled “#18”...
  • Page 23: Speaker

    The analog thumb joystick board has a 5-pin header and quite a few pins on the stick component itself. Some of the pins may be a little bent from shipping and need to be nudged into place. The “hat” simply presses into place.
  • Page 24 Three components are soldered to the Arcade Bonnet board: A 2-pin screw terminal goes at the bottom center, where there’s a small speaker icon. This goes on the top side of the board like the other components, and is soldered underneath. A 4-pin header goes to the ANALOG pins, also inserted from the top and soldered underneath.
  • Page 25 © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 25 of 141...
  • Page 26: Dry Run

    Dry Run These directions are for the current “Gen 3” Cupcade kit. Given this project’s complexity, we’ll be testing and re-testing the system to validate our progress. Confirm your system passes each test before advancing to the next. Mis-steps are very time-consuming! PiTFT Test Install just the PiTFT display atop the Raspberry Pi, none of the other parts yet.
  • Page 27 Disconnect the PiTFT from the Raspberry Pi, then plug the Arcade Bonnet in its place. Install the 40-pin GPIO ribbon cable between the Arcade Bonnet stacking header and the pins on the PiTFT display. Note the polarity of the ribbon cable at both ends — the white wire along one edge gives an indication.
  • Page 28: If The Pitft Doesn't Work Now

    Carefully fold back the ribbon cable atop the Arcade Bonnet. Connect the 4 wires from the joystick to the ANALOG header: VCC → 3V Xout → X Yout → Y GND → G Plug the two wires from the speaker into the screw terminals and tighten with a tiny screwdriver.
  • Page 29: If The Buttons/Joystick Don't Work

    Yay! Let’s test the other parts… Press F4 to exit RetroPie and get a command line prompt. Try pressing the buttons and moving the joystick. Some of these should produce characters on the screen. (It’s normal that not all of them will…by default some buttons may be assigned to “modifier” keys like Shift or Control which don’t produce any output on their own.) Press Return on the keyboard a couple of times (ignore any error message) and then type: sudo aplay /usr/share/sounds/alsa/Front_Center.wav...
  • Page 30: Cabinet Part 1

    Cabinet Part 1 These directions are for the current “Gen 3” Cupcade kit. A handful of images from different Cupcade revisions might still be present in the following pages. Don’t panic if your Cupcade looks slightly different…it should all work the same. Lighting and staging photos is time-consuming! Fitting all the electronics inside the case is the most challenging part of this project.
  • Page 31 Early on, we mentioned a choice to be made: centered or off-center joystick? Now is your last chance to decide. There are two acrylic parts required for the controls. Select the pair that matches your desired control layout. The other two can be stored somewhere in case you want to switch it out later.
  • Page 32 Insert the two red buttons into the chosen control cutout. The two black buttons then go in this cabinet front piece. Notice the piece with the red buttons has two “bites” along the top edge. If they’re at the bottom, and using an off-center joystick, undo the buttons and flip this piece over.
  • Page 33: Joystick

    Joystick When installing the joystick on this support piece, make sure these two bumps are at the bottom. Insert three screws as shown (not four), front to back, and then add a nut to each. Speaker © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 33 of 141...
  • Page 34: Screen

    Look closely and you’ll notice the speaker enclosure is asymmetrical. It needs to be turned the correct way for the speaker cone to be centered over the grille cutout. The speaker mounts behind this piece of the case. Insert two screws from the front, passing through both the case piece and speaker mounting holes.
  • Page 35 Turn this screen support piece around until you find the correct alignment for the buttons and GPIO header. Place the display atop this piece with the header settling into the large center hole and these two mounting holes aligned. Insert two screws front to back. Add nuts at the back.
  • Page 36: Base

    Base The base piece has board outlines scored on the top surface, and six mounting holes. The three “inner” holes (outlined in green) are for Raspberry Pi Zero boards, while the “outer” holes (outlined red) are for a Pi 3, Pi 2, etc.
  • Page 37 Insert a screw, coming up from the underside, through each of the three mounting holes…whichever set you’re using…then add a nut from the top side. Don’t tighten these nuts all the way. They should be positioned only about halfway along the screws’ length. ©...
  • Page 38 Now set the Raspberry Pi atop the screws. Only three of the board’s four mounting holes are used (the fourth would interfere with other parts of the case). Make sure the SD card slot is aligned with this semicircular “bite” in the base. I’ve built this project dozens of times now and still get this wrong sometimes, then have to go back and re-do these steps! The Raspberry Pi’s mounting holes sit fairly close to some components.
  • Page 39: If Using A Pi Zero

    Here’s how it looks when properly installed. Nuts are flush with both sides of the board, not pinching down on components. And the board is elevated at just the right height for the SD card slot and side cutouts to work. If using a Pi Zero…...
  • Page 40 The left side of the Cupcade case has a cutout for the USB and Ethernet ports on the Pi 3 / Pi 2 / etc. If building with a Pi Zero, this leaves a big empty hole in the side. This small piece, along with two screws and nuts, can be used to seal the hole.
  • Page 41: Cabinet Part 2

    Cabinet Part 2 These directions are for the current “Gen 3” Cupcade kit. Install the Arcade Bonnet atop the Pi GPIO header as you did during the dry run. Plug one end of the 40-pin ribbon cable into the pin header on the back of the PiTFT.
  • Page 42 The screen fits into two slots at the bottom of the speaker grille. Depending which way you’ve installed the screen — horizontal or vertical — one “T-slot” will be located at either the left or the right side. For a VERTICAL SCREEN: the T-slot should be on the LEFT.
  • Page 43 The quick-connect wires for the “A” and “B” buttons pass through corresponding cut-outs in the joystick support piece. All the same connections should now be made as they were during the dry run… Speaker wires connect to the screw terminals on the Arcade Bonnet. Button quick-connects (4) go to the sockets along the same side of the Bonnet.
  • Page 44: Cabinet Part 3

    Cabinet Part 3 These directions are for the current “Gen 3” Cupcade kit. The case uses the “T-slot” assembly technique, with #4-40 nylon screws and nuts. You saw one of these when joining the screen and speaker pieces. Unlike that first slot, the remaining T-slots will be too deeply recessed to reach with fingers.
  • Page 45 If using a Pi 3 or similar form-factor board, slide a nut into these two T-slots from the underside. The board with block them from slipping out the other side. Cover each with a small piece of masking tape to keep them from falling out the front.
  • Page 46 If using a Pi Zero, the sequence is a little different. Apply the tape first to the bottom face of the base piece, covering the two T-slots. Then, from above, slide a nut into each of the two slots. Really press them in to make sure they’re making good contact with the tape.
  • Page 47: Okay, The Tricky Part

    And once more for the joystick support. Two pieces of tape from behind, two nuts from the front. There should be 8 nuts and tape bits at this point. Okay, the Tricky Part… Set one of the large side pieces flat on your work surface.
  • Page 48 Take the jumble of parts and try to (roughly) align the tabs on the speaker grille, screen and joystick supports with the corresponding holes in the side piece. They probably won’t stay in those holes for very long, but at least you’ll know where they belong.
  • Page 49 Pivot the screen support piece up slightly, fit the screen bezel into the slots on the speaker grille, and lower it all back into place. Fit the joystick and button supports into their own slots as you’re working on this section. Use masking tape to hold these four pieces in alignment.
  • Page 50 The trick now is to pick the whole thing up just enough to feed these two screws through their corresponding holes in the side. The screws don’t need to be tight…in fact a little “give” is helpful at this stage. They just need to catch the nuts that are taped in place.
  • Page 51 Now to repeat these four fasteners on the opposite side. Make sure all four nuts are still held in with tape. If any have fallen out, press them back into place. Now set the other side piece on top, roughly in position. I can guarantee the tabs won’t all fit.
  • Page 52 Here I’m starting with the joystick area…but you might want to start with the base piece instead; it has the fewest interferences. It’s only because I’ve done this a few times and have the hang of it. Get the tabs and holes aligned for nearby parts, then insert a screw.
  • Page 53 All screws now in place. Victory! You can remove all the tape that was holding the nuts in place. Some of these will be deeply recessed; you might need tweezers to reach them. Now gather up the remaining case parts, the ones with no T-slots…...
  • Page 54: Cabinet Part 4

    Cabinet Part 4 These directions are for the current “Gen 3” Cupcade kit. To fit the remaining pieces, it’s necessary to ease up on some of the case screws…but only slightly, and one or two at a time. If unscrewed too far, the nuts can fall off inside the case. Then you’ll have to dismantle the case and go back several steps to rebuild everything.
  • Page 55: My Cupcade Rocks Back And Forth When Stood Up

    Loosen this screw to insert the cabinet marquee and “roof” piece, then re-tighten. Get all the wires stuffed inside the case. Check the joystick jumper wires, which may have pulled free. If everything fits and is still connected, loosen this screw nearest the back (and maybe the base screw a bit as well), lift the side and pop in this back cover.
  • Page 56 © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 56 of 141...
  • Page 57: Configure Input

    Configure Input We initially configured the system to work with a USB keyboard for input. A few more steps are needed to get the onboard controls fully working. Plug in a USB keyboard and connect power to the system. It should boot just like during the dry run, with the RetroPie main menu appearing in a minute or so.
  • Page 58 Hold down any of the Cupcade’s buttons for a few seconds and you’ll see the system respond KEYBOARD. (This is normal — the Arcade Bonnet software emulates a keyboard.) Then you’ll get to a configuration screen starting with the D-pad directions. Move the Cupcade joystick as indicated for each of the four directions.
  • Page 59 Keep going until it asks for the “X” button… Cupcade doesn’t have this many buttons! It’s mostly designed for simpler oldschool games. So you have a choice… If you hold down one of the Cupcade’s buttons for a few seconds, that item will be skipped. Or you can assign these functions to keys on the USB keyboard, which you’ll need to have plugged in for games that require these extra inputs.
  • Page 60: Gen 2 Kit

    Gen 2 Kit You probably don't have one of these unless you have a very old kit! The directions on the next page relate to the second-generation (“Gen 2”) Cupcade kit. If you have a first- or third- generation kit (Gen 1 or 3), follow links in the left column to the corresponding section. If you bought your kit from Adafruit recently, it’s the current Generation 3 kit.
  • Page 61 Generation 1 kits had you solder up several components and wires on an Adafruit Perma Proto board. Don’t feel left out if you’re running a prior kit! Still entirely playable and in fact we’re using the exact same software across all of them. The changes are mostly to accommodate new hardware as supplies of the original Pi 1 Model B dried up.
  • Page 62: Interface Board

    Interface Board These directions are for the “Gen 2” Cupcade kit. Earlier Gen 1 kits had a DIY interface board. You probably don't have one of these unless you have a very old kit! A small circuit board — specially designed just for Cupcade — features a joystick adapter circuit and a small audio amplifier.
  • Page 63 Cut two (2) wires about six inches long and strip about 1/4" of insulation from both ends. 24 gauge stranded wire is ideal. A little thicker or thinner is okay, as is solid-core wire…stranded is simply more flexible. Color-coding the wires likewise isn’t essential; one color will suffice if that’s what you have.
  • Page 64 Cut the audio cable so it's a little longer than the ribbon cable. Strip about 1" of the outer jacket only to reveal the three wires inside: two are insulated, the third is bare copper. Strip 1/4" insulation from the two inner wires. Twist the stranded copper wire into a tidy bundle.
  • Page 65 That bare copper wire on the audio cable is a problem… it might contact metal parts in the vicinity. We must insulate! Slide a small piece of heat-shrink tube a few inches down the cable (around the whole thing, not just the copper wire).
  • Page 66 Assemble the analog thumb joystick. Some of the pins may be a little bent from shipping and need to be nudged into place. The “hat” simply presses into place. Install a 5-pin header from below. Make sure all your solder connections are smooth and clean, like tiny Hershey’s Kisses®.
  • Page 67: Gen 1 Kit

    Gen 1 Kit You probably don't have one of these unless you have a very old kit! The directions on the next few pages relate only to the first-generation (“Gen 1”) Cupcade kit. If you have a second- or third-generation kit (Gen 2 or 3), follow links in the left column to the corresponding section. If you bought your kit from Adafruit recently, it’s the current Generation 3 kit.
  • Page 68 Generation 1 kits had you solder up several components and wires on an Adafruit Perma Proto board. Don’t feel left out if you’re running a prior kit! Still entirely playable and in fact we’re using the exact same software across all of them. The changes are mostly to accommodate new hardware as supplies of the original Pi 1 Model B dried up.
  • Page 69: Beta Board Part 1

    Beta Board Part 1 These directions are for the original “Gen 1” Cupcade kit. Later generations of the kit are described in their own sections. You probably don't have one of these unless you have a very old kit! It’s a tight squeeze, but everything just fits on a 1/4 size Perma-Proto board! The Perma-Proto circuit is neatly divided into two sections.
  • Page 70 The Perma-Proto is turned around, with the labels upside-down. It’s fine, this orientation just makes our circuit easier to lay out. Cut a wire a little over 2 inches long and strip the ends. Run this along row 9 between the two ground (blue) traces.
  • Page 71 Eight short jumpers are now installed in the positions shown in pink. Most of these are very small, joining adjacent pads. We can use the un-insulated clippings from the prior step because no other conductive traces are crossed. Install these similarly to the resistors: bend each jumper into a small "staple"...
  • Page 72 Six more jumpers are now installed as shown in pink (prior steps are gray). Because these jumpers cross other traces, they should be cut from insulated wire, do not use the resistor clippings for this step! © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 72 of 141...
  • Page 73 © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 73 of 141...
  • Page 74 This diagram shows where the TS922 amplifier and LM339 comparator ICs will be installed later. In their place for now we’ll install sockets, then add the chips after everything else is complete. Make sure you get the 8-pin socket in the correct position —...
  • Page 75 © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 75 of 141...
  • Page 76: The Circuit Is 5 Volts But Connects To The Raspberry Pi's 3.3V Gpio Pins. Won't This Fry The Board

    Install the 100 µF capacitor in the position shown. In the photo, notice the wires now bent around the sockets. Don’t add the chips yet, we’ll do that later, after the rest of the soldering. This is a good time to pause and double-check your work. Do your wires and components match the layout precisely as shown? Count the number of wires and components and the spaces between them.
  • Page 77 unregulated 5 Volts (which we really need for the amplifier) never gets back to the Pi…assuming it’s all assembled correctly, so please double-check everything! © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 77 of 141...
  • Page 78: Beta Board Part 2

    Beta Board Part 2 These directions are for the original “Gen 1” Cupcade kit. Later generations of the kit are described in their own sections. You probably don't have one of these unless you have a very old kit! This page is mostly prep work: measuring, cutting and stripping wires, making labels and bits of heat-shrink tube. Doing these steps carefully should make the next steps less troublesome.
  • Page 79 Make sure all your solder connections are smooth and clean, like tiny Hershey’s Kisses®. There should be no solder balls or bridges, no gaps between pins and their corresponding pads. A whole mess of wires need to be cut to about six inches long. You don’t need a ruler for this…the ribbon cable is a perfect size.
  • Page 80 Cut eight (8) wires about six inches long and strip about 1/4" of insulation from both ends. 24 gauge stranded wire is ideal. A little thicker or thinner is okay, as is solid-core wire…stranded is simply more flexible. If you have some different colors of wire, you can color- code these.
  • Page 81: Arts & Crafts Time

    Cut the audio cable so it's a little longer than the ribbon cable. Strip about 1" of the outer jacket only to reveal the three wires inside: two are insulated (red and either white or black) and the third is bare copper. Strip 1/4"...
  • Page 82 Make 12 labels, something akin to this list: U (up) D (down) L (left) R (right) A (primary button) B (secondary button) X (joystick horizontal) Y (joystick vertical) + (5V) – (Ground) ¢ (Coin insert) 1P (1 Player Start) Each label has two symbols written on it, so it’s readable from either side.
  • Page 83 Four of the white quick-connect wires should be labeled with: A, B, ¢ and 1P. The other four quick-connect wires do not receive labels. The four conjoined jumper wires should be labeled with: X, Y, + and –. Four of the plain wires should be labeled: U, D, L and R. If following our color scheme, these would be the green wires.
  • Page 84: Beta Board Part 3

    Beta Board Part 3 These directions are for the original “Gen 1” Cupcade kit. Later generations of the kit are described in their own sections. You probably don't have one of these unless you have a very old kit! Let’s refer to this diagram again. The Perma-Proto circuit is done, now we’re placing all the long wires. Button Wires ©...
  • Page 85 Gather up four quick-connects (the unlabeled ones) and squeeze the tips through a piece of heat-shrink tube. Slide the heat-shrink all the way down, near the metal spades, but don’t shrink it yet! © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 85 of 141...
  • Page 86 Solder the other end of these four wires to the lower ground bus on the Perma Proto board. The wires enter from the top and are soldered on the underside. Clip any excess wire protruding from the bottom. Now slide the heat-shrink back down the wires, about 3/4"...
  • Page 87 Now do a similar thing with the four labeled quick- connect wires. Slide a piece of heat-shrink as far along the wires as it will go. Now slide just one wire part way out, so we can tell it apart from the others at the bare end. Here we pulled the A wire and can identify its tail from the others.
  • Page 88 Using the schematic at the top of this page for reference, solder the other end of the wire to the appropriate point on the T-Cobbler. Wire A goes to Pin #21/27 The wires should enter from below the Cobbler and are soldered on the top.
  • Page 89: Joystick Wires

    Slide the heat-shrink tube down close to the Cobbler and apply heat. It's so tidy! Joystick Wires It’s a very similar game with the U/D/L/R wires: squeeze them all through a piece of heat-shrink tube, then pull out one wire at a time, soldering the tail (unlabeled) end to the appropriate locations on the Cobbler…...
  • Page 90 L to SDA R to SCL D to #4 U to #17 Scoot the heat-shrink down close to the Cobbler and… you know the drill. © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 90 of 141...
  • Page 91: Power Wires

    Returning to the Perma-Proto for a moment… Solder the four ribbon jumpers (+, X, Y, –) to the appropriate points on the Perma-Proto circuit, using the diagram at the top of this page for reference. Since these wires are conjoined, they don’t really need heat-shrink tube, but you can add a piece if it makes you feel better.
  • Page 92 Solder the other end of the power wires to the appropriate positions on the Perma-Proto board, then heat-shrink the tubes near the ends. The two boards are now permanently connected and will conspire to make your life miserable. Before making further connections between these two boards or any other parts, plan it out first…make sure you’re not tying knots.
  • Page 93: Audio Wires

    Audio Wires That bare copper wire on the audio cable is a problem… it connects to a ground point right next to a +5V line. We must insulate! Slide a piece of heat-shrink tube a few inches down the cable (surrounding the whole thing, not just the copper wire).
  • Page 94: Soldering's Done

    Solder two plain wires to the connection points on the speaker. You can color-code these if you like, but it’s really not vital. Then add two pieces of heat-shrink tube. Don’t shrink yet! Solder the opposite end of the wires to the corresponding points on the amplifier circuit, then shrink the tubing near each end.
  • Page 95 © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 95 of 141...
  • Page 96: Gen 1 & 2 Continued

    Gen 1 & 2 Continued… Other than the electronics, the first- and second-generation kit assembly is the same… © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 96 of 141...
  • Page 97: Pitft Assembly & Test

    PiTFT Assembly & Test These directions are for the first- and second-generation Cupcade kits. Gen 3 assembly is slightly different, described in its own section. These directions are for the original “Gen 1” Cupcade kit. Later generations of the kit are described in their own sections. You probably don't have one of these unless you have a very old kit! Given this project’s complexity, we’ll be testing and re-testing the system to validate our progress.
  • Page 98 When soldering the female header, the Raspberry Pi can be used as a “stand” to hold the header and board in alignment. For the male header, you’ll probably need to hold it in place temporarily with masking tape. After soldering, peel the backing off the tape strips and position the screen on the board, leaving a little space between the header and the metal edge of the screen.
  • Page 99: If There's No Response

    This is what good soldering looks like. The solder flows smoothly between the pins and the pads on the board, no blobs, bridges or gaps. The Adafruit Guide to Excellent Soldering (https://adafru.it/cA6) has pointers for novices. Once you’re satisfied with the soldering and screen alignment, the protective film can be peeled from the display.
  • Page 100: Now A Second Test

    Wait about 20 seconds for this operation to run before disconnecting power. Do not proceed until you have a working system, including the PiTFT. Now a Second Test… With the system powered off, remove the PiTFT board from the Raspberry Pi. Take the ribbon cable included with your kit…...
  • Page 101 arrow keys and enter) and see if it works. This is a good time to decide which games run well or not. Press the ESC key to exit and return to the game menu. This concludes the first phase of testing. Do a proper shutdown again (ESC from the game menu) and wait about 20 seconds before disconnecting power.
  • Page 102: Dry Run

    Dry Run These directions are for the Gen 1 and 2 Cupcade kits You probably don't have one of these unless you have a very old kit! Re-install the ribbon cable between the Raspberry Pi and PiTFT, making sure the Pin 1 (white wire) is in the correct location.
  • Page 103 The Cupcade interface board now installs on the female header on the back of the PiTFT. Be super careful to line up the pins! There’s enough wiggle room either way for this to be offset by one pin. The Pi won’t boot unless it’s properly centered. ©...
  • Page 104 The board should be oriented to sit behind the PiTFT and ribbon cable, not hanging out over the side. Connect the female jumper wires between the analog thumb joystick and the Cupcade board, making sure the same pins are connected at each end (e.g. GND to GND and so forth).
  • Page 105: If The Pi Does Not Boot

    The two red buttons will serve as the “A” and “B” action buttons. The two black buttons are for “Start” and “Select” (the latter is labeled “Coin” on the Cupcade PCB, as this button is typically used for MAME’s insert-coin function). Plug each quick-connect into the corresponding labeled jack on the Cupcade interface board.
  • Page 106: Some Of The Buttons/Joystick Work But Not All

    Rejoice! Test the game menu by moving the joystick around. If you have any ROMs loaded (see the “Installing ROMs” page) you can give ’em a whirl. Some of the buttons/joystick work but not all! Check if you have all the connections solid and going to the right location. The joystick socket connectors can slip off if yanked! When You’re Done Testing ©...
  • Page 107 If you have a game loaded, hold down both the Start and Select buttons to return to the main RetroPie screen. Navigate to RetroPie’s main menu and select the “Quit” option. In the resulting menu, select “Shutdown System.” Wait about 20 seconds for the system to complete this operation before disconnecting power.
  • Page 108: Cabinet Part 1

    Cabinet Part 1 These directions are for the Gen 1 and 2 Cupcade kits. You probably don't have one of these unless you have a very old kit! Fitting all the electronics inside the case is the most challenging part of this project. Our advice: Don’t force anything.
  • Page 109 Remove all of the nuts and washers from the four buttons. You can leave the quick-connect wires attached. Lighting and staging photos is time-consuming! A handful of images from different Cupcade revisions are still shown here. Don’t panic if your Cupcade looks a little different…it should all work the same. Let’s do the credit and start buttons first.
  • Page 110 Early on, we mentioned a choice to be made: centered or off-center joystick? Now is your last chance to decide. There are two acrylic parts required for the controls. Select the pair that matches your desired control layout. The other two can be stored somewhere in case you want to switch it out later.
  • Page 111 Masking tape. You’ll need it. Doesn’t matter if it’s the blue or tan type, but it does need to be masking tape. It has a relatively weak grip and doesn’t leave residue behind. Locate the acrylic bottom piece and insert two #4-40 1/2"...
  • Page 112 Set the piece down on your work surface with the screws pointing up, then add a nylon spacer over each screw. Align the mounting holes on the Raspberry Pi over these two screws. The SD card slot should be facing the edge with the “bite.”...
  • Page 113 Add a nut on each screw and give them just a few easy turns. Once the board is held in place, remove the tape and give each screw an extra half turn or so with a screwdriver. Don’t go overboard, you don’t want to crack the plastic, just make sure the board is secure and the screws aren’t rattling.
  • Page 114 Install the joystick on its support piece, whichever one you selected (centered or off-center). Two screws at opposite corners are sufficient. Note the orientation of the joystick and support piece here. With the joystick’s silkscreen labels upright for reading, the support’s two protruding tabs should be at the bottom of the piece.
  • Page 115 Install the speaker grille using two screws at the top. The bottom holes do not receive screws (yet). However, before tightening the top nuts, make sure the bottom screw holes in the speaker and grille are aligned; there’s a bit of play. Awesome.
  • Page 116: Cabinet Part 2

    Cabinet Part 2 These directions are for the Gen 1 and 2 Cupcade kits. You probably don't have one of these unless you have a very old kit! Now we’ll join the speaker and screen parts… The screen fits into two slots at the bottom of the speaker grille.
  • Page 117: Joystick And Buttons

    Bring the two pieces together and add a #4-40 1/2" screw. This will pass through the speaker frame, the plastic grille piece and into the nut. Only one of the two speaker/screw holes is used, depending which way the screen is oriented. Joystick and Buttons Connect the female jumper wires between the joystick and Cupcade board, making sure you get the same...
  • Page 118 Plug the ¢ (left) and 1P (right) buttons into the corresponding sockets on the Cupcade board. The A and B buttons require an extra step… First, feed the quick-connect wires through the corresponding slots on the joystick plate. © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 118 of 141...
  • Page 119: Screen And Audio

    Then plug these into the corresponding sockets on the Cupcade board. Loosely fit the button support over the joystick support. It’s okay if this flops around for the time being… everything will be held in place later. Look over your wiring before proceeding. Are the wires reasonably well organized, or are they twisted around each other like weeds? If necessary, unplug one wire at a time, untangle it from its neighbors and plug it back into the correct location.
  • Page 120 The Cupcade board plugs into the back of the PiTFT as it was during our dry run. Be super extra careful to get the headers correctly aligned. There’s enough wiggle room either direction for it to go one pin out of alignment! You can do another dry run at this point if you like…it’s a really good idea.
  • Page 121: Cabinet Part 3

    Cabinet Part 3 These directions are for the Gen 1 and 2 Cupcade kits. You probably don't have one of these unless you have a very old kit! The case uses the “T-slot” assembly technique, with #4-40 screws and nuts. You saw one of these when joining the screen and speaker pieces.
  • Page 122 Then, from the top side, press a nut into the cross part of each “T.” Give it a pinch from both sides, so the tape gets a good hold on the nut. Try to get the nuts roughly centered- ish in the slots. Add tape behind the two T-slots at the top of the speaker grille, then press nuts into place.
  • Page 123: Okay, The Tricky Part

    And once more for the joystick support piece. There should be 8 nuts & tape bits at this point. Okay, the Tricky Part Set one of the large side pieces flat on your work surface. Either one is fine…we’re using the right side here.
  • Page 124 Pivot the screen support piece up slightly, fit the screen bezel into the slots on the speaker grille, and lower it all back into place. Fit the joystick and button supports into their own slots as you’re working on this section. Use masking tape to hold these four pieces in alignment.
  • Page 125 The trick now is to pick the whole thing up and feed these two screws through their corresponding holes in the side. The screws don’t need to be tight…in fact a little “give” is helpful at this stage. They just need to catch the nuts that are taped in place.
  • Page 126 Now set the other side piece on top, roughly in position. I can guarantee the tabs won’t all fit. That’s okay, we’ll align things one at a time… Start with the base piece; this has the fewest interferences. Get the tabs and hole aligned for this one part, then insert a screw.
  • Page 127 All four screws in place. Victory! You can now remove the tape that was holding the nuts in place. Some of these will be deeply recessed; you might need tweezers to reach them. If you can’t reach them, just leave them be…nobody will see them and they don’t interfere with the system.
  • Page 128: Cabinet Part 4

    Cabinet Part 4 These directions are for the Gen 1 and 2 Cupcade kits. You probably don't have one of these unless you have a very old kit! To fit the remaining pieces, it’s necessary to ease up on some of the case screws…but only slightly, and one at a time. If unscrewed too far, the nuts can fall off inside the case.
  • Page 129 Stuff the credit/start button wires inside, then slot this piece into the holes on the “table” side of the case. Pivot it upright…tabs on the base should fit into holes on the front…and finally pop the last two tabs into the “loose”...
  • Page 130 Loosen a side screw at the top. Same routine: screw tip flush with nut face, so you can flex this side up just a little bit. Insert the “roof” of the cabinet. The roof and back pieces are similar in size, but the tabs are spaced differently, so only the correct piece will fit.
  • Page 131 Slot the marquee into place, then re-tighten the top screw. So close! Isn’t it adorable? Stuff the wires into the back of the case, being careful not to dislodge the Cupcade board. © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 131 of 141...
  • Page 132 To install the back piece, you’ll need to loosen two screws: the bottom and rear-most positions. This piece pops into place like all the others. When you’re done, go around the whole case and make sure all the screws are snug. Not crazy tight…you don’t want to crack the plastic…just tight enough to stay in place.
  • Page 133 Insert the SD card, stand it up and connect power. You can connect a USB keyboard at the front if you like. Some games with complex controls may require this, but for most classic games the basic stick-and-buttons are sufficient. The game selection menu and even shutdown can be accessed using combinations of these buttons.
  • Page 134: If The System Does Not Boot

    Fire it up…see how it goes! If everything works, that’s great, you’re done! Remember: hold both the credit and start buttons for a few seconds to exit MAME and return to the game selection menu. Hold them again to exit the menu and shutdown the system.
  • Page 135: Installing Roms

    Installing ROMs Cupcade — being based on RetroPie — does not come with games installed. However it’s easy to install all manner of game system ROMs over the network. Freely-distributable “homebrew” games have been developed for most gaming consoles, and even a few that could work with arcade hardware.
  • Page 136: Moving Roms Over The Network

    Don't decompress the ZIP files! Keep the ROM files in the ZIP! Moving ROMs Over the Network The Pi system should appear on your network as retropie.local, where it appears as a SMB file server. If using a Windows system and it doesn’t recognize the “retropie.local” system on the network, you may need to install the Zeroconf software as explained in this guide (https://adafru.it/lPE).
  • Page 137 You’ll be greeted with a collection of folders, one for each type of system that RetroPie can emulate. MAME ROMs should go in the “mame-libretro” folder, NES ROMs in the “nes” folder, and so forth. Eject the “roms” volume when you’re finished. ©...
  • Page 138 RetroPie doesn’t pick up on the fact you’ve installed new ROMs for a system…one extra step is needed… Navigate to RetroPie’s main menu and select the “Quit” option. In the resulting menu, select “Restart EmulationStation.” When the main RetroPie screen starts up again, you can cycle through the newly-enabled systems when moving the joystick right or left.
  • Page 139: Downloads

    Downloads Custom Cabinet Art Looking to create custom artwork for the sides, marquee and display/control bezels? Here’s an artwork file (PDF format) you can use as a template: https://adafru.it/ARq https://adafru.it/ARq Same, for first- and second-generation Cupcades: https://adafru.it/dD9 https://adafru.it/dD9 If making vinyl stickers for the sides, you’ll probably want holes for just the screws, not every slot. It’s all there for reference though and you can delete the bits you’re not using.
  • Page 140 EagleCAD PCB files for the adapter on GitHub (https://adafru.it/pZA) (used in Cupcade gen 2) © Adafruit Industries https://learn.adafruit.com/cupcade-raspberry-pi-micro-mini-arcade-game-cabinet Page 140 of 141...

Table of Contents