

Navy split
Split Keyboard handwwired with raspberry pi pico as mcu
- Size
- 275.2 × 109.2 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 108
- Nets
- 59
- Pads
- 810
- Tracks, vias
- 0, 0
- Routed
- Not yet
- KiCad
- KiCad 4.2.1 (file 20240108)
- Created
- 6 Feb 2026
- Updated
- 6 Feb 2026
Overview
Navy split is an open-source printed circuit board by Naivedya-sahu, from the Naivedya-sahu/Split-K repository on GitHub. It is a 2-layer board of 275.2 × 109.2 mm with 108 parts on 59 nets.
Its parts include 54 diodes and 54 switches. It belongs with the keyboards and input boards of this library.
README
README.mdSplit-K
A custom handwired split ergonomic keyboard designed using Ergogen for layout generation and 3D-printed enclosures. This project explores ergonomic keyboard layout design, 3D-printable case modeling, and handwired matrix construction with a Raspberry Pi Pico.
Status: Design complete. Handwiring and assembly in progress.
Overview
Split-K is a 6x4 split keyboard with 3 thumb keys per side, using Cherry MX-compatible switches and a Raspberry Pi Pico microcontroller. The key layout and board outline are generated via Ergogen, and the case is fully 3D-printed. The keyboard is handwired — no custom PCB, just direct wiring of the switch matrix to the controller.
Design Highlights
- Split layout — mirrored halves with adjustable distance
- 6x4 matrix + 3 thumb keys per side
- Column stagger tuned for natural finger reach
- Handwired switch matrix with diodes
- Cherry MX-compatible switches
- Raspberry Pi Pico as the controller
- 3D-printable case — switch plate, bottom plate, and mounting hardware
3D Models
All case parts are designed for FDM 3D printing. Click any STL file below to view an interactive 3D preview.
| Part | File | Description |
|---|---|---|
| Switch Plate | switch_plate.stl | Top plate with MX switch cutouts |
| Case Bottom | case_bottom.stl | Bottom enclosure plate |
| Mounting Plate | mounting_plate.stl | Internal mounting structure |
| Pico Standoff | pico_standoff.stl | Standoff mount for Raspberry Pi Pico |
| Keycap | cap+1.35.stl | Keycap model |
| Prototype | prototype.stl | Early prototype plate with snap-fit key slots |
Full assembly (multi-part):
| Part | File |
|---|---|
| Assembly - Part 1 | Assembly 1 - Part 1.stl |
| Assembly - Part 2 | Assembly 1 - Part 2.stl |
Ergogen Configuration
The keyboard layout is defined declaratively in Ergogen, which generates the board outline, key positions, case models, and a reference PCB.
| File | Description |
|---|---|
| config.yaml | Current Ergogen layout configuration |
| ergogen/config.yaml | Ergogen workspace config with custom footprints |
| ergogen/footprints/ | Custom Ergogen footprint definitions |
Generated output from Ergogen:
| Output | File |
|---|---|
| Board outline | bottom.dxf |
| Plate cutouts | plate_with_holes.dxf |
| Reference PCB | navy_split.kicad_pcb |
| Mounting plate | mounting_plate.stl |
| Prototype case | prototype.stl |
Board Outlines
DXF outline files from various design iterations, used as templates for case profiles and plate cuts.
| File | Description |
|---|---|
| bottom.dxf | Board outline |
| switch_plate.dxf | Switch plate outline |
| demo.dxf | Key position demo overlay |
KiCad Files
KiCad project files are included from Ergogen output and early exploration. The PCB design is not started — the actual build is handwired.
| File | Description |
|---|---|
| Split-K.kicad_sch | Schematic (work in progress) |
| Split-K.kicad_pcb | PCB layout (not started) |
| Split-K_L.kicad_pcb | Left half (not started) |
| Split-K_R.kicad_pcb | Right half (not started) |
These are kept for potential future PCB revision. To view, open in KiCad 9 or later.
Component Libraries
KiCad component libraries bundled with the project.
| Library | Contents |
|---|---|
| MX1A-11NN | Cherry MX switch — symbol, footprint, and 3D model (.step) |
| RASPBERRY_PI_PICO | Raspberry Pi Pico — symbol, footprint, and 3D model (.step) |
Design Iterations
Earlier config iterations are preserved in archive/ for reference, showing the evolution from an Architeuthis Dux-based layout to the final Split-K design.
| Config | Based on |
|---|---|
| config-architeuthis.yaml | Architeuthis Dux (3x5, Choc switches, aggressive splay) |
| config-navy.yaml | Navy Split v1 (6x4, Choc switches, custom outline) |
| Split_k.yaml | Split-K early draft (6x4, MX switches, refined stagger) |
Project Structure
Split-K/
├── *.kicad_* KiCad project files (for future PCB revision)
├── config.yaml Ergogen layout configuration
├── ergogen/ Ergogen workspace (custom footprints + generated output)
├── libraries/ KiCad component libraries (MX switch, Pi Pico)
├── 3d-models/ STL files for 3D-printed case parts
├── outlines/ DXF board outlines from design iterations
├── reference/ Reference PCB designs used during development
├── archive/ Previous Ergogen config iterationsTools Used
- Ergogen — keyboard layout generator
- KiCad 9 — schematic and reference PCB viewer
- FreeCAD / slicer software — 3D model preparation and printing
Acknowledgments
This is a learning project. The design is based on the Architeuthis Dux split keyboard and various community Ergogen configurations. Built to learn ergonomic keyboard layout, 3D enclosure modeling, and handwired keyboard construction — not an original design.
License
This project is shared for educational and portfolio purposes.
Parts
108| Qty | Value | Footprint | References |
|---|---|---|---|
| 54 | ComboDiode | D1, D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 +38 | |
| 54 | — | ceoloide:switch_mx | S1, S2, S10, S11, S12, S13, S14, S15, S16, S17, S18, S19, S20, S21, S22, S23 +38 |
Questions
How big is the Navy split PCB?
It measures 275.2 × 109.2 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Navy split use?
108 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 Navy split KiCad files?
From the Naivedya-sahu/Split-K repository on GitHub, at the commit this page was made from: the board is ergogen/output/pcbs/navy_split.kicad_pcb and its schematic Split-K.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Navy split design in my own project?
Its repository states no licence, so its author keeps all rights: ask Naivedya-sahu before reusing the design.
More from Naivedya-sahu/Split-K
4- 2 layers275.2 × 109.2 mm

- 2 layers275.2 × 109.2 mm

- 2 layers135.4 × 109.2 mm

- 2 layers129.2 × 96.3 mm

Architeuthis dux
Naivedya-sahu/Split-K
Split Keyboard handwwired with raspberry pi pico as mcu
20 parts
Similar boards
- 2 layers89.2 × 82.6 mm

Desktop 50 Pin TopConn
BlueSCSI/BlueSCSI-v2
BlueSCSI v2/Ultra - an open source, open hardware, SCSI emulator using the Pi Pico PR2040 and Pico 2 RP2350
108 parts459GPL-3.0 - 2 layers312 × 140 mm

- 2 layers99.1 × 90.7 mm

Bgkeeb
sadekbaroudi/bgkeeb
This is a reversible 100mm x 100mm pcb with support for mx or choc switches (no hotswap), per key led, rotary encoders, and exposes the SDA/SCL/GND/VCC lines in the form of the pimoroni trackball pins (meaning you can…
108 parts108 - 2 layers165 × 113 mm

- 2 layers262 × 113.9 mm

Quacken
Nuclear-Squid/Quacken
Libre, ergonomic, polymorphic: a single PCB for many possible layouts.
108 parts38GPL-3.0 - 2 layers87 × 87 mm

Cn tester panel
aroum/cn_tester
c!n tester is a hardware and software system designed for testing ProMicro-like microcontrollers.
108 parts37MIT - 2 layers161.5 × 106 mm

WaccaProtocolTranslator
FizzyApple12/Waccon
A repository for all of the files in my design for an open-source touch ring controller.
108 parts33 - 2 layers258.2 × 96.8 mm

Narfkb
sebastian-stumpf/narfkb
rp2040 powered split keyboard with rotary encoders and 6mm tactile buttons
108 parts29MIT