Skip to the content
2 layers119.9 × 73.4 mmArduinoMultiInterface, the printed circuit board in 3D

ArduinoMultiInterface

RomualdRousseau/Miniish1

Homebrew 6502 Computer

Size
119.9 × 73.4 mm
Copper layers
2
Thickness
1.6 mm
Parts
28
Nets
112
Pads
255
Tracks, vias
517, 68
Pours
2
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
14 Nov 2020
Updated
26 May 2026

Overview

ArduinoMultiInterface is an open-source printed circuit board by RomualdRousseau, from the RomualdRousseau/Miniish repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 119.9 × 73.4 mm with 28 parts on 112 nets, routed with 517 tracks and 68 vias.

It is built around the ATMEGA328-PU, 74HC574D and 74HC04D, with the 74HC165D, 74HC595 and 74LS20P-E among its other parts. Its parts include 12 capacitors, 8 ICs, 4 connectors, 1 resistor and 1 switch. It belongs with the retro computing and games boards and the AVR (ATmega, ATtiny) boards of this library.

Main components

6

README

README.md

Miniish - Homebrew 6502 Computer

The goal of this project is to build a 8bit game console based on 6502 CPU. The entire project is strongly inspired by the work and videos of Ben Eater, but also Javidx9 and his emulator.

Mother Board

It is basically the same hardware design presented by Ben Eater. I just cleaned up the adress control logic to have as mush of the 32K RAM available.

The address plan is:

0000 --------------------------------

// RAM

8000 --------------------------------

// LO ROM

D000 --------------------------------

// IRQ Status

D100 --------------------------------

// PICTURE PROCESSING UNIT (PORT1B)

D200 --------------------------------

// AUDIO PROCESSING UNIT (PORT2B)

D300 --------------------------------

// I/O

D400 --------------------------------

// Reserved

E000 --------------------------------

// HI ROM

FFFF --------------------------------

Picture Processing Unit (PPU)

VGA Card

The card is built using a FPGA and strongly inspired to the NES PPU and the capability of PICO-8.

The overall specs of the VGA card is 16 colors with a 128x128 display area using the VGA 640x480 60Hz standard. The 16 colors are the PICO8 palette.

The VGA card is interfaced to the motherboard through a sprite based unit. The video ram is not mapped to the computer ram but instead, the CPU sends instructions to a sprite generator very similar to the NES (greatly based on Javidx9 explanations).

The overall spec of the sprite generator is:

  • 1 nametables for the background composed of 16 * 16 tiles. Each tile is 8x8 pixels. Scrolling vertical and horizontal modes are supported.

  • 256 sprites with tansparency support. Each sprite is also a tile of 8x8 pixels.

  • 64 simultaneous sprites on screen and 16 sprites per scanline

  • NMI is generated at each vertical blank

Audio Procesing Unit (APU)

The card is built using a ATMEGA328p at 20Mhz with the library the_synth of Edgar.

The synthetizer has the overall spec:

  • 4 channels at 20KHz

  • 4 waveforms: triangle, square, sinus + noise

  • 4 envelopes

  • modulation

  • IRQ0 is generated as the next data frame callback

Parts

28
QtyValueFootprintReferences
810nFCapacitor_THT:C_Disc_D5.0mm_W2.5mm_P5.00mmC6, C7, C8, C9, C10, C11, C12, C13
374HC574Package_DIP:DIP-20_W7.62mmU4, U5, U6
222pFCapacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mmC2, C3
1100nFCapacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mmC1
110KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR1
110uFCapacitor_THT:CP_Radial_D5.0mm_P2.00mmC5
120MHzCrystal:Crystal_HC49-4H_VerticalY1
174HC04Package_DIP:DIP-14_W7.62mmU7
174HC165Package_DIP:DIP-16_W7.62mmU2
174HC595Package_DIP:DIP-16_W7.62mmU3
174LS20Package_DIP:DIP-14_W7.62mmU9
1ATmega328-PPackage_DIP:DIP-28_W7.62mmU1
1I2CConnector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_VerticalJ2
1LOGOCow:VerySmallCowXiaoNiuNiu
1PORT1Connector_NES:NES_PCBEdgeJ1
1SERConnector_PinSocket_2.54mm:PinSocket_1x05_P2.54mm_VerticalJ4
1SPIConnector_PinSocket_2.54mm:PinSocket_1x06_P2.54mm_VerticalJ3
1SW_RESETButton_Switch_THT:SW_PUSH_6mmSW1

More from RomualdRousseau/Miniish

8
  • 2 layers170.2 × 170.2 mmMotherBoard, the printed circuit board in 3D

    MotherBoard

    RomualdRousseau/Miniish

    Homebrew 6502 Computer

    66 parts1GPL-3.0
  • 2 layers125 × 49 mmJoyPad, the printed circuit board in 3D

    JoyPad

    RomualdRousseau/Miniish

    Homebrew 6502 Computer

    19 parts1GPL-3.0
  • 2 layers49 × 49 mmKeyboardInterface, the printed circuit board in 3D

    KeyboardInterface

    RomualdRousseau/Miniish

    Homebrew 6502 Computer

    13 parts1GPL-3.0
  • 2 layers119.9 × 73.4 mmSerialBoard, the printed circuit board in 3D

    SerialBoard

    RomualdRousseau/Miniish

    Homebrew 6502 Computer

    11 parts1GPL-3.0
  • 2 layers80 × 43.4 mmCartdrige, the printed circuit board in 3D

    Cartdrige

    RomualdRousseau/Miniish

    Homebrew 6502 Computer

    4 parts1GPL-3.0
  • 2 layers80 × 43.4 mmCartdrigeDev, the printed circuit board in 3D

    CartdrigeDev

    RomualdRousseau/Miniish

    Homebrew 6502 Computer

    4 parts1GPL-3.0
  • 2 layers80 × 23.6 mmCartdrigeProto, the printed circuit board in 3D

    CartdrigeProto

    RomualdRousseau/Miniish

    Homebrew 6502 Computer

    2 parts1GPL-3.0
  • 2 layers119.9 × 73.4 mmTemplateBoard, the printed circuit board in 3D

    TemplateBoard

    RomualdRousseau/Miniish

    Homebrew 6502 Computer

    2 parts1GPL-3.0

Similar boards

  • 2 layers306.1 × 130.2 mm8-Bit CPU 32k, the printed circuit board in 3D

    8-Bit CPU 32k

    slu4coder/Minimal-64-Home-Computer

    Legacy: Full TTL-only home computer with VGA and PS/2 and twice the processing power of a Commodore 64

    132 parts94
  • 2 layers369.6 × 127.6 mm8-Bit CPU 32k, the printed circuit board in 3D

    8-Bit CPU 32k

    kitspace-test-repos/kicad6-file-collection

    46 partsMIT
  • 2 layers200 × 150 mmMicro, the printed circuit board in 3D

    Micro

    jurendono/VMC

    A Versitile 6502 Based Microcomputer

    235 parts
  • 2 layers100 × 100 mmMedia converter 02, the printed circuit board in 3D

    Media converter 02

    hamayanShowa-ele/kicad_share

    kicad share data.

    68 parts
  • 2 layers99.1 × 99.1 mmVga, the printed circuit board in 3D

    Vga

    rjw57/simplest-80s-computer

    This is my rough scratch repo where I keep experiments to do with desiging 80s computer peripherals. It is not in any sensible shape to be used by others yet, apologies.

    45 parts
  • 2 layers245.1 × 160 mm8-Bit CPU 32k, the printed circuit board in 3D

    8-Bit CPU 32k

    slu4coder/Minimal-64x4-Home-Computer

    My DIY TTL home computer with VGA and PS/2 and 4x the processing power of a Commodore C64 or Apple II.

    139 parts326
  • 4 layers219 × 108.5 mmZ80DevBoard, the printed circuit board in 3D

    Z80DevBoard

    gianluca-rainis/Z80DevBoard

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

    182 parts7CERN-OHL-S-2.0

Questions

How big is the ArduinoMultiInterface PCB?

It measures 119.9 × 73.4 mm and has 2 copper layers, 1.6 mm thick.

What parts does the ArduinoMultiInterface use?

28 parts, built around the ATMEGA328-PU, 74HC574D, 74HC04D and 74HC165D. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the ArduinoMultiInterface KiCad files?

From the RomualdRousseau/Miniish repository on GitHub, at the commit this page was made from: the board is Hardware/ArduinoMultiInterface/ArduinoMultiInterface.kicad_pcb and its schematic Hardware/ArduinoMultiInterface/ArduinoMultiInterface.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the ArduinoMultiInterface design in my own project?

Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).