ESP32 Handheld Game Console
ESP32 Handheld Game Console
by
This instructables show how to use a ESP32 and ATtiny861 to build a NES emulator game console.
https://youtu.be/VabwqIvGB6I
B ut t o n s I2 C G a me p a d C o n t r o l l e r
A 5 directions button, 2 small buttons for Select and This time I use a ATtiny861 microcontroller as an I2C
Start and 2 for A and B button. gamepad controller.
Step 3: 3D Printing
Cut a 24 x 27 holes 0.4 mm PCB for LCD support. Remember reserve some space for folding LCD FPC. Then use some
double side adhesive tape x the LCD on the PCB.
Cut out a 62 mm x 69 mm PETG plate for dev board and Lipo battery support.
Use double side adhesive tape to x dev board on the PETG plate.
Use double side adhesive tape to x Lipo battery besides the dev board.
LCD display have many variation form di erent vendors. Please obtain the correct datasheet and read it before any
patch and connection.
Some pins are reserved for touch panel. Since this LCD do not have touch panel, simply cut out those pins can
reduce the disturbance.
In most case, there are few pins require connect to GND. To reduce soldering e ort, I cut a copper tape shape to
reach all the GND pins and then soldering altogether.
There are 2 pins required connect to Vcc, LCD power and LED power. According to data sheet, LCD power can direct
connect to dev board 3.3 V pin but LED power operate a little bit lower than 3.3 V. So it is better add a SMD resistor
in the middle, e.g. 12 Ohm resistor.
use tape connect LCD support and dev board support together. Both support should reserve around 5 mm gap for
folding.
LCD ESP32
GND -> GND
RST -> GPIO 33
SCL -> GPIO 18
DC -> GPIO 27
CS -> GPIO 5
SDI -> GPIO 23
SDO -> not connected
Vcc -> 3.3 V
LED+ -> 12 Ohm resistor -> 3.3 V
LED- -> GND
Follow the video steps to fold and squeeze all the parts into the case.
https://youtu.be/8VfJcM7wYEQ
The program for the I2C Gamepad is very simple, only 15 lines of code. But it is a little bit hard to reprogram the
ATtiny861 after soldering, so it is better test it on the breadboard rst.
Follow the video steps to install the cover and the I2C gamepad to the main body.
https://youtu.be/mznu135IDrs
ESP32 dev board Pin 25 and 26 is outputting the analog audio signal, it is very easy to breakout the these 2 pins and
also power pins (3.3 V and GND) on the top. Then you can patch a earphone to plug on it. Or even you can add an
audio ampli er module with speaker to play it loud.
NES emulator is not the only interesting thing you can make with ESP32. E.g. you can build a micro python console
with it. The only component you need to change is from I2C gamepad to I2C keyboard. I think it is not so di cult to
make it with a ATtiny88 controller. You may follow my twitter to see the status.
Brilliant
Neat