Skip to the content
PCBKitNew board
2 layers76.2 × 99.8 mmMP-102, the printed circuit board in 3D

The MP-102 Macropad features 10 MX-compatible keys and 2 rotary encoders with optional buttons. It uses a Raspberry Pi Pico (RP2040) or compatible microcontroller as the brains.

Size
76.2 × 99.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
23
Nets
34
Pads
182
Tracks, vias
123, 0
Pours
1
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
5 Sep 2024
Updated
5 Sep 2024

Overview

MP-102 is an open-source printed circuit board by QEStudios, from the QEStudios/MP-102 repository on GitHub. It is a 2-layer board of 76.2 × 99.8 mm with 23 parts on 34 nets, routed with 123 tracks and 0 vias.

Its parts include 10 switches and 1 IC. It belongs with the RP2040 boards of this library.

README

readme.md

MP-102 Macropad

The MP-102 Macropad features 10 MX-compatible keys and 2 rotary encoders with optional buttons. It uses a Raspberry Pi Pico (RP2040) or compatible microcontroller as the brains. It can be constructed by anyone as long as you have a 3D printer.

Ordering parts

The MP-102 was designed to be built on a budget of around $35 Australian Dollars. Thus, parts were aquired from less reliable places than where you might normally buy them. I've linked the relevant places here as well as in the Layout and BOM.xlsx file, but all of the parts are generic and can be bought from wherever you find easiest (or cheapest).

I ordered the Hot Melt Inserts from the link provided quite a while before I started this project, so I didn't personally factor this cost into the price of my own build of the MP-102.

[All prices in Australian Dollars]

Build Instructions

3D Prints

All 3D model files can be found in the 3D Models folder in this repository.

You might want to first print out USB C Test Piece.stl and make sure that your USB cable fits through the hole, as this is the size of the opening to the USB C port on the Pico.

There are two different files for the knobs, one with 0.1mm tolerences and one with 0.2mm tolerences. I recommend printing both and choosing the one which fits better for you. You can also use the horizontal expansion setting in your slicer to fine-tune this to your liking.

All files (excluding USC C Test Piece.stl) need to be printed only once, apart from the knob file (either Knob 0.1mm Clearance.stl or Knob 0.2mm Clearance.stl), which you need to print 2 of.

The top part of the case should slide onto the bottom part of the case. You'll need to insert the hot melt inserts into the two holes on the underside of the top part of the case.

PCB

The PCB was designed in KiCad, and the project files for the PCB can be found in the PCB folder in this repository.

The gerber files have been included in the PCB/gerbers folder, but your mileage may vary when using them. I recommend re-generating the gerbers yourself, just to be safe.

I ordered the PCBs from JLCPCB due to their very low price and shipping costs, but you can use whichever fab house you prefer.

Make sure to order the PCB with a thickness of 1.6mm as the case was designed for a PCB of that size.

Flashing the Pico

  1. Install QMK by following this guide.
  2. Copy the QMK Definition folder into your QMK keyboards directory, and rename the QMK Definition folder to mp102.
  3. Run qmk flash -kb mp102 -km default in the QMK MSYS terminal. When it says it's waiting for the device, plug the Pico into your computer while holding the BOOT button down. QMK should flash the Pico with the correct firmware.

Assembly

  1. Solder all the components onto the PCB. Make sure that the Pico is soldered onto the underside of the PCB.
  2. Click the keyswitches into the plate. The top 2 rows should be oriented facing upwards (with the pins on the bottom), and the lower row of 2 switches should be oriented facing downwards (with the pins on the top). If you're using keycaps that let you customise their legends, now is a good time to do that.

TODO: finish documentation

Parts

23
QtyValueFootprintReferences
10SW_Push_45degPCM_Switch_Keyboard_Hotswap_Kailh:SW_Hotswap_Kailh_MX_1.00uSW1, SW2, SW3, SW4, SW5, SW6, SW7, SW8, SW9, SW10
8MountingHoleMountingHole:MountingHole_2.2mm_M2H1, H2, H3, H4, H5, H6, H7, H8
2LOGOLOGOG***, G***
2RotaryEncoder_SwitchRotary_Encoder:RotaryEncoder_Alps_EC12E-Switch_Vertical_H20mmE1, E2
1PicoMCU_RaspberryPi_and_Boards:RPi_Pico_SMD_THU1

Questions

How big is the MP-102 PCB?

It measures 76.2 × 99.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the MP-102 use?

23 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 MP-102 KiCad files?

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

Can I use the MP-102 design in my own project?

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

Similar boards

  • 2 layers65 × 56 mmPi servo hat, the printed circuit board in 3D

    Pi servo hat

    earthtojake/text-to-cad

    Design physical products with AI

    23 parts26kMIT
  • 2 layers14 × 100 mmYunomi, the printed circuit board in 3D

    Yunomi

    google/mozc-devices

    Circuit diagrams and firmware source code for Gboard DIY keyboards

    23 parts3kApache-2.0
  • 2 layers50.8 × 52.2 mmFuhhni, the printed circuit board in 3D

    Fuhhni

    hackclub/OnBoard

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

    23 parts915
  • 2 layers138.8 × 89.8 mmKeyboard pcb, the printed circuit board in 3D

    Keyboard pcb

    diepala/cantor

    Cantor keyboard, a 42 key diodeless split keyboard.

    23 parts756GPL-3.0
  • 2 layers32.9 × 53.3 mmGoatgdo, the printed circuit board in 3D

    Goatgdo

    Kaldek/rat-ratgdo

    Open source schematics for ratgdo PCB

    23 parts511MIT
  • 2 layers35.5 × 50 mmTobo, the printed circuit board in 3D

    Tobo

    kelu124/echomods

    Open source ultrasound processing modules and building blocks

    23 parts463
  • 2 layers19 × 19 mmKeybit, the printed circuit board in 3D

    Keybit

    notaroomba/keybytes

    A truly modular keyboard

    23 parts444
  • 2 layers88.5 × 28 mmExpBreakout, the printed circuit board in 3D

    ExpBreakout

    Duet3D/Duet-2-Hardware

    The KiCAD source for the Duet 3d printer controller see www.duet3d.com

    23 parts258