jklp (pronounced like "jökulhlaup") is an ergonomic keyboard with just 36 keys. It's designed around the natural resting position of your hands.
Compared to other minimal ergonomic keyboards, its unusual features are:
- High angle between halves (20°) that can be altered without rewiring
- Extreme pinky stagger
This repository contains the files you need to make a functioning jklp from scratch, including the case, wiring, and firmware.
The design requires ALPS-style switches and a Pololu A-Star controller. You won't need a PCB or hot glue.
The case is a stack of laser-cut layers fastened together by bolts. The layers are:
The base is single piece that holds the halves of the keyboard together and sets their angle with respect to one another. It can be of any thickness or material. I used 1/4" plywood.
The base included in case.svg
sets an angle of 20°, but you can make another base with a different angle and swap it in anytime, even after wiring.
The frame creates a cavity for the wiring, contacts, and diodes. It can be of any material but should be at least 5 mm thick.
The plates hold the switches firmly in place, avoiding the need for a PCB or hot glue. The plates have two layers:
- A 1/16" acrylic layer that ALPS-style switches "click" snugly into.
- Another, thicker layer to add rigidity.
The crystal is an optional shield over the controller (not pictured in the photo at top). Like the base, this piece needs to be replaced in order to change the split angle, and the included one is for a 20° angle.
The wiring of the key matrix and controller is specified by firmware.json
, which can be edited and compiled to corresponding firmware in Keyboard Firmware Builder.
If you don't understand what that means or need help with wiring technique, the QMK Hand Wiring Guide is good.
To play with the layout or redesign the key matrix from scratch, start by opening up layout.json
in the Keyboard Layout Editor.