instructables
Single-Button Game Console With Arduino and PCB
by Mastoras Inc
Hello there, DIY enthusiasts and tech a cionados. Today, I'm excited to introduce a project that strikes a balance between
simplicity and innovation – a single-button game console. That's right, a gaming console with just one button. This
project serves as a fundamental prototype for a compact handheld gaming device.
In this article, I'll provide guidance on creating your very own game console. We won't dive deeply into the code; instead,
our focus will be on the fundamental steps necessary to bring this project to life.
This project has been a labor of love, driven by the desire to create a versatile prototype capable of running various
games. Since the code can be conveniently sourced or generated with the assistance of tools like ChatGPT, the focus here
is on building a solid hardware foundation. This console is not just about one game; it's about unlocking the potential for
multiple gaming experiences in a single device.
Furthermore, this project marks the beginning of a series of game console prototypes that I plan to develop in the future.
With each iteration, I aim to explore new features, enhance the design, and re ne the user experience. It's an exciting
journey that promises to push the boundaries of what's possible in the realm of DIY game consoles. So, stay tuned for
more, because this is only the rst step in a series of innovative creations.
Now, let's take a look at the essential components that drive this console. We'll be utilizing an Arduino Nano (or an
equivalent clone), a sleek 1.3" OLED display, a micro LiPo charger module, a basic push button, an on/o switch, and a
3.7V lithium battery to power the device.
Supplies:
Please note that the following list of supplies is for reference only and is not sponsored unless mentioned otherwise. You
can nd these components at various online retailers, electronics supply websites, or local electronics stores:
1. Arduino Nano (or Clone)
2. 1.3" OLED Display
3. Micro LiPo Charger Module
4. Push Button
5. On/O Switch
6. 3.7V Lithium Battery
7. Headers
8. Custom-made PCB (see below)
9. Soldering station
Remember to verify the speci cations and compatibility of these components with your project, read reviews, and check
ratings to ensure you're getting the right quality components for your needs.
This project came to fruition thanks to the invaluable assistance and support from NextPCB, a trusted manufacturer
Single-Button Game Console With Arduino and PCB: Page 1
specializing in multilayer PCBs. NextPCB boasts over 15 years of experience in the global PCB and assembly industry,
making it a reliable partner for projects like these. I accepted this partnership because I am familiar with their products,
and I have consistently been satis ed with the quality and service they provide.
You can explore their high-quality PCBs, starting at just $1.9, and multilayer options beginning at $6.9 at the following
link: NextPCB - Get a PCB Quote
As an added bonus, enjoy free PCB assembly for the rst 5 boards through this link: NextPCB - Get a PCB Assembly Quote
Additionally, NextPCB o ers a DFM (Design for Manufacturability) free online PCB Gerber viewer to help streamline your
PCB design process: NextPCB - Free Online Gerber Viewer
Their expertise and resources can undoubtedly facilitate your projects. Happy creating!
Single-Button Game Console With Arduino and PCB: Page 2
Single-Button Game Console With Arduino and PCB: Page 3
Single-Button Game Console With Arduino and PCB: Page 4
Single-Button Game Console With Arduino and PCB: Page 5
Single-Button Game Console With Arduino and PCB: Page 6
Step 1: Building a Breadboard Prototype
Before diving into the nal design, let's begin with a breadboard prototype. This serves as a crucial step to verify the
functionality of all components and test the initial code.
Gather Your Components and Carefully arrange them on the breadboard, making the necessary connections while
keeping the wiring tidy.
Note that you can either plug a battery into the module or a micro USB cable. Use the corresponding pin (BAT or 5V).
Ensure that the OLED display initializes correctly, and your push button registers inputs.
Upload Test Code: Load a simple test code onto your Arduino Nano to check if it communicates with the display and the
button as expected. This step is crucial to con rm that your hardware setup works as intended.
I am sharing my code but feel free to change it as you wish.
By taking this preliminary step, you can address any potential issues early in the project and ensure a smooth transition
to the nal design phase. Once you've validated the components and code on the breadboard, you'll be ready to move
on to designing the custom PCB for your game console.
Note 1: The code is written for the speci c OLED and the speci c chip it has. If you use a di erent OLED you will have to
update that.
Note 2: You can use this website to turn any image into byte arrays so you can change what the bird looks like or add
anything you want
Note 3: You can use this website to draw your own pixel art
Note 4: If you are using a clone and you are having trouble uploading the code, check this article out
Single-Button Game Console With Arduino and PCB: Page 7
Single-Button Game Console With Arduino and PCB: Page 8
Single-Button Game Console With Arduino and PCB: Page 9
Download
https://www.instructables.com/FBF/8FZT/LO772I8Y/FBF8FZTLO772I8Y.ino
Step 2: PCB Design With Fritzing
Now that our breadboard prototype is working smoothly, it's time to take the next big step – designing a custom PCB for
your game console. Fritzing is a fantastic tool to assist in this process. Here's how to do it:
1. Open Fritzing: Launch Fritzing and create a new project for your game console.
2. Create Your Schematics: Begin by creating the schematics. This provides a solid foundation for your PCB
design.
3. Auto-Route and Re ne: Use the auto-route feature to establish initial connections. Then, manually
adjust and ne-tune the wiring for both functionality and aesthetics. Ensure that no wires overlap, and
connections are neat.
4. Design Rules Check (DRC): Run the Design Rules Check to validate your design. This will help identify
and rectify any potential issues.
5. Component Placement: Arrange the components on the PCB layout as you see t. Make sure they t
comfortably, and the dimensions align with your project's requirements. Don't forget to include a hole for
the on/o button.
6. Customization: Add text labels for each component and any pins that might be confusing. This step is
critical for clarity and ease of assembly.
7. Personalize Your Design: Make the console uniquely yours by adding your name or any artwork you
desire.
Single-Button Game Console With Arduino and PCB: Page 10
8. Iterate and Customize: Feel free to use my design as a starting point and make adjustments to suit your
preferences and project vision.
With your PCB design ready, you're one step closer to bringing your single-button game console to life. This customized
PCB ensures a professional look while maintaining the integrity of your initial concept.
Single-Button Game Console With Arduino and PCB: Page 11
Single-Button Game Console With Arduino and PCB: Page 12
Single-Button Game Console With Arduino and PCB: Page 13
Single-Button Game Console With Arduino and PCB: Page 14
Download
https://www.instructables.com/FC2/15HB/LO772IA1/FC215HBLO772IA1.fzz
Step 3: Order PCB
Now that your PCB design is perfected, it's time to turn it into a physical reality. Follow these steps to order your custom
PCB from NextPCB:
1. Export Gerber Files: In Fritzing, export the Gerber les for your PCB design. These les contain the
information needed for manufacturing your PCB.
2. Create a Zip Folder: Compress the Gerber les into a single zip folder to make it easier for uploading and
sharing.
3. Visit NextPCB Website: Head over to the NextPCB website to get started: NextPCB
4. Upload Your Design: Use the website's interface to upload your zipped Gerber les. Be sure to double-
check the parameters that are automatically parsed from the Gerber le. Although they are generated
automatically, it's crucial to review them for accuracy.
5. Quantity and Solder Mask Color: Fill in the desired quantity for your PCB. The default solder mask color
is green, but you have the option to change it to any color you prefer (note that the cost may vary
depending on your choice).
6. Online Gerber Viewer Pro: As a nal check, utilize the very cool Online Gerber Viewer Pro on the
Single-Button Game Console With Arduino and PCB: Page 15
website. It's a free tool that can provide a report with "pass," "warn," and "risk" items. Ensure that your
design meets the necessary manufacturing standards.
7. Proceed to Checkout: Once you're satis ed with the design, parameters, and the Online Gerber Viewer
report, proceed to the checkout to place your order.
8. Wait for Delivery: After placing your order, patiently wait for your custom PCBs to arrive.
While you're waiting for your PCB to arrive, why not check out some of my other projects? Exploring new ideas can be a
great way to stay inspired and plan for your next creative endeavor.
Single-Button Game Console With Arduino and PCB: Page 16
Single-Button Game Console With Arduino and PCB: Page 17
Step 4: PCB Assembly and Testing
With your custom PCB in hand, it's time to assemble your single-button game console. Follow these steps to bring your
project to life:
1. Gather Your Components : Collect all the components you've prepared, including the custom PCB,
Arduino Nano, OLED display, micro LiPo charger module, push button, on/o switch, and 3.7V lithium
battery. Ensure you have your soldering iron and solder ready as well.
2. Component Placement: Carefully place and solder each component onto the PCB one by one. Start with
the low-pro le components and work your way up to the larger ones. Pay close attention to polarity and
pin placement for each component.
3. Battery Placement: Leave the battery at the very end. You can use creative methods like double-sided
tape or Velcro to secure the battery to the back of the PCB. Make sure it's positioned securely but is also
easy to access for replacing.
4. Final Connections: Once all components are soldered in place, double-check your connections. Ensure
there are no loose solder joints, bridges, or shorts.
5. Power It Up: Carefully plug the battery into the connector, and switch on the power. Watch as your
single-button game console comes to life on the OLED display.
6. Testing: Test the functionality of your console by interacting with the push button. You should see your
custom design, and it should respond to your inputs as expected.
Single-Button Game Console With Arduino and PCB: Page 18
Congratulations! You've now successfully assembled your game console. With the hardware ready, you can focus on
adding and testing di erent games, or perhaps even enhancing the design further. Enjoy your gaming experience on
this unique and personalized handheld console.
Single-Button Game Console With Arduino and PCB: Page 19
Single-Button Game Console With Arduino and PCB: Page 20
Single-Button Game Console With Arduino and PCB: Page 21
Single-Button Game Console With Arduino and PCB: Page 22
Step 5: Next Steps
Once your console is up and running, you can explore di erent games and load them onto your device. This step might
involve installing additional software on the Arduino Nano, customizing game controls for your single-button setup, and
ensuring that the games are compatible with your hardware. You can also create a user interface for game selection.
To give your game console a polished and professional look, you can design and create a custom enclosure. This can be
done using 3D printing, laser-cutting, or even repurposing an existing handheld gaming device case. An enclosure not
only protects your console but also enhances its aesthetics.
Step 6: Conclusion
I enjoyed designing and building this prototype. Please leave a like and a comment if you liked and/or any feedback.
Also, if you make it I would like to see the results.
Thanks for reading,
Yiannis
Single-Button Game Console With Arduino and PCB: Page 23