Skip to the content
PCBKitNew board
2 layers25.5 × 32 mmFour button, the printed circuit board in 3D

A modular game console based on RP2354

Size
25.5 × 32 mm
Copper layers
2
Thickness
1.6 mm
Parts
9
Nets
14
Pads
36
Tracks, vias
32, 0
Pours
1
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
12 Aug 2026
Updated
27 Oct 2026

Overview

Four button is an open-source printed circuit board by hackclub, from the hackclub/hackxpansion repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 25.5 × 32 mm with 9 parts on 14 nets, routed with 32 tracks and 0 vias.

Its parts include 4 switches, 2 resistors and 1 connector. It belongs with the retro computing and games boards of this library.

README

README.md

Hackxpansion

Website

A handheld console with 4 expansion solts

Key Features

Why?

I really like the idea of modules, and modular things, and making people work together, so I made this.

PCB

The console has two 4 layer PCBs designed in KiCAD, a main-board and a daughter-board, designed for JLC's basic process.

irl pcb without some connectors and swithc

Main-Board

main-board schematic main-board pcb main-board render

Daughter-Board

daughter-board schematic daughter-board pcb daughter-board render

Making Your Own Modules

There are three simple steps to making your own module:

  1. Design the module PCB in KiCAD
  2. Design the module case in CAD
  3. Write a driver for the module

There are detailed docs on the hackxpansion website

Case

The case is designed in Autodesk Fusion, there are .f3z files in the hardware directory.

The models have parameters that can be adjusted to fit your needs.

Shoutouts

Thank you so much for Simon who helped with the fanout of the RP, and also gave a ton of constructive feedback!!!!

Zine

magazine page

BOM for Console

This is for an order of 2 PCBA PCBs.

Also found in a CSV file. Each component has an LCSC part number attached that can be used to find the component on the LCSC website.

Parts

9
QtyValueFootprintReferences
4SW_PushButton_Switch_THT:SW_PUSH_6mmSW1, SW2, SW3, SW4
2MountingHoleMountingHole:MountingHole_2.2mm_M2H1, H2
11k5Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR2
11k6Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR1
1~Connector_PinHeader_2.54mm:PinHeader_2x07_P2.54mm_HorizontalJ1

Questions

How big is the Four button PCB?

It measures 25.5 × 32 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Four button use?

9 parts. 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 Four button KiCad files?

From the hackclub/hackxpansion repository on GitHub, at the commit this page was made from: the board is hardware/modules/four_button/pcb/four_button.kicad_pcb and its schematic hardware/hackxpansion/pcb/ADC.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Four button 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 hackclub/hackxpansion

7
  • 4 layers52 × 69 mmHackxpansion, the printed circuit board in 3D

    Hackxpansion

    hackclub/hackxpansion

    A modular game console based on RP2354

    104 parts5GPL-3.0
  • 2 layers25.5 × 32 mmLinux soc, the printed circuit board in 3D

    Linux soc

    hackclub/hackxpansion

    A modular game console based on RP2354

    57 parts5GPL-3.0
  • 2 layers52 × 34.5 mmHdmi, the printed circuit board in 3D

    Hdmi

    hackclub/hackxpansion

    A modular game console based on RP2354

    46 parts5GPL-3.0
  • 2 layers25.5 × 32 mmAudio module, the printed circuit board in 3D

    Audio module

    hackclub/hackxpansion

    A modular game console based on RP2354

    25 parts5GPL-3.0
  • 2 layers25.5 × 32 mmTwo button, the printed circuit board in 3D

    Two button

    hackclub/hackxpansion

    A modular game console based on RP2354

    7 parts5GPL-3.0
  • 2 layers25.5 × 32 mmJoystick, the printed circuit board in 3D

    Joystick

    hackclub/hackxpansion

    A modular game console based on RP2354

    6 parts5GPL-3.0
  • 2 layers25.5 × 32 mmEmpty, the printed circuit board in 3D

    Empty

    hackclub/hackxpansion

    A modular game console based on RP2354

    5 parts5GPL-3.0

Similar boards

  • 2 layers103 × 30.5 mmTS Back Endcap, the printed circuit board in 3D

    TS Back Endcap

    EEVengers/ThunderScope

    ThunderScope GitHub Repo

    9 parts1.3kMIT
  • 2 layers31.8 × 47.6 mmNGC 38 connector, the printed circuit board in 3D

    NGC 38 connector

    rusefi/rusefi

    rusefi - GPL internal combustion engine control unit

    9 parts1.2k
  • 2 layers24 × 27.3 mmExpansion Card Retrofit, the printed circuit board in 3D

    Expansion Card Retrofit

    FrameworkComputer/ExpansionCards

    Reference designs and documentation to create Expansion Cards for the Framework Laptop

    9 parts1.1kCC-BY-4.0
  • 2 layers15.6 × 17.3 mmSKR Mini TFT Thermistor Board, the printed circuit board in 3D

    SKR Mini TFT Thermistor Board

    VoronDesign/Voron-Hardware

    Cool Hardware designed by the Voron Design group

    9 parts1.1kGPL-3.0
  • 2 layers39.1 × 49.5 mmLearnoliver, the printed circuit board in 3D

    Learnoliver

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    9 parts915
  • 2 layers17.4 × 16.9 mmToolhead, the printed circuit board in 3D

    Toolhead

    tanaes/whopping_Voron_mods

    9 parts787GPL-3.0
  • 2 layers9.8 × 108 mmExpander, the printed circuit board in 3D

    Expander

    wntrblm/Castor_and_Pollux

    A Juno-inspired dual oscillator

    9 parts587
  • 2 layersKeyboard after, the printed circuit board in 3D

    Keyboard after

    adamws/kicad-kbplacer

    KiCad plugin for automatic keyboard's key placement and routing

    9 parts547GPL-3.0