Introduction: Minimal Keyboard: Binary Text Entry Device
Today we will be creating a keyboard, with the minimum amount of buttons. This instructable is for all you savvy binary geniuses out there. We have 5 bits, which will cover all the necessary alphabet keys for our typing needs.
The device works by allowing the user to select however mainly of the 5 bits (pushbuttons), before finally clicking an enter button. White LEDs will light on signaling that a button was pressed (representing an on or 1), and a red LED to let the user know that a key was successfully entered.
Step 1: Getting Setup
Parts List:
1x mbed FRDM KL25Z
1x 1/8" plywood
1x breadboard
6x SDST push button
5x White LEDs
1x Red LED
1x Laser Cutter
1x Soldering Kit
Step 2: Solder Buttons and LEDs
First, we will solder wire to our buttons, so that we can breadboard them to the mbed. Solder red and black wire to each of the 6 buttons. Orientation does not matter, since the button has no polarity. We will do the same for each of the 6 LEDs. Orientation in this case does matter, since the LEDs have polarity.
Step 3: Assemble Circuit
Next, we will breadboard out buttons and the LEDs. First ground the Mbed to the breaboard, by connecting a wire from mbed's GND to the blue negative rail. Then, add all the pushbuttons. All pushbuttons should got from D0-D5, respectively. Make sure that the red wire goes to the D# port and the black wire goes to GND. Finish assembling out circuit by adding all our LEDs to the Breadboard and mbed. All the white LEDs will go from D6-D10, while the single red LED will go to port D11.
Step 4: Test Design With Code
Next, upload this mbed code. This code maps each binary combination to alphabet letter. For the remaining bit combinations, I have assigned the value to "space", "delete", "All caps", "!", ".", "?". This code works by allowing the user to select his or her preferred letter (represented as a 5bit value), and click enter to submit the key. The white LEDs will turn on, signaling that a bit on (representing a 1), when a button is pushed. When the enter button is pushed, the key is submitted and a red LED turns on, telling the user that the key was successfully entered. Feel free to test this code with your circuit on a word document. The key mappings are provided above.
Attachments
Step 5: Design Enclosure
MakerCase website: http://www.makercase.com/
Now that we have our circuit and code working, we will finish this device, by creating the enclosure. We will use MakerCase to outline the sketch and edit it, so that we have a desired size that will fit all our circuity. We have made sure that there are adequate ports for the buttons, LEDs, and USB ports on enclosure.
Step 6: Laser Cut Enclosure
With the enclosure that we designed in Illustrator, we will laser cut 1/8" plywood. Make sure that settings for the laser cutter and set up correctly and that all cuts are clean. If a part still remains attached to the plywood, try and cut the excess using an exacto knife. If the issue still persists, you may need to recut the selected part.
Step 7: Assemble Device
With all our parts laser cut. We will now assemble our device. First, we will remove all the buttons from the mbed and breaboard and attach screw the push buttons to the top plate. Once that is secure, create the base of the enclosure and place the breadboard then the mbed on top. Next, reconnect the buttons to the breadboard and mbed. Once all the wiring is connected and secured, we will slowly push the top plate down, bending the wire, and then attaching the top place to the rivets of the enclosure.
Step 8: Start Texting Away!
Now that you have completed your new keyboard, you can safely replace it as your standard home keyboard! Check out this video, and watch how efficient this keyboard functions!