Close
0%
0%

Snake Game Console Mini

Small Version of my previously created Snake Game Console Project

Similar projects worth following
Greetings Everyone and welcome back. here's something FUN.

Gaming nostalgia meets modern innovation in our latest project—the Mini Snake Game Console. This scaled-down version builds upon our previous 64x32 HUB75 RGB matrix panel-based Snake Game Console, but now, we’ve taken that concept and shrunk it down to a truly handheld gaming device.
The goal was to create a smaller version of our original Snake Game Console that could run a similar version of our Snake Game Code. While the core game logic remains the same, several modifications were necessary, including adjusting display dimensions, resizing the snake, and introducing key enhancements. Now, the snake features a gradient color, adding more visual appeal, and a buzzer-driven beep whenever a food (red dot) is consumed—bringing even more satisfaction to the gameplay experience.

Powered by Waveshare's ESP32-S3-LCD-1.69, an ESP32 S3-based setup with a 1.69-inch ST7789V2 display, this mini console offers portability without sacrificing performance. Thanks to an onboard 500mAh Li-ion cell, you can game anywhere, anytime. All components, including the ESP32 board and custom button board, are housed inside a custom-designed enclosure, which we built in Fusion 360 and then 3D printed using the Creality K10 Max.

Snake Game Console Project and PICO Blasters

Let's have a look at The Snake Game Console first, which was a compact, portable system powered by a Raspberry Pi PICO, featuring a 64x32 RGB matrix panel and a 3D-printed enclosure. It runs a classic Snake game, where you guide the snake using four-directional buttons, chase down random red dots for points, and try to avoid crashing into yourself. Plus, it's got an onboard battery, so you can take it anywhere and play on the go.

Then came PICO Blaster, which takes the same hardware setup and turns it into a fast-paced Space Invaders-style shooter. With an additional custom control board, revamped gameplay mechanics, and color-coded projectiles, this game is all about reflexes and strategy.

Players navigate a spaceship, dodging incoming attacks and firing back using two types of weaponsrapid-fire bullets and a powerful blaster that wipes out everything in its path (though with a cooldown to keep things interesting!).

Both of these games were written from scratch and were a pain to code, really. Most of the development time was spent in creating the game logic and the hardware part for both devices was super easy and was prepared in less than a day.

For the Mini Version, I have only ported the Snake Game. we could make more games for the device, which will be an idea for a future project.

Mini Version Design

For the design of this project, we first imported the 3D model of our ESP32 Display into Fusion360, along with the Cad file of our Button PCB with Buttons, as well as the battery and push switch Cad files.

Next, we organized the components in a logical and practical layout, positioning the switch PCB beneath the display, placing the battery behind both the display and the switch PCB, and situating the push switch on the rear side just above the battery. Once everything was arranged, we proceeded to design an enclosure that encapsulates all the components and unifies them seamlessly. For the aesthetic, I opted for a boxy, retro design reminiscent of the 1990s, drawing inspiration from classic Nokia phones—elements of which can be seen in its form.

The enclosure was prepared and separated into two halves: the front enclosure and the lid part. The front enclosure houses the ESP32 display board and the Switch PCB. The ESP32 Display is pressure fitted in its position; we have also included mounting holes in case someone wishes to tighten the display properly with the enclosure. The switch PCB is fastened in place with four M2 screws.

The Lid section holds both the battery and the power switch.

Both the front enclosure and the lid section are joined together with four M2 screws since we created four screw bosses on the front enclosure and four holes on the lid to slide the screws through and attach the two pieces together.

For the 3D print, we exported the mesh files for both pieces and printed them on our new Creality K10 max with a 0.4mm nozzle and 25% infill White Hyper PLA.

ESP32 Display Dev Board

We are using the ESP32-S3-LCD-1.69 in our project, as it is a low-cost, high-performance MCU board that perfectly suits our needs.

Equipped with a 1.69-inch capacitive LCD screen, a lithium battery charging chip, and a six-axis sensor with a three-axis accelerometer and gyroscope, this board is packed with features that enhance...

Read more »

SNAKEGAME_small_waveshare.ino

ino - 4.95 kB - 05/20/2025 at 11:56

Download

pin_config.h

h - 250.00 bytes - 05/20/2025 at 11:56

Download

MINI SNAKE GAME CONSOLE.step

step - 11.74 MB - 05/20/2025 at 11:51

Download

  • 1
    Switch PCB Assembly

    Button Board assembly process was super simple. we first position the push buttons from the top side of the board, and then we solder their pads from the bottom side using a soldering iron.

  • 2
    Wiring Process
    • The wiring process begins by connecting five wires to the ESP32 Dev board's GPIO2, GPIO10, GPIO16, GPIO18, and GND terminals.
    • Next, we connected the GND wire to the GND terminal of the Button board.
    • The GPIO2 wire is attached to the switchboard's left terminal.
    • GPIO10 connects to the right terminal.
    • GPIO16 connects to the Down terminal.
    • GPIO18 connects to the Up terminal.
  • 3
    Power Source Assembly

    We're utilizing a 3.7V 500mAh 14500 Li-ion cell as the power source for this project.

    They usually do not arrive with wires spot-welded, forcing people to manually solder wires to battery terminals, which is a bad practice that can lead to a fire or blast. It will undoubtedly reduce battery life and capacity; thus, we should avoid soldering wires directly to the terminals of lithium cells using a soldering iron.

    • We now begin the power source assembly process by connecting the positive wire of the battery to the NC of the push switch.
    • We add another wire to the common terminal of the Push Switch. We have included a push switch between the battery's positive terminals so that battery power can be turned off with this switch.
    • Next, we connected the battery's positive and negative connection wires to the Battery connector on the ESP32 board.
    • By making this connection, we can now power the setup with our Li-ion battery.

View all 6 instructions

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates