Skip to the content
PCBKitNew board
2 layers67.1 × 85.7 mmHackpad, the printed circuit board in 3D

A custom macropad (which functions as guess what, a numpad) created for Hackpad (a mission for Stardance, an event run by Hack Club).

Size
67.1 × 85.7 mm
Copper layers
2
Thickness
1.6 mm
Parts
21
Nets
24
Pads
84
Tracks, vias
133, 0
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
16 Jul 2026
Updated
30 Oct 2026

Overview

Hackpad is an open-source printed circuit board by mouse625, from the mouse625/Numpad repository on GitHub. It is a 2-layer board of 67.1 × 85.7 mm with 21 parts on 24 nets, routed with 133 tracks and 0 vias.

Its parts include 10 diodes, 10 switches and 1 IC. It belongs with the keyboards and input boards of this library.

README

README.md

Numpad

self-explanatory, a custom macropad functioning as a numpad.

X-Ray CAD

Description

Numpad is a Macropad, a custom sort of mini-keyboard usually designed for faster inputting of hardcoded shortcuts/strings or specific functions. However, this macropad is made as a Numpad accessory for more efficient inputting of numbers.

This project is made possible by Hackpad, a YSWS (you ship we ship) event on making a custom Macropad run by Hack Club.

Features

Physical Features

  • 10 keys numbered 0 through 9
  • 3D printed case
  • Custom PCB in a Sandwich Mount

Repository Features

  • assets
    • models
    • renderings
  • source files
    • kicad design files
      • project file
      • schematics
      • layouts
    • cad mockup
      • pcb
        • components
          • keyswitches
          • keycaps
          • diodes
          • xiao
        • the actual pcb
      • case
        • main body
        • top plate
      • cable (useful for designing an appropriate opening for power)
    • qmk firmware
      • keyboard.json
      • keymap.c
  • production
    • cad
      • case
        • bottom section
        • top section
        • new top section (made in a pinch for easier installing)
    • firmware
      • compiled uf2 file
    • pcb
      • compressed folder of the gerbers

Renderings

we all know you love them.

hidden in the code of this document (right below this details tag) is an AI-generated (yes, I know) image row alignment guide so I don't forget how to...align images.

PCB

PCB SchematicsPCB Layout3D PCB

CAD

one assembly image (the others are mostly for eye-candy).

Assembly CADX-Ray CAD
Visualised CADShaded CADWireframe CAD

Photos

not exactly orthodox "renderings".

Assembled NumpadDisassembled Numpad

Assembly

BoM

the parts.

  • 1x custom-built PCB
  • 1x unsoldered Seeed XIAO RP2040
  • 10x through-hole 1N4148 Diodes
  • 10x MX-Style switches
  • 10x white blank DSA Keycaps
  • 4x M3x16mm Screws
  • 1x 3D-printed Case
    • 1x 3D-printed Bottom Section
    • 1x 3D-printed Top Section

the tools (not really part of the BoM but whatever).

  • 1x Soldering Iron
  • 1x roll of (with a decent amount left) Solder
  • 1x tool for clipping pins (either/or)
    • 1x (optional) pair of Wirecutters
    • 1x (optional) pair of Scissors
  • 1x tool for screwing the...screws during assembly (either/or)
    • 1x (optional) hex-head Screwdriver
    • 1x (optional) hex key preferable without an obligatory hex
  • 1x Flashing Setup for...flashing
    • 1x USB-C Cable (for power too)
    • 1x functioning Computer
  • 1x (optional) functioning 3D Printer
  • 1x (optional) full-fledged Factory for making PCBs
    • 1x CNC Router
    • 1x Laser Plotter
    • 1x Chemical Etcher
    • 1x Plating System
    • 1x Silkscreen Printer
  • 1x functioning Encephalon

Instructions

  1. After receiving your parts, including the PCB, components and case, you'll need to have/obtain access to a soldering iron and some solder, a pair of wire cutters or scissors, a functioning computer and a USB-C cable.
  2. First and foremost, the firmware needs to be loaded onto the XIAO.
    1. This is done by plugging the USB-C cable into the XIAO's port.
    2. The physical boot button on the XIAO can then be held while plugging the other side of the cable into the computer to enter bootloader mode.
    3. The XIAO should appear as a removable flash drive into which the .uf2 compiled firmware can be dragged and dropped.
    4. The XIAO can safely be unplugged and is ready to solder.
  3. The first things to solder are your diodes.
    1. Align the stripes on each one of the diodes with the stripes on the PCB indicating the direction of the diodes.
    2. The diodes can then simply be soldered onto the PCB with the soldering iron while slowly feeding solder.
    3. Lastly, the legs need to be snipped off with the wire cutters or scissors (this is highly recommended).
  4. The next step is to solder your flashed XIAO onto the PCB's underside. This should be constantly cross-referenced with the CAD model to avoid any desoldering.
  5. After this, the keyswitches need to be installed.
    1. BEFORE any soldering takes place, they need to be clipped onto the PCB. The case plate is REQUIRED to be between the keyswitches and the PCB during this step.
    2. Following the previous substep, the keyswitches can now safely be soldered.
  6. The case plate and main body can now be aligned with the PCB (sandwiched in the middle). A hex key or hex-head screwdriver can then be used to screw 4 M3x16mm screws into their respective locations.
  7. Lastly, the keycaps can then be popped into place on your newly-assembled numpad (sadly, it doesn't work magically, so it wasn't really "lastly").
  8. The USB-C cable can now be plugged into the numpad and your computer, which acts as power.

Contributions

Do you have any suggestions, fixes, or extensions? If so, you can submit a pull request on this Repository.

Credits

Credits to:

  • HCB for hosting this whole thing
    • Stardance for running an actual summer event
      • Hackpad for inspiration on this specific project
        • 0xmanidev for their schematics made for Spacepad as a reference on Matrix Wiring
        • CodeCraftPlugin for making Stream Deck act as a reference for finding the correct DSA keycap models (turns out it was in the parts list that I wrote, so...yeah)
        • cheyao for creating the guides
  • GrabCAD for their open-source CAD models of various parts
  • McMaster-Carr for their huge library of various models, most importantly the M3x16 screws
  • Shapr3D, VSCode and KiCad for making the CAD section of all of this possible
  • Google for acting as a universal search engine for all of my dumb queries

License

This project uses the MIT License stating that the project is open source and free for anyone to use or develop. For more info, navigate to the LICENSE.md file.


Copyright © 2025 Numpad

Parts

21
QtyValueFootprintReferences
101N4148Diode_THT:D_DO-35_SOD27_P7.62mm_HorizontalD0, D1, D2, D3, D4, D5, D6, D7, D8, D9
10SW_Push_45degButton_Switch_Keyboard:SW_Cherry_MX_1.00u_PCBSW0, SW1, SW2, SW3, SW4, SW5, SW6, SW7, SW8, SW9
1MOUDLE-SEEEDUINO-XIAOXIAO:XIAO-Generic-Hybrid-14P-2.54-21X17.8MMU1

Questions

How big is the Hackpad PCB?

It measures 67.1 × 85.7 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Hackpad use?

21 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 Hackpad KiCad files?

From the mouse625/Numpad repository on GitHub, at the commit this page was made from: the board is source/PCB/hackpad.kicad_pcb and its schematic source/PCB/hackpad.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Hackpad design in my own project?

Its repository states no licence, so its author keeps all rights: ask mouse625 before reusing the design.

Similar boards

  • 2 layers28.3 × 39.8 mmLevelShifter, the printed circuit board in 3D

    LevelShifter

    gusmanb/logicanalyzer

    24 channel, 100Msps logic analyzer hardware and software

    21 parts5.1kGPL-3.0
  • 2 layers171.2 × 72.9 mmAmiga gfxcard before pour, the printed circuit board in 3D

    Amiga gfxcard before pour

    mntmn/amiga2000-gfxcard

    MNT VA2000, an Open Source Amiga 2/3/4000 Graphics Card (Zorro II/III), written in Verilog

    21 parts1k
  • 2 layers93.9 × 46 mmRectifier, the printed circuit board in 3D

    Rectifier

    rene-dev/stmbl

    AC Servo Driver for STM32F4

    21 parts990GPL-3.0
  • 2 layers45.5 × 42.9 mmEsphome han reader, the printed circuit board in 3D

    Esphome han reader

    hackclub/OnBoard

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

    21 parts915
  • 2 layers31.8 × 14.5 mmEsp prog, the printed circuit board in 3D

    Esp prog

    drandyhaas/KiCadRoutingTools

    A set of Python/Rust tools to aid routing in KiCad

    21 parts744MIT
  • 2 layers23.5 × 15.8 mmQuiverAttachPCB, the printed circuit board in 3D

    QuiverAttachPCB

    Arrow-air/project-quiver

    Project Quiver documentation, designs, and project artifacts.

    21 parts617CERN-OHL-S-2.0
  • 2 layers69.9 × 41.3 mmHeaterMeterLCD, the printed circuit board in 3D

    HeaterMeterLCD

    CapnBry/HeaterMeter

    HeaterMeter and LinkMeter Arduino BBQ Controller

    21 parts557MIT
  • 2 layers161.3 × 111.8 mmDoj, the printed circuit board in 3D

    Doj

    kelu124/echomods

    Open source ultrasound processing modules and building blocks

    21 parts463