Custom Mechanical Keyboards

board

[Wyager] was shopping around for a mechanical keyboard, and after noticing custom PCB manufacturing had come down in price so much, he decided to build his own. The end result is a keyboard that’s so elegant in its design, that it could, with a little work, become a very interesting Kickstarter project.

The design had three requirements: cheap, mechanical switches, and extremely customizable. The cheap requirement was solved by splitting the keyboard into two parts with a master/slave arrangement. The boards are connected by a 1/8″ TRRS jack conveying an I2C bus. Since both boards are identical except for the code running on the Teensy dev boards, [Wyager] saved a bit of cash by using two of the three PCBs that came with his OSHPark order.

The mechanical switches – Cherry MX Blues – are rather expensive parts for a failed project. For fear of failure, [Wyager] first ordered a PCB containing the footprint of only one key. With the footprint correct, he graduated to a 2×2 matrix. Once that was verified, the 6×5 matrix was ordered. Everything worked perfectly the first time, something we can’t say about many of our projects.

The code, board files, and schematics are available over on the github

Comments

  1. TheJBW says:

    This raises the obvious question:
    Why not lay the keys out like an actual keyboard?

    • wyager says:

      I wanted to try a non-staggered layout for a change. It’s nice! Some people really like it, some people are too put off by it.

    • echodelta says:

      Why would anybody want to copy Victorian mumbo jumbo that was designed to screw with everything including something as simple as a grid.

      • Greenaum says:

        The “slow typists down on purpose” thing has been exposed as probably-a-myth, which is about as mythical as you can be. Though nobody seems to have a proper explanation otherwise either. Somebody should write a book…

        In tests, though, the Dvorak “ergonomic” layout is no faster, for typists trained on it, than QWERTY is for the complement.

        I used to be a super-fast typist at one point. It’s all muscle memory, can’t really say that the QWERTY layout has any particular niggles.

        • kaidenshi says:

          As an amateur guitarist, I’m used to dealing with fingerpicking patterns in my playing. Touch-typing Qwerty reveals similar patterns once you’ve reached a certain level of competence; sometimes when I’m typing (particularly when I’m writing fiction or a even a long article) I feel almost as if I’m “playing” the keys instead of just typing.

          I’ve heard pianist friends say the same too, and I’d imagine for them it’s even an even closer feeling.

        • Jim Thompson says:

          Sorry I don’t have any references to give you, but I once did find an explanation that made sense:
          With the traditional style of typewriter, where the typebars are arranged in an arc at whose center is the target of the typebars (i.e., the point where they strike the ribbon and paper), all of the typebars naturally have motions that converge at that point. They have to, for characters to be printed at the same point no matter what character they are.
          This means that the typebars follow arcs that overlap each other, and the closer two typebars are to each other, the more their arcs overlap, and thus the greater time is required for one typebar to get out of the way of the next one. So the object of the QWERTY layout was to maximize the distance between adjacent letters when typing common English words, thereby minimizing the chance of typebar collisions at any given typing speed. So this was NOT designed to slow down typists, but to INCREASE their speed by minimizing interference between typebars.

          • Galane says:

            Then IBM invented the Selectric with the type ball that had no interference problem.

          • Jim Thompson says:

            @Galane: sure IBM invented the Selectric, in 1961. If you want your mind to be blown, though, look up Blickensderfer. He invented a typewriter in 1892 — that’s EIGHTEEN 92 — that featured interchangeable type cylinders that had four rows of type that rotated and shifted much like the Selectric. This allowed his machine to use different alphabets and even multiple keyboard arrangements simply by swapping the type cylinder, and it was available in both QWERTY and “DHIATENSOR” formats. There was even an electric version introduced in 1902. Seriously – look it up!

  2. Gdogg says:

    I think the code is actually the same on both keyboards (except keymapping)… it’s just smart enough to know whether it’s connected to i2c (as a slave) or USB (as a device with its own i2c slave)

  3. Jim Turner says:

    so this is basically just an ergodox without a case?

  4. Trui says:

    Making sure the design fits correctly the first time is something anybody can do. First of all, get samples of all the non-standard components you’re going to use. Then print out the board on a piece of paper, and put the components on there to check they fit. If you’re using connectors, also plug in the mating parts because they can be wider. For double sided boards, print out both sides, and glue them together with a bit of cardboard inbetween. Make the holes a little bigger than the actual pins so they fit with some room, instead of snugly.

  5. Trui says:

    “Again, much to my surprise, the whole thing worked perfectly the first time I tried it!”

    If that’s indeed a surprise, you took a big risk. Instead of first soldering the whole design, start with the power, check that, then add the controller, check again, then simulate the switches by using a wire/tweezers on the board, then add a switch and test it, then slowly add more switches.

  6. Galane says:

    I want a USB version of the Focus Electronic Co. Ltd. KeyPro FK9000. It has 12 programmable function keys in two columns on the left end, programmable directly on the keyboard, no software on the PC. It has a NiCd battery (easily replaceable) that charges from the keyboard port (AT or with an adapter PS/2) to hold the PF key functions.

    The numpad also doubles as a six function calculator with four function memory and dedicated LCD display. Sadly, it does not communicate with the computer. Being able to send the display contents to the host would’ve been extra useful.

    That’s not all. It has a 9 key arrow grid with diagonals, surrounding a key labeled Turbo, in red.

    It has almost my favorite key layout. Reverse L shaped Enter with big wide Backspace above it. The only part off is the \ key is at the right end of the right Shift instead of down between the right Alt and Ctrl where it should be. In *that* location is the Prog key.

    Between the left Crtl and Alt is a mysterious, unmarked key which mysteriously does nothing at all. Doesn’t generate a scan code or anything… that can be detected through the cable.

    At the top is a tilting holder into which strips of thin cardboard may be inserted. The keyboard came with several, displaying commands for common programs like MS Wode 5.0, Lotus 1-2-3 R3.1, Wordperfect 5.1, Wordstar 4.0, dBASE IV, and blank ones to make your own.

    The commands are color coded. Blue at the bottom for plain F key commands, then red for Ctrl, next green for Shift and on top black for Alt.

    The keys are delightfully springy and clicky, but not as loud as the IBM M’s twangy buckling spring type.

    For a USB version I’d make just a few changes. Replace the mysterious key with the Prog key, itself replaced with the backslash key. Stretch the right shift into the space vacated by backslash. Give it a USB interface and give it a way to transmit the contents of the calculator display to the host. Might even add a USB (3.0?) hub with a port on each end.

    What wouldn’t I do? NO Win-keys! Most useless additions ever to keyboards and the death knell to my favorite key layout. Since the Win-key advent there have been zero keyboards made with the reverse L Enter, big right shift *and* big backspace. The Win-keys also ate away at the spacebar, typically shortening it to place the right Alt where I used to hit the spacebar with my right thumb.

    With Win-keys the backslash is always the one that gets moved around, either cutting off the top of the Enter (where I want to strike it) or replacing the end of Backspace I always want to hit, or chopping off the right end of the right Shift, yup, that’s where I learned umpty years ago to hit *that* key. The FK 9000 is guilty of that sin, its only unpardonable fault.

    I wonder if I could get anywhere with a Kickstarter to produce an enhanced/improved version of the FK 9000? Can any manufacturer make a keyboard without the Win-keys?

  7. 4ndreas says:

    Remembers me a little bit like the one I build last year:
    http://hackaday.com/2013/09/10/building-a-small-keypad-for-strategy-games/

    • Trav says:

      I’ve got two of these planned, although for different applications. One is more of a shortcut keyboard for PowerPoint to be used at an A/V desk. The normal keyboard will be in front of the computer, while a second keyboard with just keys used for presentations (pg up/down, F5, B, W) will sit in front of the Audio mixer. That way if the video guy is not there, one person can pull double duty at one desk.

      The other is a custom joystick for use with my CAD program. It uses arrow keys along with +/- and shift / Ctrl modifiers to move around in 3D space. I think joystick buttons mapped to keystrokes would be al lot easier to use.

  8. DUBSTEP says:

    Map it to an audio production program and you got yourself a knockoff launchpad.

  9. Galane says:

    Somewhere I have an old Saitek external keypad that is programmable via the PS/2 port (but sadly only on 9x based Windows, likely by toggling the lock LED signals) or via its own built in barcode scanner. Use the overlay designer software to redefine its keys and design custom graphics. Print, insert the sheet under the clear overlay then slide the scanner lever back and forth.

    They did a second version which used USB and omitted the built in scanner.

Leave a Reply

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

WordPress.com Logo

You are commenting using your WordPress.com 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

Follow

Get every new post delivered to your Inbox.

Join 91,307 other followers