Build your own NextNano ZX Spectrum Next FPGA system!
Fully assembled PCB boards are available to order from my Tindie store:
Visit my Tindie Store https://www.tindie.com/stores/bobricius/
⚠️ Work in progress. Both the hardware and the NextNano core are under active development.Things may change, and you may run into bugs or missing features.This is a hobbyist / maker project, not a finished consumer product.
Please read the *Before you buy* section carefully.
This handheld is a carrier PCB for the Sipeed Tang Nano 20K (Gowin GW2AR-18). The Tang Nano 20K plugs into the board and runs the NextNano FPGA core, a ZX Spectrum Next implementation by RetroSilicon. The system boots straight into NextZXOS from a microSD card.
The handheld hardware was designed by Bobricius.
The FPGA gateware, core logic and system adaptation are the work of RetroSilicon.
| Version | What you get | Who it is for |
|---|---|---|
| Bare PCB | Unpopulated PCB set: mainboard + front panel | Experienced builders who want to source and solder everything themselves |
Colour: currently only the black version is available. A colour version is planned.
I highly recommend including this front panel with your order.
At the moment only the front panel and the mainboard are finished.
For the rest we recommend a 3D-printed enclosure.
There is no ready-made enclosure design available yet, so you will need to make your own or wait.
A complete 3D-printable case is planned and will be added over time.
This is not a plug-and-play device. You will need to load the bitstream into the FPGA yourself, and optionally flash a firmware for USB support.
A custom NextNano bitstream prepared for this handheld is available for download on our Tindie listing, in the Datasheet section. Flash it to the Tang Nano 20K's onboard flash with:
.fs bitstream file, then click Program.openFPGALoader, using openFPGALoader -f .fs. The -f flag writes to flash so the bitstream survives power cycles. Without it, the bitstream is only loaded into SRAM and is lost at power-off.Once the bitstream is loaded, the following works with no other setup:
The Tang Nano 20K has an onboard BL616 microcontroller. It is used for programming the FPGA and, with the FPGA Companion firmware, it also handles USB devices.
To use anything on the USB port (external keyboard, mouse, gamepad/joystick), you must flash the FPGA Companion firmware to the BL616 using Bouffalo Dev Cube. For the onboard BL616, both files must be flashed at their respective addresses:
| Firmware file | Load address |
|---|---|
bl616_fpga_partner_nano20k.bin |
0x00000 |
fpga_companion_TN20k_internal.bin |
0x40000 |
Firmware files and updates are in the NextNano repository.
NextNano boots into NextZXOS from the microSD card, so the card is mandatory.
Bare PCB
Assembly notes: The recommended button height is 7 mm measured from the PCB surface. The front panel is mounted on the mainboard with 4 mm spacers (standoffs) between the two boards.
Choosing your buttons: You can mix and match different button types to suit your taste and budget. For example, you can use cheaper buttons with an actuation force of 1.6N for the keyboard, softer 1N buttons for the control buttons, and a red button for reset.
Just make sure all buttons match the 7 mm height, otherwise they may not fit properly through the front panel.
| Qty | Name | Note |
|---|---|---|
| 4 | 10R 0603/0805 Resistor, display backlight | |
| 1 | Battery charging module | TP4056 USB-C (blue board) |
| 1 | Headphone jack 3.5 mm | |
| 1 | DSUB-9 male connector (Atari joystick) | |
| 3 | USB connector | Port 1: devices, port 2: power-only. TBC |
| 40 | Tactile buttons (keyboard matrix) | |
| 11 | Tactile buttons (front panel / controls) | TBC |
| 1 | 2.8" IPS LCD display, ST7789, 320×240 | |
| 1 | Foil keyboard connector | Optional, TBC |
| 1 | Speaker 4mm height | Fed by the Tang Nano I2S converter (2 wires) |
| 1 | Battery connector | TBC |
| 1 | Power switch | TBC |
| 2 | Female header for Tang Nano 20K | TBC |
| 1 | Sipeed Tang Nano 20K | Not included. We recommend buying the version with pre-soldered pins |
| 1 | Short USB-C cable | Not included |
| 1 | 18650 Li-Ion battery | Not included (cannot be shipped) |
| 1 | microSD card (FAT32) | Not included |
NextNano is an independent community project and is not affiliated with or endorsed by SpecNext Ltd.
The ZX Spectrum Next software core and associated hardware require compatible components and configuration.
Please consult the project documentation before ordering components or beginning assembly.