

For science
A split ergo 4x5 keyboard with 3 thumb keys where each half is smaller than the 100x100mm cheap PCB production size.
- Size
- 92 × 92 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 57
- Nets
- 48
- Pads
- 341
- Tracks, vias
- 385, 4
- Pours
- 2
- Routed
- Yes
- KiCad
- KiCad 4
- Created
- 14 Dec 2017
- Updated
- 27 Feb 2021
Overview
For science is an open-source printed circuit board by peej, from the peej/for-science-keyboard repository on GitHub, published under the MIT licence. It is a 2-layer board of 92 × 92 mm with 57 parts on 48 nets, routed with 385 tracks and 4 vias.
Its parts include 23 diodes, 2 connectors and 1 IC. It belongs with the keyboards and input boards and the AVR (ATmega, ATtiny) boards of this library.
README
README.mdFor Science is a 46 key ortholinear split keyboard PCB with a 3 key thumb cluster.
The goal of this project is to build a usable split keyboard with a PCB case within the 100x100mm cheap PCB size limit offered by some PCB manufactuers. Designed to be easy to build, it only supports serial communication over a TRRS cable and no LED support. The PCB is reversible, meaning that you need two of the same PCB to create a full keyboard.

Bill of Materials (BOM)
- 2 PCBs
- 46 MX compatible switches.
- 46 1n4148 diodes.
- 2 Pro Micro controllers.
- 2 PJ320D 3.5mm TRRS jacks.
- TRRS cable and micro USB cable.
- 2 plate PCBs and 2 base PCBs.
- 8 M2 standoffs (15mm)
- 16 M2 screws (6mm)
- 46 MX compatible key caps.
Ordering PCBs
PCBs can be manufactuered by a variety of online PCB fabricators, some have special offers for PCBs under 100mm square, so shop around. You can use PCBShopper to search for the best price.
The 3 zip files in the gerber directory contain the gerber files your fabricator will need to make the main PCB for-science-pcb.zip and the plate for-science-plate.zip and base for-science-base.zip PCBs.
When uploading the gerber zip files, use the default PCB settings. The plate PCB thickness should be 1.6mm for the switches to snap into the plate securely.
Construction
- Solder the diodes onto the underside of each PCB.
- Solder on the Pro Micro headers (or a 24 pin DIP socket) onto the underside of each PCB, do not solder on the Pro Micros yet.
- Solder the PJ320D TRRS sockets onto the underside of each PCB. These are SMD components rather than through-hole so as not to interfere with the switch locations.
- Insert the switches into the plate and then into the top of the PCBs. Insert all the switches and ensure that the pins of each switch are correctly coming through the board and are not bent under the PCB.
- Solder all the switch pins.
- Solder on the Pro Micros, ensure that you get them the correct way around and with the correct side up, the chip side should be face down on the left hand PCB and chip side up on the right hand PCB.
- Attach the standoffs to the plate PCB with the screws.
- Attach the base to the standoffs.
- Connect the halves together with the TRRS cable.
- Flash both Pro Micros with the firmware, see the QMK documentation on how to build and flash the firmware.
Parts
57| Qty | Value | Footprint | References |
|---|---|---|---|
| 23 | DIODE | keyboard_parts:D_SOD123_axial | D1, D2, D10, D11, D13, D14, D15, D16, D17, D19, D20, D21, D22, D23, D26, D27 +7 |
| 4 | MountingHole_8.4mm_M8 | Mounting_Holes:MountingHole_8.4mm_M8 | M8, M8, M8, M8 |
| 2 | MX1:7 | Keyboard:MX_DoubleSided | MX1:2, MX1:4 |
| 1 | ARDUINO_PRO_MICRO | footprints:ARDUINO_PRO_MICRO | U1 |
| 1 | Extradata | keyboard_parts:PIN_1_SQUARE | EXTRADATA1 |
| 1 | Ground | keyboard_parts:PIN_1_SQUARE | GROUND1 |
| 1 | MX0:5 | Keyboard:MX_DoubleSided | MX0:4 |
| 1 | MX0:6 | Keyboard:MX_DoubleSided | MX0:3 |
| 1 | MX0:7 | Keyboard:MX_DoubleSided | MX0:2 |
| 1 | MX0:8 | Keyboard:MX_DoubleSided | MX0:1 |
| 1 | MX0:9 | Keyboard:MX_DoubleSided | MX0:0 |
| 1 | MX1:6 | Keyboard:MX_DoubleSided | MX1:3 |
| 1 | MX1:8 | Keyboard:MX_DoubleSided | MX1:1 |
| 1 | MX1:9 | Keyboard:MX_DoubleSided | MX1:0 |
| 1 | MX2:5 | Keyboard:MX_DoubleSided | MX2:4 |
| 1 | MX2:6 | Keyboard:MX_DoubleSided | MX2:3 |
| 1 | MX2:7 | Keyboard:MX_DoubleSided | MX2:2 |
| 1 | MX2:8 | Keyboard:MX_DoubleSided | MX2:1 |
| 1 | MX2:9 | Keyboard:MX_DoubleSided | MX2:0 |
| 1 | MX3:5 | Keyboard:MX_DoubleSided | MX3:4 |
| 1 | MX3:6 | Keyboard:MX_DoubleSided | MX3:3 |
| 1 | MX3:7 | Keyboard:MX_DoubleSided | MX3:2 |
| 1 | MX3:8 | Keyboard:MX_DoubleSided | MX3:1 |
| 1 | MX3:9 | Keyboard:MX_DoubleSided | MX3:0 |
| 1 | MX4:5 | Keyboard:MX_DoubleSided | MX4:4 |
| 1 | MX4:6 | Keyboard:MX_DoubleSided | MX4:3 |
| 1 | MX4:7 | Keyboard:MX_DoubleSided | MX4:2 |
| 1 | Reset | keyboard_parts:PIN_1_SQUARE | RESET1 |
| 1 | TRRS | Keyboard:PJ320D_3.5mm_Jack_SMD | J1 |
| 1 | TRRS | Keyboard:PJ320D_3.5mm_Jack_SMD_Flip | J2 |
| 1 | TX0 | keyboard_parts:PIN_1_SQUARE | TX0 |
Questions
How big is the For science PCB?
It measures 92 × 92 mm and has 2 copper layers, 1.6 mm thick.
What parts does the For science use?
57 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 For science KiCad files?
From the peej/for-science-keyboard repository on GitHub, at the commit this page was made from: the board is for-science.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the For science design in my own project?
Its repository publishes it under the MIT 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
- 2 layers59.2 × 52.9 mm

- 2 layers100 × 70.3 mm

- 2 layers165.1 × 120.7 mm

- 2 layers

- 2 layers121.1 × 104.7 mm

Sepia officinalis
tapioki/cephalopoda
Low profile split ergonomic mechanical keyboards
57 parts240GPL-3.0 - 2 layers100 × 96.5 mm

Keyboard ch32x-36-lhs
rgoulter/keyboard-labs
Repo with my PCB designs and keyboard firmware
57 parts236 - 2 layers178 × 39 mm

AddOnA
freeDSP/freeDSP-aurora
freeDSP ADAU1452 with 8 analog input, 8 analog outputs, S/P-DIF I/O, ADAT I/O, USB Audio Class2, WiFi, Bluetooth
57 parts226CC-BY-SA-4.0 - 2 layers58 × 110 mm
