Skip to the content
PCBKitNew board
2 layers50 × 90 mm4dapter, the printed circuit board in 3D

This project combines the NES, SNES, N64 and Genesis DaemonBite Retro Controllers projects together with a custom PCB to support 4 different controllers with a single socketed Arduino Pro Micro.

Size
50 × 90 mm
Copper layers
2
Thickness
1.6 mm
Parts
16
Nets
24
Pads
76
Tracks, vias
137, 18
Pours
1
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
15 May 2023
Updated
13 Sep 2026

Overview

4dapter is an open-source printed circuit board by timville85, from the timville85/4dapter repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 50 × 90 mm with 16 parts on 24 nets, routed with 137 tracks and 18 vias.

It is built around the MCP1700-3302E/TO. Its parts include 4 ICs, 3 connectors and 2 capacitors. It belongs with the retro computing and games boards of this library.

Main components

1

README

README.md

4dapter

Open Source Controller Adapter for Nintendo Switch / MiSTer / XInput / Batocera / RetroArch

This project combines the NES, SNES, N64 and Genesis DaemonBite Retro Controllers projects together with a custom PCB to support 4 different controllers with a single socketed Arduino Pro Micro. PCB (KiCad + Gerbers), 3D Cases, and muliple firmware versions (Arduino code) all available in this repository.

PCB Kits + Fully Assembled units (with firmware of your choice) available on Tindie

3 different firmware versions are available in this repo:

  • Default: Optimized for MiSTer, PC, Raspberry Pi, etc. - reports as 3 separate controllers (NES/SNES combined) and supports multiplayer from a single unit.
  • Analogue Pocket: Optimized for Pocket Dock - reports as a single wired XInput device.
  • Nintendo Switch: Optimized for Nintendo Switch Online NES, SNES, and Genesis collections - reports as a single wired switch controller.

MiSTer Users - Important Info: For maximum compatibly, install the MiSTer controller Map file found in the MiSTer Maps Folder to your /media/fat/config/inputs directory on your MiSTer SD card and reboot your MiSTer. After doing this, you'll need to map the N64 controller in the N64 core for all buttons to work. The SNES / Genesis / NES cores will already be properly configured via the Map file.

Resources and Thanks

Special thanks to Dinierto Designs and Super Retro City X for their assistance during development and testing of the 4dapter. Also thanks to Mechevarria for Batocera support and testing.

3D Case files were also designed by Dinierto Designs and are available in the 3D Cases folder.

See individual README files in firmware folders for more specific instructions on button assignments and firmware configurations.

Wiring Diagram

3dapter _ 4dapter Controller Wiring (1)

Current Draw Readings from DIO Pin 16 (used for 5v supply for DB9 port):

  • Krikzz Joyzz: 38mA
  • 8BitDo M30 2.4G: 29mA
  • OEM SEGA 3-Button Wired: 3mA
  • OEM SEGA 6-Button Wired: 3mA
  • Retrobit 6-Button Wired: 2mA (Arduino DIO Max Rated Current: 40mA)

Tested Controllers

The following controllers have been personally tested and are supported with the Triple Controller. All listed devices also fit when using the 3D Case as well.

NES:

  • OEM NES Controller
  • OEM NES PowerPad (Default FW Only)
  • 8BitDo N30 2.4G Receiver
  • 8BitDo NES Retro Receiver

SEGA / Genesis:

  • OEM SEGA Master System 2-Button Controller
  • OEM Genesis 3-Button Controller
  • OEM Genesis 6-Button Controller
  • 8BitDo M30 2.4G Receiver
  • 8BitDo Genesis Retro Receiver
  • Krikzz Joyzz

SNES:

  • OEM SNES Controller
  • OEM SFC Controller
  • OEM SNES NTT Controller (Default FW Only)
  • 8BitDo SN30 2.4G Receiver
  • 8BitDo SNES Retro Receiver

N64:

  • OEM N64 Controller
  • Retro Fighters Brawler64 V1/V2
  • Retro Fighters Brawler64 Wireless Edition

4dapter Bill of Materials (BOM)

4dapter was designed with all components to be through-hole soldered to make the project as accessible as possible.

Parts

16
QtyValueFootprintReferences
21uFCapacitor_THT:C_Rect_L4.0mm_W2.5mm_P2.50mmC1, C2
1
15V Pro MicroRetro Gaming:Pro Micro HeadersU1
1GamecubeConnector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ4
1Genesis SocketRetro Gaming:Genesis 90 SocketJ3
1MCP1700-3302E/TOPackage_TO_SOT_THT:TO-92_InlineU2
1N64 SocketRetro Gaming:N64 Daughter BoardU3
1NES SocketRetro Gaming:NES 90 SocketJ1
1RESETButton_Switch_THT:SW_PUSH_6mmRESET
1SNES SocketRetro Gaming:SNES 90 SocketU4
1SolderJumper_3_Bridged12Jumper:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mm_NumberLabelsJP1

The 12 most common of 16 parts.

Questions

How big is the 4dapter PCB?

It measures 50 × 90 mm and has 2 copper layers, 1.6 mm thick.

What parts does the 4dapter use?

16 parts, built around the MCP1700-3302E/TO. 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 4dapter KiCad files?

From the timville85/4dapter repository on GitHub, at the commit this page was made from: the board is 4dapter KiCad/4dapter.kicad_pcb and its schematic 4dapter KiCad/4dapter.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the 4dapter 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).

More from timville85/4dapter

1
  • 2 layers22.5 × 30 mm4dapter N64Board KiCad, the printed circuit board in 3D

    4dapter N64Board KiCad

    timville85/4dapter

    This project combines the NES, SNES, N64 and Genesis DaemonBite Retro Controllers projects together with a custom PCB to support 4 different controllers with a single socketed Arduino Pro Micro.

    2 parts82GPL-3.0

Similar boards

  • 4 layers290 × 215 mmPlacard, the printed circuit board in 3D

    Placard

    tocksin/placard

    PLA computer

    187 parts2AGPL-3.0
  • 2 layers50.8 × 22.9 mmFeather fc, the printed circuit board in 3D

    Feather fc

    MarkGhebrial/feather-fc

    The PCB for my flight controller project

    22 parts1
  • 2 layers30 × 58.5 mmLoragate tht, the printed circuit board in 3D

    Loragate tht

    andrewgho/loragate

    ESP32 + LoRa radio powered reed switch door sensor

    10 parts
  • 2 layers90 × 90 mmP 4.1 2026 Jeff M, the printed circuit board in 3D

    P 4.1 2026 Jeff M

    Jeffrey-McCormick/Project-Heartbeat

    End-to-end embedded system project to accurately measure the heart rate of a person

    38 partsMIT
  • 2 layers36.6 × 41.1 mmProject 2-K Auyeung, the printed circuit board in 3D

    Project 2-K Auyeung

    kyauyeung/PCB-Designs

    Repository for schematic and PCB designs

    11 parts
  • 2 layers38.5 × 33.5 mmC3 GestureDriver, the printed circuit board in 3D

    C3 GestureDriver

    MengqiS21/TECHIN514_FinalProject

    A wearable sensing tag for pets and a tabletop display that visualizes daily activity and proximity-based companionship.

    16 parts
  • 2 layers30 × 75 mmC3 GestureDriver Screen, the printed circuit board in 3D

    C3 GestureDriver Screen

    MengqiS21/TECHIN515_final_project-individual-

    Vehicle engine faults such as air leaks, ignition misfires, and abnormal idle behavior often produce characteristic acoustic signatures that trained mechanics can identify by ear.

    10 parts
  • 2 layers100.1 × 78.2 mmENMT LFR, the printed circuit board in 3D

    ENMT LFR

    r3dpath/ENMT-LFR

    56 parts