For science
peej·for-science-keyboard
About the For science PCB
For science is an open source AVR/Arduino PCB design by peej, published on GitHub under the MIT license. It is a 2-layer board measuring 92 × 92 mm, with 53 components from 30 distinct parts.
Its main chip is the ARDUINO_PRO_MICRO, from the AVR/Arduino family. By type, the board carries 23 diodes, 2 connectors and 1 IC.
It belongs with the keyboards designs in this gallery.
From the project
A split ergo 4x5 keyboard with 3 thumb keys where each half is smaller than the 100x100mm cheap PCB production size.
For 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.

Main components on the For science
For science bill of materials (BOM)
53 components, 30 distinct parts.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | ARDUINO_PRO_MICRO | ARDUINO_PRO_MICRO | U1 |
| 1 | TRRS | PJ320D_3.5mm_Jack_SMD | J1 |
| 1 | TRRS | PJ320D_3.5mm_Jack_SMD_Flip | J2 |
| 1 | Extradata | PIN_1_SQUARE | EXTRADATA1 |
| 1 | Ground | PIN_1_SQUARE | GROUND1 |
| 1 | MX0:9 | MX_DoubleSided | MX0:0 |
| 1 | MX0:8 | MX_DoubleSided | MX0:1 |
| 1 | MX0:7 | MX_DoubleSided | MX0:2 |
| 1 | MX0:6 | MX_DoubleSided | MX0:3 |
| 1 | MX0:5 | MX_DoubleSided | MX0:4 |
| 1 | MX1:9 | MX_DoubleSided | MX1:0 |
| 1 | MX1:8 | MX_DoubleSided | MX1:1 |
| 2 | MX1:7 | MX_DoubleSided | MX1:2, MX1:4 |
| 1 | MX1:6 | MX_DoubleSided | MX1:3 |
| 1 | MX2:9 | MX_DoubleSided | MX2:0 |
| 1 | MX2:8 | MX_DoubleSided | MX2:1 |
| 1 | MX2:7 | MX_DoubleSided | MX2:2 |
| 1 | MX2:6 | MX_DoubleSided | MX2:3 |
| 1 | MX2:5 | MX_DoubleSided | MX2:4 |
| 1 | MX3:9 | MX_DoubleSided | MX3:0 |
Show 10 more
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | MX3:8 | MX_DoubleSided | MX3:1 |
| 1 | MX3:7 | MX_DoubleSided | MX3:2 |
| 1 | MX3:6 | MX_DoubleSided | MX3:3 |
| 1 | MX3:5 | MX_DoubleSided | MX3:4 |
| 1 | MX4:7 | MX_DoubleSided | MX4:2 |
| 1 | MX4:6 | MX_DoubleSided | MX4:3 |
| 1 | MX4:5 | MX_DoubleSided | MX4:4 |
| 1 | Reset | PIN_1_SQUARE | RESET1 |
| 1 | TX0 | PIN_1_SQUARE | TX0 |
| 23 | DIODE | D_SOD123_axial | D1, D2, D3, D4, D5, D7, D8, D9 +15 |
For science design files
The KiCad project lives in the peej/for-science-keyboard repository on GitHub; these links point at the commit this page was built from.
- Layoutfor-science.kicad_pcb
For science: common questions
What microcontroller does the For science use?
The For science is built around the ARDUINO_PRO_MICRO, from the AVR/Arduino family.
How big is the For science PCB?
The For science measures 92 × 92 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the For science?
53 components, from 30 distinct parts. The full bill of materials is listed on this page.
Where can I download the For science design files?
From the peej/for-science-keyboard repository on GitHub, which has the KiCad layout; the links under Design files point to each one.
Can I use the For science design in my own project?
Yes, under the terms of its MIT license, which peej chose for the repository.
Can I test firmware for the For science without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug AVR/Arduino firmware against it before you order a PCB.
Similar boards
AVR/Arduino
Redox keyboard
mattdibi
162.2 × 126.5 mm77 parts2LMIT2.0kAVR/Arduino
ModuleV450
stuartpittaway
30 × 61.4 mm39 parts2LCC-BY-NC-4.01.1kAVR/Arduino
V4
stuartpittaway
30 × 50 mm38 parts2LCC-BY-NC-4.01.1kAVR/Arduino
Discipline
coseyfannitutti
304.9 × 122.8 mm170 parts2LCC-BY-NC-4.01.0kAVR/Arduino
Megadesk
gcormier
41.7 × 32.2 mm23 parts2LGPL-3.0818AVR/Arduino
Easyduino Atmega Nano
Hanqaqa
43.4 × 18 mm30 parts4LCERN-OHL-P-2.0746