ATOM Lite ESP32 – Retro Arcade machine
With the continued Wet Weather limiting the ability to get out and about it was a great opportunity to knock over some projects.
Some friends and I bought some ATOM Lite M5 processors some time back mainly for a a simple, low cost and more power alternative for Smart Home projects. The ATOM Lite has been sitting by my keyboard at home for months now and I’ve been itching to build something with it, but with endless possibilities I wanted to do something a little different.
My origins with regards to computers are the early 80’s with 8 bit machines such as Apple II, Microbee, Commodore 64 etc and when you compare these machine’s with the specs of the ATOM lite, all for approx $7 it blows your mind.
|ESP32||240MHz dual core, 600 DMIPS, 520KB SRAM, Wi-Fi, dual mode Bluetooth|
|Power Input||5V @ 500mA|
|Port||TypeC x 1, GROVE(I2C+I/0+UART) x 1|
|PIN Port||G19, G21,G22,G23,G25, G33|
|RGB LED||SK6812 3535 x 1|
|Button||Custom button x 1|
|Antenna||2.4G 3D Antenna|
|Operating Temperature||0°C to 60°C|
As mentioned the ATOM Lite with its ESP32 processor is traditionally used for Smart Home automation etc but with those specs I wanted to do something cool and retro.
Although the ATOM doesn’t support video (or sound) I found some threads on using PIN 25 for Composite video which eventually led me to this GitHub project that essentially achieved everything that I wanted to do saving me weeks of research and was something that I easily completed in an afternoon.
Here the full project – https://github.com/rossumur/esp_8_bit
The Video here gives a really good over view
Using the above Video and GitHub project I put my project together with the following amendments.
Edits to the primary source file: esp_8_bit.ino
Edits to the video_out.h file
#define AUDIO_PIN 19 // can be any pin
After fixing the Memory allocation error I tested the ATOM PAL Video for the first time by simply holding the Composite wires in the ATOM with my fingers and to my surprise I got video.
In the photo below the yellow is the center pin of the composite going to PIN 25 and the black the shield going to Ground.
Now for Sound
Sound is extremely briefly covered in the GitHub article and managed to eventually get sound working as follows with PIN 18 connected to the center PIN via a 1K resister with a 10nf capacitor to ground (See photos below)
Cleaning the Project up
Having proof of concept I wanted to make the project more stable so I used some connectors and solder the composite and audio sockets onto a cables.
Because the ATOM comes with Bluetooth it was a bonus to find that I could easily pair a WII controller to the ATOM by pressing the red pairing button on the WII controller during the boot of the ATOM.
Here’s a quick video showing the finished product in action.
If you have an ATOM Lite lying round or are interested in the project then its a really easy one to complete and results in a really fun and low cost emulator.