View All Posts
read
Want to keep up to date with the latest posts and videos? Subscribe to the newsletter
HELP SUPPORT MY WORK: If you're feeling flush then please stop by Patreon Or you can make a one off donation via ko-fi
#EMULATOR #ESP32 #KEYBOARD #PCBWAY #RECREATION #SILKSCREEN #ZX SPECTRUM

I got a ZX Spectrum emulator working on my ESP32-TV board (along with a bunch of other ESP32 boards). And using the QWIIC connector I was able to hook up a Wii Nunchuk.

ZX Spectrum Emulator

It was pretty cool - and I was all set to do a video on it - but then PCBWay announced their new full color silk screen service and I just had to give it go.

The good old ZX Spectrum keyboard seemed like the perfect thing to recreate.

The ZX Spectrum

Using the same layout as the original ZX Spectrum in a matrix arrangement we need 8 rows, each with 5 columns.

ZX Spectrum Keyboard Membrane

For a touch matrix that means we need 13 touch pins. Initially I thought this wouldn’t be possible as the ESP32 only has 10 touch pins. But the S3 has 14 pins - so it was all systems go and I’ve ended up with a PCB that looked something like this:

The PCB

And with the full color silk screen printing we ended up with this thing of beaty!

A thing of beauty

The display that I designed for is pretty small - as you can see from the tiny picture! But I left an expansion header on the board to hook up a bigger screen.

The big screen

It works really well - and I think a lot of people are going to want this. It’s not quite ready yet, so I’ve set up another newsletter (you can’t have too many newsletters!) for people who are interested in buying one to sign up for. I’ll put regular updates out on this as I don’t want to spam people who aren’t interested…

So, if you think you’d like your very own ZX Spectrum - sign up to the newsletter above!

I’ll continue to work on the project - and I’ll post videos to the channel and posts here as I make progress. But there will be more fine grained updates on the other newsletter for people who are really interested.

#EMULATOR #ESP32 #KEYBOARD #PCBWAY #RECREATION #SILKSCREEN #ZX SPECTRUM

Related Posts

Old school tape loading - If you're anything like me, the nostalgic screeches of ZX Spectrum games loading might bring a smile to your face. I've taken a trip down memory lane by working on my own tribute to this iconic machine—introducing the ESP32 Rainbow. It’s on Crowd Supply, where we're closing in on full funding! This blog post walks you through the journey of harnessing audial data to load games directly into my emulator—faster and more reliable than those temperamental cassette decks from our childhood.
1 touch pin 8 touch pads - To make my ESP32 ZX Spectrum touch keyboard work even better, I needed to ensure every key was independent. The ESP32-S3 only has 14 touch pins, so I’ve been using a matrix approach. While this works well, it struggles with key combinations, critical for the ZX Spectrum. I explored touch detection and experimented with analog multiplexer ICs (4051 series) to expand the touch pins. Initial tests were promising. After prototyping with breadboard-friendly versions and ordering parts, the new keyboard was not only functional but exceeded my expectations. Scanning the keyboard now takes around 20ms, and the solution is ready for production. This was the last big challenge, and I’m thrilled with the results!
The Center of Computing History - Faced with free time in Cambridge, I decided to visit the Center of Computing History. It's a bit quirky and tucked away in an industrial park, but worth finding. Right in the entrance, you'll see the Megaprocessor, a 16-bit processor that's programmed to play Tetris. But the highlight for me was seeing the prototype ZX Spectrum, the computer that sparked my interest in tech. Though they didn't have a working Spectrum, I got a kick out of programming on a ZX81 and playing with a BBC Micro. They've even got a room full of consoles and the first ever Apple 1. Though I recorded some footage, I spent most of my time just soaking in the history of computing.
The PCBs are in production - what have I messed up? - After some stress and trepidation, I finally took the plunge and sent my PCB design off for manufacturing. My design centers around building a large seven-segment clock with LED filaments. Jumping hurdles such as voltages, pin usage, and limiting the load on my power supply, I've settled on the ESP32 as the system's heart and come up with a final circuit design. While doing this, I've quickly realized I could improve my layout and fixed a small mistake. Also, I've prepared for either types of LED filaments - the high-voltage ones or the larger, 3v ones. However, I did bungle up a couple of things on the enable line of the shift registers and board layout. But hey, this is a learning curve, right? Can't wait to get the boards and see what other exciting errors surface!
Minimalist Microcontroller: Building a Bare-Bones Dev Board - In a thrilling DIY endeavour, I attempted to build the most minimalist ESP32 dev board possible. Diving deep into the schematic of the ESP32 S3 WROOM module, I chopped out the non-essentials and whittled our needs down to bare bones. The experiment saw me juggling USB data lines and voltage regulators, waving goodbye to an array of capacitors and connectors and boldly embracing the simplicity of direct connections. Despite a few hitches, the miniature Frankenboard came alive, proving that sometimes less is more...at least in the world of microcontrollers.

Related Videos

ESP32-S3 ZX Spectrum - Full Color Silk Screen is really cool! - Super stoked to share this creation – an ESP32 ZX Spectrum emulator! Although it's still very much a proof-of-concept, it's looking pretty rad. I've got the classic games like Manic Miner, and yes, you can program in basic too! In perfect Sinclair fashion, I'm planning on selling this key piece of nostalgia for just £99. Work still needs to be done before the production phase, but rest assured, I'm meticulously working out the kinks, including tweaking the keyboard to ensure even better user experience. And on the technical side - a single ESP32S3 runs the show and we’ve multiplexed the keys exactly like the OG Spectrum. It's been great fun designing this piece of kit with the new full color silk screen printing from PCB way. Stay tuned for further updates!
But does it run DOOM? ESP32 ZX Spectrum update - All right, it's time for an update on my ESP Rainbow, the ZX Spectrum emulator with stunning full-color silk screen printing. I've been testing the latest boards, and PCB Way did a fantastic job. The enhancements include upgraded firmware, a 128k ZX Spectrum emulator, and a new 2-watt speaker replacing the old 7-watt buzzer. You can enjoy great sound with PWM and even play 128k games like The Never Ending Story. I've also added a snapshot feature and ported my video player over. Hardware upgrades include new capacitors and a slick power control chip for seamless battery and USB mode switching. We're gearing up for a commercial release, hopefully by Christmas, so stay tuned. And yes, it does run Doom! [Laughter]
ESP32 - 40 Independent touch pins! - Wow! I'm absolutely thrilled with the results of this video - I've been experimenting with my ESP 320x Spectrum board and its touch Matrix keyboard. Had a bit of trouble with combined button inputs, so I took a deep dive into how touch works and discovered these old, but gold, ICs. After some testing, they turned out to be a perfect solution to my multiplexing problem! I then got a new board design shipped from PCB way - looks awesome and it didn't break the bank. Can't believe how responsive the keyboard is! Got the 'Hello World' program up and running, and even played Manic Miner. The final board's all set - can't wait to get this on sale! And keep watching because I've got some interesting plans for this expansion port!
I'm surprised this works so well! Tape Loader Level Shifter Circuit - Hey there! If you're around my age, you'll probably get nostalgic over the sound of old school tape loading on the ZX Spectrum. I took a deep dive into how the data loads, using my oscilloscope to break it all down, and even built a circuit to handle the signal for my ESP32. Throw in some cool simulations using CircuitLab, and I'm all set! Plus, I discovered a neat trick using diodes to perfect the signal. Hands-on and really quite fun!
Lots of Stuff - And a NEW PCB! It's a rare mailbag video. - In today's episode, I'm unboxing some goodies from PCB way - my super tiny esp32 breakout boards, which I'm planning to use to recreate a mini TV complete with speakers and a display. Also received some convenient adapter boards for easier testing. Excited to explore a new Arduino Nano esp32 based on a different, tinier module, and contrasting it with other products like the Tiny Pico. Also up for testing is a new mini wear electronic load compared to my old one, and an ATX power adapter for more USB ports. I'll be testing power banks, playing with inexpensive yellow displays and nunchucks for fun gaming projects, and testing out an RGB bead curtain with hackable possibilities. Also, under my ongoing experiments is a Raspberry Pi zero, turning into a 'Doom' playing device with added sound and game controllers. Finally, an air quality measuring device for detecting air particles, CO2 levels, humidity, temperature and other parameters is up for exploration as well. A whole array of fun projects queued up, so stay tuned!
HELP SUPPORT MY WORK: If you're feeling flush then please stop by Patreon Or you can make a one off donation via ko-fi
Want to keep up to date with the latest posts and videos? Subscribe to the newsletter
Blog Logo

Chris Greening


Published

> Image

atomic14

A collection of slightly mad projects, instructive/educational videos, and generally interesting stuff. Building projects around the Arduino and ESP32 platforms - we'll be exploring AI, Computer Vision, Audio, 3D Printing - it may get a bit eclectic...

View All Posts