Retro Game
Hi! I'm Adrián Gómez, I present to you the Retro Game console, my Arduino based Game Boy. This project was submitted to 'Creative Electronics', a Beng Electronics Engineering module at University of Málaga, School of Telecommunications (https://www.uma.es/etsi-de-telecomunicacion/).
The aim if this proyect was to build an Game Boy on Arduino and used neopixels for screen play.
I hope you enjoy this instructable as we did enjoy making it! Also, if you need help with some of the steps or want to collaborate do not be afraid of asking in the commentary section!
Supplies
Materials:
- LCD Display.
- LCD to I2C convertor.
- Neopixel matrix.
- Buttons x5.
- Switch
- Power supply.
- Wire.
- Power supply cable.
- Arduino Uno board.
- Buzzer.
Tools that I used fot this build:
- 3D printer.
- Soldering kit.
- Flux and tin.
- Glue gun.
Software
I have used the Adafruit_NeoPixel library made by Adafruit Industries and LiquidCrystal_I2C made by Frank de Brabander to do this project.The Adafruit_NeoPixel library for controlling the LED matrix and the LiquidCrystal_I2C libary for controlling the LCD screen.
The code has a main menu, and once entered into the game, it is monitored by a state machine.
Once the console is started, a menu is displayed on the screen with 2 options:
- Play.
- Exit.
When the up button is pressed, the snake game is entered, which is a function consisting of other functions running in a loop. These functions are used to read buttons characterized as digital input with pull-up resistors (otherwise, resistors would be needed in the circuit).Then, the snake movement is handled, a retro music is played using a buzzer, collision between the snake's head and any part of its body is checked, and there is another function that draws the snake and the food.
Downloads
3D Design
The next step is design the console for this I split the console into two parts (top and down). I recomended to print first the top part for better placement of components and not run out of space.
License:CC BY-NC 4.0 Deed | Attribution-NonCommercial 4.0 International | Creative Commons
Schematic and Wiring
To the design of this schematic, it would be necessary to replace the neopixel strip with an 8x8 matrix. For the implementation, I have used a board to solder the components and keep them in place. Finally, it has been coated with silicone to secure the components in place.