Skip to the content
PCBKitNew board
2 layers69.3 × 111.2 mmMacropad v2, the printed circuit board in 3D

A PCB-based small form-factor USB keypad with RGB lighting CAUTION: This project is not well designed. This project is not well programmed or commented. This project was not designed for other people to use it. See README for known issues

Size
69.3 × 111.2 mm
Copper layers
2
Thickness
1.6 mm
Parts
48
Nets
49
Pads
224
Tracks, vias
388, 44
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
16 May 2022
Updated
8 Jun 2022

Overview

Macropad v2 is an open-source printed circuit board by JackMillen, from the JackMillen/Macropad-V2-Mini repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 69.3 × 111.2 mm with 48 parts on 49 nets, routed with 388 tracks and 44 vias.

It is built around the WS2812B. Its parts include 26 diodes, 12 switches, 3 connectors and 1 IC. It belongs with the keyboards and input and lEDs and displays boards and the SAM D and SAM boards of this library.

Main components

1

README

README.md

Macropad-V2-Mini

What is this?

A PCB-based small form-factor USB keypad with RGB lighting. They keys send a key press (F13-F23) for autohotkey to listen too, then perform the macro.

It consists of 12 Cherry Blue switches, 14 Neopixels, a tiny RP2040 and a custom PCB.

What is the purpose of this project?

A few years ago I made this, a rough USB Macropad with 13 keys and 5 dials. This version has served me well and is perfect for a desktop, but leaves something to be desired when using it with a laptop.

Issues with old version

  • Too big to carry in a bag
  • Too fragile (The wiring is held together with poor soldering, recycled wire and pure spite)
  • The keys are misaligned due to sloppy 3D modelling
  • Most of the dials do nothing because I don't use midi devices
  • It uses USB Micro-B, not Type-C (which is superior in everyway to lightning)
  • It looks ugly
  • Not enough RGB
  • Handwiring sucks

Features:

  • Integrated Neopixels
  • Single PCB
  • USB C
  • Uses Circuit Python
  • RGB Animations (Animation Choice persists during power-cycle)
  • Low Profile
  • Autohotkey Support
  • Typewriter Style Keycaps
  • Debug pin-headers which allow an external arduino to interface with the PCB for testing

Issues:

  • I f***ed up the diode placement on the circuit, just use wire to bridge the contacts and live with the ghost keys
  • The RP2040 doesn't have an EEPROM so I need to boot the RP2040 in read-only mode to save the RGB state in flash
  • Writing code is easy. Writing code for other people to use and understand is f***ing hard, so I didn't do it. If you are going to make this project, you might want to write your own firmware (But you are welcome to decode mine, GPL 3.0 an' all).

Weird Notes:

  • By default the flash is in Read-Only mode so it can store animation states. To access the USB mass storage, hold the top-left button on startup

Parts

48
QtyValueFootprintReferences
14WS2812BLED_SMD:LED_WS2812B_PLCC4_5.0x5.0mm_P3.2mmD1, D2, D3, D4, D5, D6, D7, D8, D9, D10, D11, D12, D13, D14
121N4148Diode_THT:D_DO-35_SOD27_P7.62mm_HorizontalD16, D17, D18, D19, D20, D21, D22, D23, D24, D25, D26, D27
12SW_PushSwitch_Keyboard_Cherry_MX:SW_Cherry_MX_PCBSW1, SW2, SW3, SW4, SW5, SW6, SW7, SW8, SW9, SW10, SW11, SW12
6MountingHoleMountingHole:MountingHole_2.2mm_M2_Pad_ViaH1, H3, H4, H5, H6, H8
1ColumbConnector_PinHeader_1.27mm:PinHeader_1x03_P1.27mm_VerticalJ2
1LEDConnector_PinHeader_1.27mm:PinHeader_1x03_P1.27mm_VerticalJ1
1RowsConnector_PinHeader_1.27mm:PinHeader_1x04_P1.27mm_VerticalJ3
1SeeeduinoXIAOSeeeduino:Seeeduino XIAO-MOUDLE14P-2.54-21X17.8MMU1

Questions

How big is the Macropad v2 PCB?

It measures 69.3 × 111.2 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Macropad v2 use?

48 parts, built around the WS2812B. 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 Macropad v2 KiCad files?

From the JackMillen/Macropad-V2-Mini repository on GitHub, at the commit this page was made from: the board is PCB/KiCad/Macropad v2.kicad_pcb and its schematic PCB/KiCad/Macropad v2.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Macropad v2 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).

Similar boards

  • 4 layers99 × 53.3 mmPSLab, the printed circuit board in 3D

    PSLab

    fossasia/pslab-hardware

    PSLab Hardware Design and Schematics https://pslab.io

    199 parts1.7kApache-2.0
  • 2 layers26 × 30 mmMicrocontroller, the printed circuit board in 3D

    Microcontroller

    FrameworkComputer/ExpansionCards

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

    34 parts1.1kCC-BY-4.0
  • 4 layers82.6 × 82.5 mmJumperless2, the printed circuit board in 3D

    Jumperless2

    Architeuthis-Flux/Jumperless

    A jumperless breadboard

    208 parts914
  • 2 layers95.3 × 161.9 mmDfh badge, the printed circuit board in 3D

    Dfh badge

    tanaes/whopping_Voron_mods

    135 parts787GPL-3.0
  • 2 layers42.8 × 28.8 mmMM Skirt, the printed circuit board in 3D

    MM Skirt

    PrintersForAnts/Micron

    If you want to purchase full kits there are 3 available (Kits are slowly updating to R1 hardware just make sure to double check the included hardware in your kit and if you have any questions reach out in the discord)

    11 parts741GPL-3.0
  • 2 layers149.6 × 127.1 mmErgodash, the printed circuit board in 3D

    Ergodash

    omkbd/ErgoDash

    keyboard

    187 parts732MIT
  • 2 layers285.5 × 95 mmReviung46 ver1 1, the printed circuit board in 3D

    Reviung46 ver1 1

    gtips/reviung

    The REVIUNG41 is 41-key column staggered keyboard.

    119 parts517MIT
  • 2 layers177.7 × 144.5 mmCOMM PANEL, the printed circuit board in 3D

    COMM PANEL

    jrsteensen/OpenHornet

    OpenHornet 1:1 F/A-18C Simulator Repository

    275 parts431