Skip to the content
PCBKitNew board
2 layers16.9 × 100 mmKeyModule, the printed circuit board in 3D

Pants-mounted keyboard. Yeah. zmk, cadquery, kicad.

Size
16.9 × 100 mm
Copper layers
2
Thickness
1.6 mm
Parts
18
Nets
16
Pads
81
Tracks, vias
82, 33
Pours
1
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
19 Feb 2025
Updated
7 Nov 2026

Overview

KeyModule is an open-source printed circuit board by nevyn, from the nevyn/roamyboard repository on GitHub. It is a 2-layer board of 16.9 × 100 mm with 18 parts on 16 nets, routed with 82 tracks and 33 vias.

It is built around the 74HC165D. Its parts include 5 resistors, 5 switches, 1 capacitor and 1 IC. It belongs with the keyboards and input boards of this library.

Main components

1

README

README.md

roamyboard, aka Pants Keyboard

A keyboard you wear on your legs, so you can type while you walk. Each half is a row of 3D-printed modules on a strap: key modules that click together at an angle, so the half curves around a thigh, an MCU module with a nice!nano, a battery and a display, and a terminator module at the far end. It runs ZMK over Bluetooth, and the right half's display has a built-in PDA.

Photos, the build and more: roamyboard.nevyn.dev. There you'll find the assembly guide, the layout, the PDA manual, and a page to order one.

Both halves strapped across two thighs

But why‽ Because I think so much better when I'm moving. So I want to code while I move. So I need an input method that works while I'm moving. The original idea was to literally sew it into pants, but that's too impractical; now it's a strap you put on top of your pants.

I will also need a wearable computer and head mounted display to go with this setup, but that's for later.

Made by Nevyn Bengtsson 2012-2026 (this is not the first iteration 😅).

What's in here

This repo is also an Obsidian vault, which is why it has wiki syntax here and there.

  • case/: the case. case/roamy-v4 is the current model, in Cadova (Swift): swift run there writes the printable 3MF files. Notes in Case design and Harness design. roamy-v3.py is the old CadQuery model.
  • electronics/: the KiCad project for the key module board, and Electronics with the bus and the joint.
  • zmk/: the firmware, ZMK plus a driver for the key modules' shift register chain. Firmware covers building, flashing over USB, updating over Bluetooth with roamy-ota or a phone, and Logging reading both halves' logs over Bluetooth with roamy-log; Layout covers the keymap.
  • docs/: the website at roamyboard.nevyn.dev and the reference docs; docs/index.md lists them.
  • Build Diary: what happened when.
  • firmware/: the stock Lily58 firmware images from before the roamyboard had its own.

Inspiration

The construction started from ScottoChoczard, a hand-wired, PCB-less split that doesn't have to be flat, and the layout from the Lily58, which is wireless on a nice!nano with a conventional four-row layout. Since then it got its own PCBs and modules. More in Inspiration.

Parts

18
QtyValueFootprintReferences
510KResistor_SMD:R_0805_2012MetricR1, R2, R3, R4, R5
5SW_PushLibrary:Kailh_choc_v1_hotswapSW1, SW2, SW3, SW4, SW5
3HX PM2.54-1x3P WTLibrary:Harwin_M20-791_1x03_Horizontal_SMDJ_LEFT1, J_LEFT2, J_LEFT3
3HX PZ2.54-1x3P WTLibrary:Harwin_M20-889_1x03_Horizontal_SMDJ_RIGHT1, J_RIGHT2, J_RIGHT3
1100nFCapacitor_SMD:C_0805_2012MetricC1
174HC165Package_SO:SOIC-16_3.9x9.9mm_P1.27mmU1

Questions

How big is the KeyModule PCB?

It measures 16.9 × 100 mm and has 2 copper layers, 1.6 mm thick.

What parts does the KeyModule use?

18 parts, built around the 74HC165D. 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 KeyModule KiCad files?

From the nevyn/roamyboard repository on GitHub, at the commit this page was made from: the board is electronics/KeyModule/KeyModule.kicad_pcb and its schematic electronics/KeyModule/KeyModule.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the KeyModule design in my own project?

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

Similar boards

  • 2 layers181 × 97 mmOpenDeck r3.1.2, the printed circuit board in 3D

    OpenDeck r3.1.2

    shanteacontrols/OpenDeck

    A platform for building interactive control and sensing devices using MIDI and OSC built with Zephyr RTOS.

    262 parts960Apache-2.0
  • 2 layers245.1 × 160 mm8-Bit CPU 32k, the printed circuit board in 3D

    8-Bit CPU 32k

    slu4coder/Minimal-64x4-Home-Computer

    My DIY TTL home computer with VGA and PS/2 and 4x the processing power of a Commodore C64 or Apple II.

    139 parts326
  • 2 layers191.8 × 121.3 mm8-Bit CPU 32k, the printed circuit board in 3D

    8-Bit CPU 32k

    slu4coder/Minimal-UART-Computer-1-2

    Legacy: Version 1 and 2 of my TTL-only CPU featuring UART I/O, an expansion port, 512KB SSD at up to 10MHz clock speed

    109 parts184
  • 2 layers135.9 × 87 mmPfm3 ctrl, the printed circuit board in 3D

    Pfm3 ctrl

    Ixox/preenfm3

    Official repo of the preenfm3 FM synth

    65 parts127
  • 2 layers171.5 × 106.7 mmSequencer, the printed circuit board in 3D

    Sequencer

    westlicht/performer-hardware

    PER|FORMER Eurorack Sequencer - Hardware Design Files

    435 parts110
  • 2 layers306.1 × 130.2 mm8-Bit CPU 32k, the printed circuit board in 3D

    8-Bit CPU 32k

    slu4coder/Minimal-64-Home-Computer

    Legacy: Full TTL-only home computer with VGA and PS/2 and twice the processing power of a Commodore 64

    132 parts94
  • 2 layers215.9 × 20.3 mmKeybed, the printed circuit board in 3D

    Keybed

    friggeri/keyboard

    28 parts69
  • 2 layers300 × 105 mmTR-808-Clone, the printed circuit board in 3D

    TR-808-Clone

    minisystem/880

    A Euroack drum machine

    1,078 parts67