Building a keyboard from scratch

After over a year of work, [dmw] is nearly done with his Humble Hacker Keyboard. It’s a keyboard that has been influenced by some pretty crazy looking designs, but meets all of [dmw]‘s needs for a compact, programmer-oriented key layout that’s easy to type on.

[dmw] posted a pseudo-build log  over at the geekhack keyboard forums. Every single part of this keyboard is custom-made. The key caps were made by Signature Plastics, the case was made by Shapeways, and the custom PCB for the key switches came directly from Express PCB. The key switches are blue Alps sliders (one of the best key switches available) with a few white Alps switches taken from an old Apple keyboard.

After soldering a hundred diodes and switches, [dmw] installed a Teensy++ to convert the closing key switches to something his computer can understand. This turned out to be a perfect of the Teensy because of the USB peripheral libraries that already exist. The source is up on github, so if you’ve ever wanted to replace your Model M with something more ergonomic, here’s your chance.


  1. Arnold says:

    Once you try the IBM Model M, you just can’t let yourself use any other keyboard!!!
    Also, hitting space ONLY with your right thumb doesn’t seem to ergonomic to me…

  2. Atomhax says:

    I love how the arrows are in the middle of the keyboard. That design makes more sense than how it is now.

  3. Dan says:

    Oh wow! It’s based on the dvorak keyboard layout, which is what I use every day! I learned the dvorak layout about 10 years ago (I’m 40 now). The dvorak keyboard layout is far superior, IMHO.

  4. Kevin Keith says:

    First of all, awesome keyboard!
    Secondly: Dear HaD: you guys are seriously starting to creep me out. I kid you not, for the past 5 days or so, you have featured a project on something I had /just/ been thinking about/had in the back of my mind! It’s uncanny! GET OUT OF MY MIND!

    • mikelinpa says:

      It seems you start thinking about it just when they are getting ready to post it. I think you are in their mind. STOP IT!

      Nah, just kidding. I am sure it is because all great minds think alike…

  5. Harley Laue says:

    This keyboard looks just about ideal! I think I’d personally like a bit more hand separation (or maybe angled.) Really though, I feel a keyboard like this would be great.

  6. jero32 says:

    Nice project! Personally I use QWERTY so not a big fan of the DVORAK but that’s just a personal thing. Also like I said up above my hands are big so I don’t think those spacebars would work for me personally. Stil I think this project is awesome for alot of people.

  7. eric says:

    “This turned out to be a perfect [USE] of the Teensy…”

  8. icebrain says:

    Everybody sit down for this one. The amount of money I’ve spent on this keyboard is rapidly approaching the cost of an optimus maximus keyboard. For $500, I got two sets of keycaps – the ones pictured, and another set of blank black caps. The case was around $200. Circuit board, when I finally get it made, will be another $250, provided I get it right on my first try. Then there’s all the components for the circuit board, and a steel backplate to finish it off.

    Uff. Yeah, it’s a nice keyboard, but $1000+ is a little pricier for me ;)

  9. Doc says:

    Like a lot of specialized keyboards, it looks like it’d be pretty much useless for those of us who never learned to touch-type.

  10. BetaLyte says:

    This keyboard + blank keys would really fuck with guests!
    “Can I just check my mail? – Yeah sure, I’ll open it. Here, just login.” xD

  11. geekabit says:

    I love the symmetrical layout. There are enter keys for both hands, ctrl is in the correct place and there’s one for your right hand as well. Also, the cursor keys in the center makes sense.
    Have you guys seen the rest of the website? It turns out there is a whole forum full of keyboard nuts. Some more have built their own custom keyboards. There is even an open source universal keyboard controller (hardware + firmware).

  12. agumonkey says:

    love the symmetry, i’ve done some drawings quite similar, great to see people sharing the same ideas.

  13. Cyberteque says:

    who cares how much it costs!

    no more dying in the heat of battle when you inadvertently hit the freakin ‘doze keys and it doesn’t pause the game!

  14. GaspingSpark says:

    I suppose it’s a great keyboard if you type English all day. But as a programmer I usually need quick access to special symbols: {}[]”‘-_+=?/

    • Max says:

      It is strange that those keys aren’t present on a keyboard designed for programmers.

    • PKM says:

      My thoughts exactly- a keyboard for programmers with no curly brace keys? Don’t want to start a VB.Net / C++ flamewar but the presence of symbols seems like kind of a basic thing for a “programmers” keyboard to have.

    • Rob R. says:

      Yeah… that and the DVORAK part(which can be switched with the Teensy, I love mine btw).

      However, no way I am soldering everything together, that must have taken forever. I’ll leave that up to the keyboard companies to do and I’ll just give them my money.

  15. t&p says:

    Dvorak… that’s like a lefty trying to be a righty

  16. justin says:

    Dvorak all the way!!!

  17. john doe says:

    Topre is the best switch in the world.

  18. geekabit says:

    All special symbols are mapped to fn + letter key. You are able to remap anything on this keyboard. The 4 fn keys can be configured to be either momentary or latching. You can use one of them to (momentary) switch to the symbol layer to type a symbol. You could use another to switch between qwerty and dvorak layout.
    The physical layout of the keys, with the next row directly over the last row, looks more comfortable to me than the usual layout where the next row is shifted a bit to the left. This is probably a rudiment from the typewriter-age.

  19. Just me says:

    I thought there are macro keys for the usual stuff, like int, float etc.

  20. rallen says:

    Does anyone know of a program for a touch tablet that will let me use it as a secondary keyboard? I want to create a page of icons, then attach a key sequence or script file to each icon, and flip back and forth between pages. If it doesn’t exist out there I guess I’ll have to try and hack it together from python or java. An ssh link between the tablet and computer over a network should work just dandy.

    Anyone seen anything like this? I just want a really programmable keypad in conjunction with a normal keyboard.

    Dvorak forever!

  21. Tom the Brat says:

    Late for the party:

    Wow, haven’t seen a Dvorak keyboard for ages. That would keep people from using my computer.

  22. I need to use the same sort of techniques to build my ultimate phonetic keyboard that I already have drawn out plans for. Whomever can help me with this would be of great service to me. I will make it work your time. Please contact me or post on this thread and I will follow up.

  23. Slingrock says:

    How can it create, I only need the ctrl, esc and f4

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Get every new post delivered to your Inbox.

Join 96,670 other followers