Building a keyboard from scratch

Jesse Vincent (Keyboardio)
Open Hardware
Location: D135 Level: Novice
Average rating: ****.
(4.67, 9 ratings)
Slides:   external link

Like many hackers, I tend to type a lot. And I’m somewhat picky about my keyboards.

Early last year, I started reading about the (incredibly sad) state of the art in ergonomic keyboards. Despite the fact that I’d never held a soldering iron, I somehow got it into my head that I should be able to make my own keyboard. Using a keyboard shell and plate designed by someone else, it took me a few weeks to solder together and debug my first working (and entirely open source) keyboard.

Since then, I’ve explored layout design, construction techniques, materials, microcontrollers and a variety of layouts. I’ve also done a fair job exploring the wide variety of ways you can screw up as you make a keyboard.

This talk will cover:

  • The tiny bit of electronics knowledge you need in order to build a keyboard.
  • The tools you need to build your first keyboard.
  • The materials you’ll need to build your first keyboard (and where to get them.)
  • How to design your own keyboard layout.
  • How to design your own keyboard plate and shell.
  • Options for turning your keyboard shell into something you can plunk some keys into. (I’ll talk about lasercutting and 3D printing. If there’s time, I might talk about resin casting and watercutting.)
  • How to turn a shell, a bunch of keyswitches, a pile of diodes and a microcontroller into a working keyboard.
  • Programming your keyboard’s microcontroller, so you can actually type on your keyboard.
  • Debugging your keyboard.

Most importantly, I’ll cover every mistake I can remember making as I hand-built my first few keyboards.

Jesse Vincent


Jesse Vincent is the author of RT and Hiveminder and the founder of Best Practical Solutions, LLC, a company dedicated to open tools to help people and organizations keep track of what needs doing, when it gets done, and who does it. Jesse is also the founder and project lead of K-9 Mail, the leading open source email client for Android. Jesse was the project lead for Perl 5 for the 5.12 and 5.14 release cycles.

Comments on this page are now closed.


Jesse Vincent
07/23/2013 9:52am PDT

@Josiah – An earlier version of the talk is already online at

Josiah Burke
07/23/2013 5:13am PDT

Sadly, I am nowhere near Portland. Will this be recorded in any way? I’d love to attend but If there is a webinar setup but, if not, I’d love to at least be able to see it.


Sponsorship Opportunities

For information on exhibition and sponsorship opportunities at the conference, contact Sharon Cordesse at (707) 827-7065 or

Contact Us

View a complete list of OSCON contacts