Skip to content

gianluca-rainis/Z80DevBoard

Repository files navigation

Z80DevBoard

The Z80DevBoard is an advanced development board for the Z80 microprocessor, based on the RP2040.

This board combines the classic Z80 with the modern RP2040 microcontroller. The RP2040 manages the flash memory and loads programs into RAM for execution by the Z80. Real-time LED indicators provide visual feedback on the Z80's activity, making it an ideal platform for both learning and development. The board's buttons allow the user to load the Z80 program or custom firmware into memory, manually set the Z80 clock, put the Z80 into wait mode, and reset it.

Connection to the computer, used for both power and data transmission, is via a USB-C port. Two sockets are provided for expansion boards or for advanced projects. The SWD and SWCLK pins on the RP2040 are accessible to allow a fix for any firmware crashes that prevented the fix from loading over USB-C.

Z80DevBoard Logo


Front view of the dev board

Author

The author of the whole project is: Gianluca Rainis - gianluca-rainis on GitHub.

License

Hardware design files (schematics, PCB, BOM):

Licensed under CERN-OHL-S v2.0

Software and firmware:

Licensed under the MIT License

AI Disclaimer

No AI was used in this project. Everything was designed by the author.

Development Tools

  • PCB Design: KiCad
  • Documentation and code: Visual Studio Code

PCB Manufacturing

The Gerber files for PCB manufacturing are available in the gerber/ directory.

Components

Microprocessors

  • 1 Z84C00
  • 1 RP2040

Memory

  • 2 HM62256BLP (RAM)
  • 1 W25Q32JVSS (Flash)

Power Management

  • 1 AMS1117-3.3 (5V to 3v3)

Data Bus

  • 1 USB C 2.0 port
  • 3 74HC595 (Serial to 8 bit)
  • 1 74HC165 (8 bit to Serial)
  • 4 74HCT574 (8 bit Buffer)
  • 3 SN74LVC245APW (Bus to handle the voltage differences)
  • 1 TXS0102DCT (Bus to handle the voltage differences)
  • 1 Connector 2 pins
  • 1 Connector 2x20 pins
  • 1 Connector 2x10 pins

Support components

  • 1 Crystal 12MHz 20pF
  • 1 Oscillator 8MHz
  • 1 74HC14
  • 1 74HC04
  • 1 74HC00

Resistors

  • 1 Resistor 0 ohm
  • 2 Resistors 27.4 ohm
  • 34 Resistors 1k ohm
  • 6 Resistors 3.3k ohm
  • 2 Resistors 5k ohm
  • 12 Resistors 10k ohm
  • 1 Resistor 470k ohm

Capacitors

  • 2 Capacitors 15pF
  • 8 Capacitors 0.1uF
  • 3 Capacitor 1uF
  • 2 Capacitors 10uF

Other

  • 5 Buttons
  • 1 Switch
  • 40 LEDs
  • 24 Diodes
  • 1 Fuse 500mA

Project Structure

Z80DevBoard/
├── gerber/                 # PCB manufacturing files (Gerber format)
├── images/                 # Documentation images and KiCad symbols
├── .gitattributes          # Gitattributes file
├── .gitignore              # Gitignore file
├── Z80DevBoard.kicad_pcb   # PCB layout file
├── Z80DevBoard.kicad_pro   # KiCad project file
├── Z80DevBoard.kicad_sch   # Schematic file
├── LICENSE-MIT.md          # MIT License
├── LICENSE-CERN-OHL-S.md   # CERN-OHL-S License
└── README.md               # This file

Images

Schematic Diagrams

Complete Schematic (A2 format)

Complete schematic

Z80 Section

Z80 subsystem schematic

RP2040 Section

RP2040 subsystem schematic

PCB Layout

Without Silkscreen

PCB layout without silkscreen

With Silkscreen

PCB layout with silkscreen

3D Renders

Front View

3D render - front view

Back View

3D render - back view

About

An advanced development board for the Z80 microprocessor, powered by an RP2040.

Topics

Resources

License

CERN-OHL-S-2.0, MIT licenses found

Licenses found

CERN-OHL-S-2.0
LICENSE-CERN-OHL-S.md
MIT
LICENSE-MIT.md

Stars

Watchers

Forks

Packages

 
 
 

Contributors