Quickie USB Keyboard Device

There are a ton of applications that we use that can benefit from keyboard shortcuts, and we use ’em religiously. Indeed, there are some tasks that we do so often that they warrant their own physical button. And the only thing cooler than custom keyboards are custom keyboards that you’ve made yourself.

Which brings us to [Dan]’s four-button Cherry MX USB keypad. It’s not really all that much more than four keyswitch footprints and an AVR ATmega32u4, but that plus some software is all you really need. He programs the Arduino bootloader into the chip, and then he’s using the Arduino Leonardo keyboard libraries. Bam! Check out the video below.

We see this design much more as a demo or collection of building-blocks than necessarily a one-size-fits-all solution. You might need five buttons, or want a different layout, or… It’s all open-source, so go nuts. And you’re not limited to key-clicks either — mouse buttons or even multiple scripted actions are within easy reach.

Building a special-function USB keypad or gaming device used to be hard work. But today between hardware and software design availability, it’s child’s play. Whether you need a footboard, a single-handed chording keyboard, or even just to update an old typewriter, the ability to control the input device that we use for eight hours per day is liberating. Experiment!

32 thoughts on “Quickie USB Keyboard Device

  1. These little things are great- I made one a while back out of a keyswitch tester, and I use it pretty extensively as a remote for whatever. It’s pretty nice being able to lie back and read an ebook by “remote” instead of mouse or keyboard.

  2. Cool beans :D

    Been seriously thinking about some kind of HID for a while so this is pretty inspirational :)

    Managed to stumble across a toy electronic drum set at a thrift store a while ago. The big selling point was it had a pretty robust foot pedal for a kids toy. Sadly there wasn’t much that was salvageable in the main unit but the foot pedal turned out to be a simple reed switch. It also looked like it would be pretty easy to add a potentiometerto the bottom with a couple 3D printed parts. So I just might have to use this as motivation to finally get around to modding it to do a thing.

      1. Sadly most of the bulk of the toy was a sheet of glued capacitive sensors which where ruined (except the pedal) to satiate my curiosity. It’s kind of a game I play where I buy a cheap toy, try to guess how it works and then rend it asunder to see if I was right. Tho most of the time the toy survives :P

        If it had been something a little more robust like a Rockband drum set the actual drum sensors probably would have survived and could likely have been used as sensor/macro inputs.

      2. That would be a nice hack to learn and play with electronics but not that good for doing the same with the instrument, unless one builds an entire program that recognizes notes/chords and suggest the player corrections.
        The best way to learn an instrument is to practice it, learn from others and enjoy playing. It will be hard at the beginning, but once you start to progress it becomes immensely rewarding.
        BTW please use a real instrument: stuff like Guitar Hero is to real instruments what throwing paint cans to a wall is to painting.

      1. HA! I still use my original Gateway AnyKey as my main keyboard to this day (I’m typing on it now). I even have a couple in the closet as backups for when this one dies. LOVE the macro capability. Date code is 01-06-95 and it’s still going strong. :D

    1. Luamacros is a very.. odd software project, the guy codes hidmacros, then changes his effort to luamacros but even when doing the effort he supplies NO comprehensive documentation and the user is left trying and looking at scripts already out there but then find it’s hard to tweak because there still is no documentation..
      Seriously, what’s the thinking there? Weird.

    1. I just wanted to type “Why not just use an ATtiny85?”…
      …now I can save a lot of keystrokes…
                                     \\o    o//    \o/ 

    1. Interesting that the commercial product is kinda expandable and they point very clearly that the LEDs are addressable for each key. Such emphasis on individual addressing led me to imagine that they perform this by a using one 74×74 (dual flip flop) for each key, working as a distributed shift registers, one f-f for the key sampling another for the LED.

    1. you might want to seed a prng with a timely sequence of four keys and have 12/16/20 chars generated from that instead of being obvious with the symbols in your passwords. just a thought.. anyway, 4! isn’t much and the conception would send valid password to sites that have no business ever seeing them if you make a slight mistake.

      so i’d use that concept to make keyfiles instead

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.