Skip to content

sonocotta/esp32-gameboy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ESP32 Gameboy

Open Source Hardware Open Source Software I sell on Tindie
Dev Chat

image

The DIY Gameboy project is an exciting venture for those who have a passion for retro gaming and enjoy hands-on electronics projects. In this project, participants will have the opportunity to construct their own handheld gaming console inspired by the iconic Gameboy.

I started work on the ESP32 Gameboy as a drop-in replacement for the Gameboy case, which is very easy to find on online markets for more than a reasonable price. This project turned out to be not as simple as I expected, spanning across a few board revisions and many issues found and fixed (and a few remain), so at some point, I decided to make a mini version that would use the same code running on the similar but much-simplified hardware, in a shape of DIY kit (I am sure everything gets better when it is a DIY).

Therefore 2 variations of the product were born

DIY Kit (Play ESP)

This simple kit can be assembled in 5 to 30 minutes (depending on one's skills) and it is as simple as it can be. It runs using Wemos ESP32-S2 of-the-shelf module (with in-package PSRAM) and a truly great 240x240 px LCD screen (it is seriously good by Arduino world standards). It can be powered by two AAA-sized rechargeable batteries to be a true handheld. It has a buzzer for the rudimentary sound system.

Features

  • Lolin ESP32-S2 module
  • 1.3' TFT Display 240x240 px (SPI)
  • Storage: Internal Flash
  • PCF8574 GPIO Expander
  • Buzzer
  • Step-up converter to pull 3.3V off batteries
Kit Assembled
DSC_0699 DSC_0727

Pinout

Screen

SPI CLK SPI MOSI TFT DC TFT RST TFT BL
ESP32-S2 7 11 18 5 9

PCF8574 GPIO Expander

I2C SDA I2C SCL INTR BUZZER
ESP32-S2 33 35 18 12

Where to buy

You can support my work by buying this kit at Tindie or Elecrow

Full Gameboy Experience

This is an ESP32-based drop-in replacement for the Gameboy console.

Features

  • ESP32 WROVER 16M Flash / 8M PSRAM
  • 2.8' TFT Display 320x240 px (SPI)
  • Storage: Internal Flash or SDCARD
  • PCF8574 GPIO Expander
  • WS2812 RGB Led
  • LM4875 Headphone/Speaker amp with Volume pot
  • Li-Ion battery with built-in charger and intelligent power select (When USB is connected)
Kit Assembled
DSC_0515 DSC_0513 DSC_0519 DSC_0522

Pinout

Screen

SPI CLK SPI MOSI SPI MOSI TFT CS TFT DC TFT RST TFT BL
ESP32 18 23 19 5 4 32 2

PCF8574 GPIO Expander

I2C SDA I2C SCL INTR
ESP32 21 22 35

Other Peripheral

RGB LED SDCARD CS AUDIO OUT CHRG IN STBY IN BAT IN
ESP32 33 27 25 36 39 34

Software

In the software section NES firmware is provided. It is based on the arduino-nofrendo implementation. Hardware definition added for both Play ESP and ESP32 Gameboy.

Platformio IDE

Firmware is provided as Plarformio IDE projects. After installing it, open the project. Select the proper environment based on your dock. Run the Build and Upload commands to install necessary tools and libraries, and build and upload the project to the board. Communication and proper upload method selection will be handled by IDE automatically.

References

Based heavily on the below work

About

ESP32 based drop-in replacement for Gameboy console

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published