Skip to the content
PCBKitNew board
2 layers147.9 × 104.8 mmKlein, the printed circuit board in 3D

Klein keyboard is a 36 keys, columnar staggered, split ergo keyboard

Size
147.9 × 104.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
83
Nets
60
Pads
727
Tracks, vias
2,004, 127
Pours
1
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
23 Oct 2022
Updated
30 Mar 2024

Overview

Klein is an open-source printed circuit board by snsten, from the snsten/Klein repository on GitHub. It is a 2-layer board of 147.9 × 104.8 mm with 83 parts on 60 nets, routed with 2,004 tracks and 127 vias.

It is built around the EG1218. Its parts include 20 switches, 19 diodes, 4 connectors, 3 ICs and 2 resistors. It belongs with the keyboards and input boards and the AVR (ATmega, ATtiny) and nRF52 and nRF5x boards of this library.

Main components

1

README

README.md

Klein Keyboard

Klein keyboard is a 36 keys, columnar staggered, split keyboard named after Felix Klein

Klein


Features

  • Column Staggered
  • Bluetooth compatible with power switch
  • Seeed Studio XIAO-BLE / Pro Micro / nice!nano* / KB2040 / RP2040(boards with Pro Micro pinout) compatible
  • Hotswap MX and Choc switches support
  • Trackpad support with FPC cable and direct wiring
  • Reversible SMD and through hole diode footprint

* nice!nano firmware not available at the moment.

Versions

Supports multiple options of micro controller and sensors.

Features SupportedMicrocontrollerFirmware availableWiredWireless
Encoder or OLEDXIAO-BLEYesYes
Encoder, OLED, TouchPad, Buzzer, HapticsPro MicroYesYes
Encoder, OLED, TouchPad, Buzzer, HapticsKB2040/RP2040YesYes
Encoder and OLEDnice!nanoNo (Planned)Yes

Broadly divided in two types:

Wireless

  • Can be made with Seeed Studio XIAO-BLE
  • Supports either rotary encoder or OLED
  • Battery connectors JST and THT

Wireless touchpad is currently not supported in ZMK.

Wired

  • With any Pro Micro based boards
    • Can support encoders, OLED, Touchpad, Buzzer and Haptics

Keyboard Images

PCB with both Choc and MX switches Klein Choc Switches

Low Profile Choc version Klein MX Choc Switches

MX version Klein MX Choc Switches


Repo Layout and Files

text
.
├── BOM
│   ├── BOM-3235-SEEED.csv         <- BOM
│   └── ibom.html
├── Case
│   └── *.stl                      <- Case stl Files
│   └── Prototype                  <- FreeCad project files (Not tested)
│       └── SwitchPlateFR4         <- SwitchPlate PCB files (Not tested)
├── docs
│   └── images
├── Logo
├── PCB
└── README.md

BOM

It is available in BOM directory as csv file and interactive HTML BOM

Build Guide

Todo

  • Add Build Guide
  • Add Touchpad related 3D Models
  • Software support for Touchpad/OLED

Firmware

Refrences

These projects inspired and helped in making Klein:

Parts

83
QtyValueFootprintReferences
19DIODEkbd:D3_TH_SMDD1, D2, D3, D4, D5, D6, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19 +3
18MX_SW_HSLily58_Pro-footprint:MX_Choc_Hotswap_ModSW1, SW2, SW3, SW4, SW5, SW6, SW7, SW10, SW11, SW12, SW13, SW14, SW15, SW17, SW18, SW19 +2
8Jumper_2_OpenJumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mmJP1, JP2, JP3, JP4, JP5, JP6, JP7, JP8
6MountingHoleMountingHole:MountingHole_3.2mm_M3_ISO7380_PadH1, H2, H4, H5, H6, H8
24.7KLily58-footprint:RESISTORR1, R2
2GND JumperJumper:SolderJumper-2_P1.3mm_Open_Pad1.0x1.5mmJP11, JP13
2Jumper_2_OpenJumper:SolderJumper-2_P1.3mm_Open_Pad1.0x1.5mmJP9, JP10
2LOGOLogo:klein_smallG33, G34
2LOGOLogo:kleinG3, G4
2MountingHoleMountingHole:MountingHole_2.2mm_M2_ISO7380_PadH9, H10
2SolderJumper_2_OpenJumper:SolderJumper-2_P1.3mm_Open_Pad1.0x1.5mmJP16, JP17
2VCC JumperJumper:SolderJumper-2_P1.3mm_Open_Pad1.0x1.5mmJP12, JP14
1Battery PadsConnector_Wire:SolderWire-0.5sqmm_1x02_P4.8mm_D0.9mm_OD2.3mmB2
1BuzzerKLOR:Buzzer_Mallory_AST1109MLTRQ_reversibleBZ1
1Conn_01x04Connector_Wire:SolderWire-0.1sqmm_1x04_P3.6mm_D0.4mm_OD1mmJ3
1Conn_01x12Connector_FFC-FPC:Hirose_FH12-12S-0.5SH_1x12-1MP_P0.50mm_HorizontalJ1
1EG1218SSAJ110100:RevSlideSwitchS1
1Haptic BuzzKLOR:Pimoroni Haptic Buzz DRV2605L DriverJ2
1JST BatteryKLOR:JST_PH_reversibleB1
1MountingHoleMountingHole:MountingHole_3.2mm_M3H3
1MountingHoleMountingHole:MountingHole_2.2mm_M2H7
1OLED-128x64display:OLED-128x64J5
1ProMicroLily58-footprint:ProMicro_rev2U2
1RotaryEncoder_Switchreversible-kicad-footprints:MX-1U-EC11_SwitchSW16
1SW_PushKLOR:SW_Push_1P1T-MP_NO_Horizontal_Alps_SKRTLAE010_both_sidesRSW1
1TRRSkbd:MJ-4PP-9U3
1Trackpad_Mountreversible-kicad-footprints:Trackpad MountT1
1XIAO-BLExiao:XIAO-BLEU1

Questions

How big is the Klein PCB?

It measures 147.9 × 104.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Klein use?

83 parts, built around the EG1218. 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 Klein KiCad files?

From the snsten/Klein repository on GitHub, at the commit this page was made from: the board is PCB/klein.kicad_pcb and its schematic Case/Prototype/SwitchPlateFR4/klein.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Klein design in my own project?

Its repository states no licence, so its author keeps all rights: ask snsten before reusing the design.

Similar boards

  • 2 layers189.5 × 204.9 mmSmartSpin2k Panelized, the printed circuit board in 3D

    SmartSpin2k Panelized

    doudar/SmartSpin2k

    Transform your spin bike into a Smart Trainer!

    749 parts292GPL-2.0
  • 2 layers28.7 × 52.3 mmBreadboard Power Supply, the printed circuit board in 3D

    Breadboard Power Supply

    futureshocked/KLP4e_Breadboard-Power-Supply

    This is the repository for the "4x8x8 LED Matric Clock" project.

    19 parts141MIT
  • 2 layers184 × 114.8 mmPoly555, the printed circuit board in 3D

    Poly555

    oskitone/poly555

    The POLY555 is a polyphonic, analog, square wave synth based on the 555 timer chip.

    262 parts93
  • 2 layers59.5 × 101 mmMouse, the printed circuit board in 3D

    Mouse

    unknownusername504/WirelessMouse

    A wireless mouse with open source pcb/schematic as well as drivers to come.

    54 parts35GPL-3.0
  • 2 layers55 × 86 mmLED Matrix Display Badge, the printed circuit board in 3D

    LED Matrix Display Badge

    0xlama/ATtiny_LED_Matrix_Display_Badge

    An ATtiny85 based badge size PCB that can display alphabets and numbers .

    32 parts18MIT
  • 2 layers166.5 × 113.5 mmKORA, the printed circuit board in 3D

    KORA

    fmash16/KORA

    An Ergonomic Orthogonal Split keyboard with high modularity

    86 parts11GPL-3.0
  • 2 layers181.4 × 179.8 mmRubber duckey, the printed circuit board in 3D

    Rubber duckey

    ajvizganapathy-pixel/FlipperZero-DIY-STM32WB55-NucleusDark

    DIY Flipper Zero clone using STM32WB55CGU6 — KiCad PCB, Momentum firmware, 200+ apps, BadUSB scripts, wiring diagrams

    37 parts10
  • 2 layers125.1 × 95.9 mmF68K IO, the printed circuit board in 3D

    F68K IO

    kunichiko/FPGA-X68k-DE0CV-IO

    FPGA X68000 I/O Board for DE0-CV

    74 parts10