13Keys.234.webp

13Keys

 13Keys

A compact MIDI input device based on mechanical keyboard architecture, designed for use with desktop music notation software.

The Problem

Using music notation software is a lot easier with a piano-style keyboard input—being able to “type” musical notes directly into the software saves a lot of clicks. But typical piano-style keyboards are overkill for this task, both in size and features. Even with the smallest keyboard I had around, it was still ergonomically terrible to use in combination with my computer keyboard and hard to fit on my desk.

What if I had an extremely compact, one-octave midi input device that was more like a typing keyboard than a piano keyboard?

Design Evolution

 

The first working prototype!

Testing live playing. The code supports octave shifting and simultaneous key presses.

Electronics and Architecture

I learned KiCad for this project and designed my first custom PCB. In the first version, a tiny Seeed Studio Xiao microcontroller sat in between the black keys and controlled a 5x3 matrix of keyswitches and diodes while a rotary encoder knob handled octave shifting. Over time, the design has evolved to a fully custom STM32-based PCBA with hot-swappable keyswitch sockets.

 

V2 Redesign: Scaling Up

In the second design revision, I added hot-swappable keys, simplified the architecture and assembly strategy, and optimized both the PCB and the housing for a small-scale production run. I also started exploring new CMF directions, including translucent plastic and 3D printed nylon.