A Custom Keypad with Vision

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]

Sawed Off Keyboard

Have you ever had to cut a piece of furniture in two to get it into a new place? Yours truly has, having had to cut the longer part of a sectional sofa in two to get it into a high-rise apartment. That’s what [Charles]’ sawed off keyboard immediately reminded us of. It sounds just as crazy, but brilliant at the same time.

In [Charles]’ case he wanted a keypad whose keys were customizable, and that would make a single keypress do common things like cut, copy and paste, which are normally ctrl-X, ctrl-C and ctrl-V in Windows. To do that he literally sawed off the numeric keypad from a full-sized keyboard. He also sawed off the end to the left of the QWERTY keyboard, and glued it onto the open end of his keypad.

The circuit board was too wide to fit in his new keypad, but he couldn’t stretch out the connections from the keypad’s keys to the board. So he did what any self-respecting hacker would do, he cut the circuit board where there were a manageable number of traces, leaving one part that would fit inside the keypad and another part that he could connect the traces to using a few wires. Lastly, he’d started with a PS/2 keyboard but he wanted USB output and programmability. So he redirected the PS/2 wires to an Arduino compatible Pro Micro and wrote some conversion code which you can find on his GitHub.

What other transformations can we do to keyboards? [Shrodingers_Cat] combined his with some DVD case covers to come up with a pedal board for use with his feet. And given that the keys on the numeric keypad are redundant, [Kipkay] put it to use as a hiding place for valuables instead.

Cluephone for Partiers

[Sam Horne] adapted an old school landline phone to deliver clues to birthday party guests. When guests find a numerical clue, they type it into the keypad to hear  the next clue, which involves decoding some Morse code.

The phone consists of an Arduino Pro Mini, a MP3/WAV trigger, and the phone itself, of which the earpiece and keypad have been reused. [Sam] had to map out the keypad and solder leads connecting the various contact points of the phone’s PCB to the Arduino’s digital pins. He used a digitally-generated voice to generate the audio files, and employed the Keypad and Password Arduino libraries to deliver the audio clues.

This seems like a great project to do for a party of any age of attendee, though the keying speed is quick. Hopefully [Sam]’s guests have a high Morse WPM or are quick with the pen! For more keypad projects check out this custom shortcut keyboard and printing a flexible keyboard.

Continue reading “Cluephone for Partiers”

Custom Gaming Keypad Developed with PSoC and Fusion 360

There was a time when building something yourself probably meant it didn’t look very much like a commercial product. That’s not always a bad thing. We’ve seen many custom builds that are nearly works of art. We’ve also seen plenty of builds that are–ahem–let’s say were “hacker chic”.

[AlexanderBrevig] decided to take on a project using a PSoC development board he picked up. In particular, he wanted to build a custom game keypad. He prototyped a number of switches with the board and got the firmware working so that the device looks like a USB HID keyboard.

Continue reading “Custom Gaming Keypad Developed with PSoC and Fusion 360”

Simple Keypad Scanning With SPI And Some Hardware

16-button keypads have a clever method of encoding their data into 8 pins. Pins are mapped to four rows and four columns on the keypad. A user reads the keypad by bringing each row up to logic: HIGH, and reading the corresponding column values, (HIGH or LOW). Keypad scanning can be farmed out to a microcontroller with a simple finite-state machine and some button debouncing techniques. [Mario], [Glen], and [Paul] on the Netduino forums took an entirely different route: they’ve designed and implemented a Keypad Scanner using any microcontrollers SPI peripheral and a 74HC595 Shift register.

The trio’s solution is an elegant adventure into circuit design. With two diodes and a voltage divider, they devise a simple circuit that pulls the SPI MISO line LOW if a button in the corresponding circuit’s row is pushed closed. Copied four-fold, this circuit joins the rows and columns of the 74HC595 to the keypad matrix. To scan across the four columns, the microcontroller performs an SPI transfer of the key value: 0x01. To decode which button is pushed, the value received back from the SPI bus encodes which button was pushed out of the 16 possible buttons. Note: some cases for ambiguity as to “which button was pressed” do exist if multiple buttons are pushed at the same time, but for the general case where we’re punching in values one-by-one, this circuit works perfectly.

The team’s hack is a clever use of existing hardware to outsource a microcontroller’s software problem to hardware while leveraging the SPI peripheral to cleverly decrypt and retrieve data back from the keypad. Kudos to the team of three over at the Netduino Forums, and we’re always thrilled to see and idea grow from one person to the next. In case you want to take a step lower and build up the keypad itself, here’s a blast from the past that does just that.

Arduino Keypad Door Automation

arduino door pad

[Andrea] just sent us this great student hack he made for his room. He’s constructed an Arduino keypad door lock — without using any proper fastening hardware!

The entire build is made out of scrap parts he had lying around: some DVD’s, a bit of wood, an allen key, a motor and belt from a broken printer, an old hard drive enclosure, and a few power supplies. As you can see the entire setup is held up rather artistically using good old duct tape.

The system auto-locks after 5 seconds, and just in case, [Andrea] has hard-coded in a few safety codes into the firmware to allow him to forcefully open the door — you know, if it malfunctions or something. Not overly confident in his code, he also has it reset every 5 minutes of idling to safeguard against potential memory leaks — probably a good idea! All in all it’s a very cool build, and we have to give him props for not damaging the door to mount it! Down the road he’s also planning on adding a knock sensor using the small speaker that is already part of the circuit, because, why not?

Stick around after the break to see this magnificent contraption that would make Red Green proud.

Continue reading “Arduino Keypad Door Automation”

5 Digit Security Code Activated Relay Using Mostly Discrete Circuitry

alarm keypad

Let’s rollback the hobby electronics calendar a few decades with [myvideoisonutube’s] alarm activation control circuit using a matrix style phone keypad. The circuit is quite old using CMOS 4081 with 4 ‘AND’ gates to hardwire the access code. [myvideoisonutube] references [Ron’s] “Enhanced 5-Digit Alarm Keypad” schematic for this build changing the recommend keypad with a more common matrix style keypad found in touch pad phones. These types of matrix keypads wouldn’t work outright for the input so he cut some traces and added hookup wires to transform it into a keypad with common terminals and separately connected keys. We love seeing such hacked donor hardware even when it requires extensive modifications. [Ron’s] source circuit included a simple enough to build tactical button keypad if you can’t find a suitable donor phone.

Learning how to use mostly discrete components instead of a microcontroller would be the core objective to build this circuit outside of needing a key-code access point or other secure 12 V relay activated device. Such a device would be quite secure requiring a 4 digit “on” code and 5 digits for “off”. You couldn’t just pull off the keypad and hotwire or short something to gain access either. The 4 digit on “feature” does knock the security down quite a lot. However, all keys not in the access code are connected to the same point so you could increase your security by using a pad with more keys.

On [Ron’s] site you will find a detailed construction guide including top and bottom view for placement of all the components on veroboard. Join us after the break to watch [myvideoisonutube] demo his version.

Continue reading “5 Digit Security Code Activated Relay Using Mostly Discrete Circuitry”