I’ve been a fan of the original NES from childhood. To me it was a magical system, which captured my interest for the first time one Christmas morning. As an adult, I still have fond memories of that console. Part of the impetus for this project came from those childhood memories.
The Spartan Mini NES, as its name implies, has at its foundation a Spartan Mini FPGA board. The Spartan Mini is a development board I built around the Spartan 6 FPGA by Xilinx. The NES core that runs on the FPGA is a modified version of Brian Bennett’s design. To facilitate the transfer of games from the SD card to the FPGA, I’m using a Parallax Propeller, which is connected to the FPGA with a serial link.
At its heart, this project relies on the Spartan 6 FPGA by Xilinx. I’m using the TQFP 144 pin version for ease of soldering. To facilitate breaking out all of the pins and getting the project up and running quickly, I’ve used the Spartan Mini FPGA board, as well as the perfboard shield.
For the NES core I chose this one developed by Brian Bennett. I first prototyped the project as much as possible on a breadboard, working out the kinks in the design until it was ready to be wired onto perfboard.
Besides the Spartan Mini, the other components used for this build were:
40-pin TFT Friend – FPC Breakout with LED Backlight Driver; This breakout board is something we designed in-house to help us work with ‘dot-clock’ 40-pin TFT displays that require the RGB pixel data to be clocked in continuously. These displays have 40-pin Flex PCB (FPC) cables and often require a boost converter for the backlight LED, which makes them annoying to breadboard. To make them breadboardable, we stuck a 40-pin FPC and a FAN5333-based backlight driver with adjustable current onto a labeled breakout board. Now you can poke and probe each pin! Read more!
Adafruit Mono 2.5W Class D Audio Amplifier – PAM8302; This super small mono amplifier is surprisingly powerful – able to deliver up to 2.5 Watts into 4-8 ohm impedance speakers. Inside the miniature chip is a class D controller, able to run from 2.0V-5.5VDC. Since the amp is a class D, its very efficient (over 90% efficient when driving an 8Ω speaker at over half a Watt) – making it perfect for portable and battery-powered projects. It has built in thermal and over-current protection but we could barely tell it got hot. There’s even a volume trim pot so you can adjust the volume on the board down from the default 24dB gain. This board is a welcome upgrade to basic “LM386” amps! Read more!
Adafruit has had paid day off for voting for our team for years, if you need help getting that going for your organization, let us know – we can share how and why we did this as well as the good results. Here are some resources for voting by mail, voting in person, and some NY resources for our NY based teams as well. If there are additional resources to add, please let us know – adafruit.com/vote
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.