Welcome to the Button Freak project! This is a DIY game console built on the ESP32 FireBeetle, featuring two classic games: Snake and Bouncing Ball. This project demonstrates how to create a simple game console with a retro feel using modern microcontroller technology.
• Games: Includes Snake and Bouncing Ball.
• Display: High-quality 320x240 IPS LCD.
• Controls: Single button for gameplay.
• Audio: Buzzer for sound effects.
• ESP32 FireBeetle: The microcontroller used for the project.
• Display: 320x240 IPS LCD.
• Buttons: Single button for controlling the games.
• Buzzer: For sound effects.
• Power Supply: Battery or USB power source.
• Development Environment: Arduino IDE.
• Libraries:
o DFRobot_GDL - For display handling.
- Install the Development Environment:
o Arduino IDE for coding.
o Set up the ESP32 board in your IDE.
- Install Required Libraries:
o Install the DFRobot_GDL library through the Library Manager or by downloading it from GitHub.
- Connect the Display:
o Connect the display to the ESP32 using the provided wiring instructions. Ensure all connections are secure.
- Connect the Buttons and Buzzer:
o Connect the buttons and buzzer to the ESP32 according to the circuit diagram provided.
- Clone the Repository: bash Copy code
git clone https://github.com/hackhobby-lab/button_freak.git
cd button-freak
- Open the Project:
o Open the project in your Arduino IDE.
- Upload the Code:
o Select the correct board and port in your IDE.
o Upload the code to the ESP32.
• Main Menu: Navigate through the main menu using the buttons to select between Snake and Bouncing Ball.
• Snake Game: Control the snake using the button, navigate the screen, and avoid collisions to achieve a high score.
• Bouncing Ball: Use the button to control the paddle and bounce the ball to score points.
• Display Issues: Check wiring connections and ensure the display library is correctly installed.
• Button Response: Ensure button is wired correctly.
• Sound Problems: Verify buzzer connections and sound.
• Add More Games: You can extend the project by adding additional games or features.
• Modify Controls: Adjust button mappings or add new control options.
Feel free to contribute to the project by submitting issues or pull requests. If you have ideas for improvements or new features, I'd love to hear them!
For any questions or feedback, please contact me at Email-Outlook or open an issue on GitHub [https://github.com/hackhobby-lab/button_freak.git]. If you have any specific sections or details to add, let me know!

