A combination of cheap USB HID capable microcontrollers, the ability to buy individual mechanical keys online, and 3D printing has opened up a whole new world of purpose-built input devices. Occasionally these take the form of full keyboards, but more often than not they are small boards with six or so keys that are dedicated to specific tasks or occasionally a particular game or program. An easy and cheap project with tangible benefits to anyone who spends a decent amount of time sitting in front of the computer certainly sounds like a win to us.
But this build by [r0ckR2] takes the concept one step farther. Rather than just being a simple 3×3 keypad, his includes a small screen that shows the current assignments for each key. Not only does this look really cool on the desk (always important), but it also allows assigning multiple functions to each key. The screen enables the user to switch between different pages of key assignments, potentially allowing a different set of hot keys or macros for every piece of software they use.
The case is entirely 3D printed, as are the key caps. To keep things simple, [r0ckR2] didn’t bother to design a full enclosure, leaving all the electronics exposed on the back. Some might think it’s a little messy, but we appreciate the fact that it gives you easy access to the internals if you need to fix anything. Rubber feet were added to the bottom so it doesn’t slide around while in use, but otherwise the case is a pretty straightforward affair.
As for the electronics, [r0ckR2] went with an STM32 “Blue Pill” board, simply because it’s what he had on hand. The screen is a ST7735 1.44 inch SPI TFT, and the keys themselves are Cherry MX Red clones he got off of eBay. All in all, most of the gear came from his parts bins or else was only a couple bucks online.
If you’re looking for something a bit bigger, check out this gorgeous Arduino-powered version, or this far more utilitarian version. Both are almost entirely 3D printed, proving the technology is capable of more than making little boats.
[via /r/functionalprint]
This is awesome! Is there an app or service running on the computer reporting to this what program is in the foreground? That would be great to shift the keys to ones customized to each application. Maybe I’ll work on a version that does this.
Not putting a hood on a car would make for easier access to the engine as well. Doesn’t make it a particularly great idea for an environment where cars typically operate though. Not as bad here obviously but it’s kind of like making an entire car only to not put tires on it.
Anyway, neat project. Many commercial options are fairly expensive for what you get and lack the easy ability to remap keys.
It’s also neat to see how deep the custom keyboard subculture goes.
Lastly, it’s now 2018. Are we any further along yet with better (depending on how you define better) computer input methods? Keyboards certainly work but there has to be a better way.
Bigger ( more keys ) keyboards ? :)
“Not putting a hood on a car would make for easier access to the engine as well.”
The car hackers already beat you to that idea ;P
https://i.redd.it/s3l741bldl501.jpg
And I would fully believe that PVC turbo would require more frequent access to the engine to maintain than the keypad enclosure here.
A turbo on a 60 hp motor is probably not exactly the best method of boosting the power output of a vehicle but removing the hood does at least make it easier to service. It’s also kind of like not driving with a door on your car because you don’t like the inconvenience of having to open a door to exit your vehicle. To each their own, I guess.
“Keyboards certainly work but there has to be a better way.”
Chording keyers. I don’t speak from personal experience, but thousands of court stenographers can’t be wrong.
https://hackaday.com/2015/07/06/stenography-yes-with-arduinos/
Yes, but… Court stenography is a career that pays fairly decently because it’s actually hard. You’re not going to go from Joe Huntanpeck to Flash McTypenstein in less than a few years of serious practice.
But it _totally_ points the way to how things could be faster for most of us. And there’s a video in the above article where a custom steno for (was it Python?) programming is being demonstrated.
The whole idea of a computer-aided typing system, which steno basically is, is also interesting. The current autocorrect, no wait, fix the autocorrect, did it type the right thing, continual second-guessing is probably _not_ the right way forward, but something like steno where you have to memorize a lot but are still aided by a dictionary, may be. As you say, it’s proven.