Awesome
DIY-Arcade-Machine
My Very Own Arcade Machine
Welcome to the DIY-Arcade-Machine project! This is a hands-on project to build your very own arcade machine using the Interstate 75 - RGB LED Matrix Driver from Pimoroni (PIM584), a 64x64 Pixel RGB LED Matrix with a Hub75 connector, and a KY-023 Joystick Module (or a Nunchuck). The project includes several games inspired by the classics: Simon, Snake, Qix, Breakout, Tetris, Asteroid, and Pong, all playable on a vibrant LED matrix display.
Don’t have the hardware yet? You can still try out the games by running the PyGame Branch, which simulates the experience on your PC or Mac.
Table of Contents
Hardware Requirements
- Interstate 75 (W) by Pimoroni (PIM584)
- 64x64 Pixel RGB LED Matrix with Hub75 connector
- Joystick options
- Wiring and Power Supply
- Optional 3D-printed enclosures
- Optional Mesh and Diffuser
Software Requirements
Installation
1. Set up your Microcontroller with MicroPython
- Follow the instructions for your microcontroller to flash it with MicroPython.
2. Connect the Hardware
- Connect the Interstate 75 to the RGB LED Matrix using the Hub75 connector.
- Connect the Nunchuck to the microcontroller.
3. Upload the Code
- Use Thonny (or another compatible tool) to copy the provided Python script to your microcontroller.
Usage
1. Power Up
- Ensure all connections are secure, then power up the microcontroller.
2. Start the Game Selector
- Once powered, the game selector interface will appear on the LED matrix.
3. Select a Game
- Use the joystick to navigate the menu and select a game. Press the joystick button to start.
4. Play
- Refer to the instructions below for controls on each game.
5. Exit a Game
- To exit a game and return to the menu, press both joystick buttons simultaneously.
Games
Simon
A memory game where the player must recall and repeat a sequence of colors.
- Controls: Use the joystick to select the flashed color. Repeat the sequence as it grows.
Asteroid
A classic shooter where the goal is to destroy asteroids.
- Controls: Use the joystick to rotate and move your ship. Press the button to shoot.
Snake
Guide the snake to eat targets and grow in length, but avoid hitting the walls or yourself.
- Controls: Use the joystick to control the snake's direction (UP, DOWN, LEFT, RIGHT).
Pong
A classic two-player table tennis game, where you control a paddle to keep the ball in play.
- Controls: Move the paddle up and down using the joystick.
Breakout
Break the bricks with the ball without letting it fall off the screen.
- Controls: Use the joystick to move the paddle left and right. Break as many bricks as possible!
Qix
Claim territory while avoiding enemies. Move strategically to win.
- Controls: Move with the joystick to claim territory while avoiding enemy contact.
- For a version written in Go using the Ebiten engine, click here.
Tetris
Stack blocks to form complete lines and score points.
- Controls: Use the joystick to move and rotate the blocks. Speed them up by moving them down.
Maze
A simple maze game
Fun
Enjoy building and gaming on your very own DIY-Arcade-Machine! If you encounter any issues or need assistance, feel free to open an issue or reach out.
Happy Gaming!