One-Handed Keyboard

An open-source ergonomic keyboard with integrated trackball, created for one-handed workflows. Powered by QMK with left and right layout options.

🖱 Integrated Trackball ⚙ QMK Firmware 🔩 3 Variants 📦 Open-Source Hardware 🖨 3D-Printable
3D Model Viewer

Rotate · Zoom · Inspect — interact with the keyboard models directly in your browser.

Variant

Part

Loading model…

🖱 Left-drag to rotate  ·  Scroll to zoom  ·  Right-drag to pan

Project Overview

Everything included in this open-source release.

📐 Hardware

8 PCB designs across three keyboard variants (left-hand and right-hand), provided as LCEDA / EasyEDA project files.

💾 Firmware

QMK firmware for all three variants, plus JSON keymap files for VIA remapping and pre-compiled binaries.

🖨 3D Models

STL files for all printable parts and DXF files for CNC-cut components for each keyboard variant.

🖱 Trackball

25 mm PTFE trackball with 6 × 2 mm PTFE bearing balls. Sensor: ADNS-9800 over SPI1.

🔌 MCU

STM32G431CBU6 microcontroller. Compatible with USB-A→USB-C and USB-C→USB-C cables.

🔩 Modularity

Trackball, scroll wheel, and directional button daughterboards are shared across all variants and connected via FPC cables.

Build Guide

Full assembly instructions for all three keyboard variants.

PCB Specifications

  • Right-Hand Large (Hot-Swap): FR-4, 1.6 mm, 4-layer, stackup JLC04161H-3313, impedance ±20%.
  • Left-Hand Small (Solder): FR-4, 1.6 mm, 2-layer. ALPS yellow switches need slight force when inserting.
  • Left-Hand Large (Hot-Swap): FR-4, 1.6 mm, 4-layer, stackup JLC04161H-3313, impedance ±20%.
  • Type-C Daughterboard (×2): FR-4, 1.6 mm, 2-layer. Connector CON1 (large keyboard only).
  • Trackball Module: FR-4, 1.6 mm, 2-layer. Mind soldering orientation. Connector: CON3.
  • Scroll Wheel Module: FR-4, 1.6 mm, 2-layer. Encoder 7 mm, button 6 mm, actuation ≤ 180 g. Connector: CON2.
  • Directional Button Module: FR-4, 1.6 mm, 2-layer. ALPS yellow switches. Connector: CON4.
  • Main Control Board – Left Small: FR-4, 1.6 mm, 2-layer.
Trackball, Scroll Wheel, and Directional Button boards are shared across all variants. The left-hand and right-hand large keyboards are not mirror images of each other.

Printed Parts

  • Keycaps: Resin, PLA, or similar.
  • Trackball Housing: Resin, PLA, or similar.
  • Mouse Left/Right Buttons: Resin, PLA, or similar.
  • Enclosure: Resin, PLA, or similar.
  • Base: Resin, PLA, or similar.

Machined Parts

  • Switch Plate: POM recommended, 1.5 mm thick.
  • Plate Foam Strip: Adhesive on one side.
  • Sandwich Foam: Poron recommended, 3.5 mm thick.
  • Switch Pad Foam: 2 mm thick.
  • Base Foam: Poron recommended, 4 mm thick.
  • Silicone Pad (small only): 5 mm thick, Shore 00-10.

Fasteners

PartLarge KeyboardSmall Keyboard
M3×3×4 Heat-Set Brass Insert88
M2×2×3 Heat-Set Brass Insert2
M2×3×3 Heat-Set Brass Insert1712
M3×6 Countersunk Screw26
M3×15 Countersunk Screw4
M3×22 Countersunk Screw6
M2×8 Socket Head Screw44
M2×3 Socket Head Screw2
M2×5 Socket Head Screw138
M3×16 Flat Head Screw2

Other Components

  • Trackball: 25 mm diameter, PTFE.
  • Bearing Balls: 2 mm diameter, PTFE. 6 balls in trackball housing.
  • Scroll Wheel: 19–20 mm diameter, 4–5 mm thick, metal.
  • Stabilizers: 2U PCB-mount stabilizers.
  • Switches: Small: 57 mini ALPS yellow; Large: 57 standard mechanical switches.
  • FPC Cables: 0.5 mm pitch, 8-pin, reversed polarity — two 10 cm + two 15 cm.
All FPC connectors are labeled CON1–CON4. Connect matching labels together. The design uses dual-direction FPC connectors; with all oriented bottom-contact, use reversed-polarity cables.

Firmware Flashing

  • First flash: Hold button "B" on PCB back, plug in USB → bootloader mode.
  • Updates: Hold ESC on the keyboard, plug in USB → bootloader mode.
See the QMK flashing guide for full details.

Assembly Steps (Large Keyboard)

  1. Connect 4 daughterboards to main PCB via FPC cables; flash firmware and test all functions first.
  2. Install 3–5 switches plus scroll wheel and trackball to verify before full assembly.
  3. Install heat-set brass inserts into the enclosure and base at the correct positions.
  4. Print legends on keycaps. Attach foam strips to both sides of protruding switch plate sections.
  5. Secure 4 daughterboards to base with screws (mind cable routing). Attach trackball housing screws from below.
  6. Fasten left and right mouse buttons to main PCB.
  7. Layer into fan-shaped base cavity: base foam → switch pad foam → keyboard PCB → sandwich foam → switch plate.
  8. Insert all key switches.
  9. Place enclosure over assembly and secure from below with screws.
  10. Install keycaps to complete the build.