

Masonry
Ergonomic columnar 40% keyboard based of Bruce the Keyboard
- Size
- 228.6 × 86.5 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 122
- Nets
- 93
- Pads
- 618
- Tracks, vias
- 878, 60
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 7 (file 20221018)
- Created
- 14 Feb 2024
- Updated
- 26 Aug 2024
Overview
Masonry is an open-source printed circuit board by dcpedit, from the dcpedit/masonry repository on GitHub, published under the CC-BY-4.0 licence. It is a 2-layer board of 228.6 × 86.5 mm with 122 parts on 93 nets, routed with 878 tracks and 60 vias.
It is built around the USBLC6-2SC6. Its parts include 44 diodes, 10 capacitors, 3 resistors, 3 ICs and 2 switches. It belongs with the keyboards and input boards and the STM32 boards of this library.
Main components
1README
README.md
Masonry Keyboard
Inspired by Bruce the Keyboard, this is a 12 column version with a less aggressive stagger.
Schematic for the STM32F072 integration was taken from Sleepdealer's OSFRL project
Here are the supported layouts: Keyboard Layout Editor
Ordering PCBs from JLCPCB
The files needed for https://jlcpcb.com are located in the production folder:
pcb/production
Once pcb.zip has been uploaded, you can continue with the selected default options. You can optionally change the solder mask color, which changes the final color of your PCB.
When using their assembly service, you will need to upload the following files separately:
bom.csvpositions.csv
These files were all generated with Fabrication Toolkit for KiCad: https://github.com/bennymeg/Fabrication-Toolkit
Stacked Acrylic Case
Case file is in the assets folder.
Parts List
| Description | Qty | Notes |
|---|---|---|
| 3mm acrylic | 7 | Qty = number of case layers |
| 1.5mm acrylic | 1 | Switch plate |
| M3x20mm chicago bolt | 6 | Link |
| M3x10mm chicago bolt | 1 | Link |
| M3x6mm screw | 1 - 6 | Link |
| M2x4mm round standoff | 7 | Link |
| M2x3mm screw | 7 | Link |
| M2x4mm screw | 7 | Link |
| 1mm EVA foam | 1 | Case foam |
| 1.5mm EVA foam | 1 | Switch plate foam, link |
| 2mm EVA foam | 1 | Switch plate foam |
| MX Switch | 38 - 44 | |
| Adhesive rubber feet | 4 |
Keycap sizes will depend on the layout you're building (refer to KLE layout above). Blank uniform-profile keycaps works really great for this keyboard since the keys have a vertical orientation. I found my blank XDA PBT keycaps on AliExpress. The specific ones I use in my build were purchased here (1u - 2u) and here (3u).
| Keycap | Qty |
|---|---|
| 1u | 18 - 28 |
| 1.25u | 8 |
| 1.5u | 4 |
| 1.75u | 4 |
| 2u | 0 - 4 |
| 3u | 0 - 2 |
Assembly
The M3 hardware is for the keyboard case. The shorter M3 fastener goes above the USB connector. You will need to use a wafer head (flat) screw on the bottom to keep the port clear for the USB cable. You can optionally use the same M3x6mm wafer head screws for the entire bottom of the case instad of the chicago bolt ones, which is what I did for my build.
The M2 hardware is to fasten the PCB to the case. The M2x3mm screws go on the bottom, and the M2x4mm screws go on the top (PCB side), with the M2x4mm standoff extending through the bottom of the case. The PCB is essentially floating vertically, but is held up by the 1mm case foam. Below is simple diagram of how everything fits together.
Firmware
QMK/VIA source: https://github.com/qmk/qmk_firmware/tree/master/keyboards/dcpedit/masonry
Parts
122| Qty | Value | Footprint | References |
|---|---|---|---|
| 44 | 1n4148 | Keebio-Parts:D_SOD123 | D1, D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 +28 |
| 28 | ~ | MX_Only:MXOnly-1U-Hotswap | MX04, MX10, MX11, MX12, MX13, MX14, MX15, MX21, MX22, MX23, MX31, MX32, MX33, MX34, MX41, MX50 +12 |
| 8 | ~ | MX_Only:MXOnly-1.25U-Hotswap-Vertical | MX01, MX02, MX03, MX24, MX42, MX43, MX44, MX61 |
| 7 | H2, H2, H2, H2, H2, H2, H2 | ||
| 6 | 100nF | Capacitor_SMD:C_0402_1005Metric | C1, C4, C5, C6, C7, C8 |
| 4 | ~ | MX_Only:MXOnly-1.75U-Hotswap-Vertical | MX00, MX25, MX45, MX60 |
| 4 | ~ | MX_Only:MXOnly-1.5U-Hotswap-Vertical | MX05, MX20, MX40, MX65 |
| 3 | 1uF | Capacitor_SMD:C_0402_1005Metric | C3, C9, C10 |
| 2 | 5k1 | Resistor_SMD:R_0402_1005Metric | R2, R3 |
| 2 | RST | Button_Switch_SMD:SW_SPST_SKQG_WithoutStem | SW1, SW2 |
| 2 | ~ | MX_Only:MXOnly-2U-Hotswap | MX33.2, MX72.2 |
| 1 | 10k | Resistor_SMD:R_0402_1005Metric | R1 |
| 1 | 4.7uF | Capacitor_SMD:C_0402_1005Metric | C2 |
| 1 | 500mA | Fuse:Fuse_1206_3216Metric | F1 |
| 1 | LOGO | masonry.prety:logo_lg | G*** |
| 1 | STM32F072C8Tx | Package_QFP:LQFP-48_7x7mm_P0.5mm | U2 |
| 1 | USBLC6-2SC6 | Package_TO_SOT_SMD:SOT-23-6 | U1 |
| 1 | USB_C_Receptacle_USB2.0 | Connector_USB:USB_C_Receptacle_HRO_TYPE-C-31-M-12 | J1 |
| 1 | XC6206PxxxMR-Regulator_Linear | Package_TO_SOT_SMD:SOT-23 | U3 |
| 1 | ~ | MX_Only:MXOnly-2U-Hotswap-VerticalStabilizers | MX64.2 |
| 1 | ~ | MX_Only:MXOnly-2U-Hotswap-ReversedVerticalStabilizers | MX21.2 |
The 120 most common of 122 parts.
Questions
How big is the Masonry PCB?
It measures 228.6 × 86.5 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Masonry use?
122 parts, built around the USBLC6-2SC6. 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 Masonry KiCad files?
From the dcpedit/masonry repository on GitHub, at the commit this page was made from: the board is pcb/pcb.kicad_pcb and its schematic pcb/Matrix.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Masonry design in my own project?
Its repository publishes it under the CC-BY-4.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 layers16.9 × 119.4 mm

- 2 layers290.1 × 130 mm

- 4 layers95 × 55.5 mm

EinkPDA keyboard
TalismanDesign/PocketMage_PDA
An E-Ink PDA device using the ESP32 S3.
137 parts2kApache-2.0 - 4 layers299 × 127 mm

- 2 layers42 × 67 mm

- 2 layers134 × 88 mm

Tulipcc
shorepine/tulipcc
The Tulip Creative Computer and AMYboard - portable Python synthesizers
103 parts978 - 4 layers70.8 × 108 mm

- 4 layers28.2 × 26.1 mm

DongleHiderPlus PCB
LeoDJ/FW-EC-DongleHiderPlus
Framework Expansion Card that includes a USB hub to hide a bare dongle inside and still have a USB-A port externally
23 parts497CERN-OHL-W-2.0