Mini Bartop Arcade

by vnconrado in Circuits > Raspberry Pi

5044 Views, 45 Favorites, 0 Comments

Mini Bartop Arcade

20190618_190552.jpg

This time, I’d like to show you my old times arcade version
using Raspberry Pi Zero, based on Picade Desktop Retro Arcade Machini, as seen in this site:

https://howchoo.com/g/mji2odbmytj/picade-review-ra...

The goal of this project is to build a retro vídeo game as a gift to my brother that was portable, easy to use, beautiful and very funny.

Supplies

Electronics

20190619_083416.jpg
20190619_083345.jpg

The heart of the project is a Raspberry Pi Zero W. Despite it’s size, it has the power to do things happen. The tiny computer runs a bundge of emulators like Nes, SNes, Neo Geo, Mame, etc., offering a wide options of retro-games.

The device is equipped with a USB DAC PCM2704 board that provides digital sound in a satisfactory volume.

The controls are connected to the computer by the GPIO, which needs some work to set up the system to function properly.

And finally, this material is worth nothing without a screen. As the idea was to make something portable, all the fun is guaranteed by a 7" LCD monitor.

To power the system, a 12V x 5A switching power supply is used in this design while a 5V x 3A regulated power supply reduces the voltage for the Raspberry Pi Zero W and the monitor board.

5V X 3A Regulated Power Supply

Circuit.jpg
Board.jpg

The circuit is based on the LM 350 transistor, that provides 5.6V at 3A output current, that powers the Raspberry Pi Zero W and the LCD screen.

The assembly has no difficulties, as can be seen in the Eagle files.

Joystick Connections to GPIO

Raspberry PI Zero GPIO Pinout.jpg

Instead of using a zero-delay USB card to connect the controls to the computer (the Raspberry Pi Zero W has only one USB port, which was used as digital sound output), the GPIO was the logical way to solve the problem.

The picture shows the Raspberry Pi Zero W GPIO connections to the joystick and buttons of the device. Since we will need only one player, only the green pins are used for the game control (it’s worth to say that the ground pins is necessary to close the circuit and make things happen).

For more information, see: https://github.com/recalbox/mk_arcade_joystick_rpi...

The Assembly

20190330_075627.jpg
20190330_083620.jpg
20190330_134752.jpg
20190330_134812.jpg
20190417_144410.jpg
20190417_144432.jpg
20190418_151429.jpg
20190418_151436.jpg
20190418_151442.jpg
20190418_152018.jpg
20190418_152052.jpg
20190418_152321.jpg
20190418_161642.jpg
20190418_161647.jpg
20190611_165249.jpg
20190612_152715.jpg
20190612_152729.jpg
20190612_173916.jpg
20190612_173926.jpg
20190612_190949.jpg
20190612_191027.jpg
20190612_212614.jpg
20190612_212952.jpg
20190612_214326.jpg

The retro-arcade was made by laser-cut MDF and acrylic, mounted with plastic angles. After the pre-assembly, all the MDF parts was painted black, which led to the final assembly.

As one can see, a black plastic mask covers the acrylic front, displaying only the speakers and LCD screen.

The pictures show the assembly process.

Configuring the RetroPie

The following steps was provided by https://www.instructables.com/id/Breadboard-RetroP... and https://github.com/recalbox/mk_arcade_joystick_rp...

First, it’s necessary to download the RetroPie image, which can be done by the following link: https://retropie.org.uk/download/

Select "Raspberry Pi 0/1" option to download the image for Raspberry Pi Zero W.

The installation process, as well as all RetroPie instructions, can be found at the following link: https://retropie.org.uk/docs/First-Installation/

Configure the GPIO Controller

To set up the GPIO controller, one will need to download the mk_arcade_joystick_rpi files:

git clone https://github.com/pinuct/mk_arcade_joystick_rpi/tree/customgpio

Compile and install module:

sudo mkdir /usr/src/mk_arcade_joystick_rpi-0.1.5/
cd mk_arcade_joystick_rpi-master/
sudo cp -a * /usr/src/mk_arcade_joystick_rpi-0.1.5/
export MKVERSION=0.1.5
sudo -E dkms build -m mk_arcade_joystick_rpi -v 0.1.5
sudo -E dkms install -m mk_arcade_joystick_rpi -v 0.1.5

Auto-loading the Driver at Startup

Open /etc/modules :

sudo nano /etc/modules

and add the line you use to load the driver :

mk_arcade_joystick_rpi

Then create the file /etc/modprobe.d/mk_arcade_joystick.conf :

sudo nano /etc/modprobe.d/mk_arcade_joystick.conf

and add the module configuration :

options mk_arcade_joystick_rpi map=1

Testing:

Use the following command to test joysticks inputs :

jstest /dev/input/js0

Further instructions can be found in the following links:

https://www.instructables.com/id/Breadboard-RetroP...

https://github.com/recalbox/mk_arcade_joystick_rpi

The Final Result

20190612_220124.jpg
20190612_220549.jpg
20190613_230559.jpg
20190613_230819.jpg
20190614_074642.jpg
20190614_074657.jpg
20190618_190629.jpg
20190618_190646.jpg
20190618_191028.jpg
20190618_191129.jpg
20190618_191313.jpg
20190618_191411.jpg
20190618_191413.jpg
Picture01.bmp

As you can see, this is the end result of the project, which works well and is ready for a lot of fun! Enjoy!