KeyBoh Is an Open Source Arduino Leonardo Shield for Making Custom USB Keyboards

With 22 total buttons, joystick and encoder, use this shield to create own custom USB HID controller for activating macros or shortcuts.

Cameron Coward
3 years ago3D Printing / Productivity

Standard keyboards are fantastic at what they’re designed for: quickly typing alphanumeric characters. But there are many situations where you might want an auxiliary keypad for more specialized functions, such as launching macros or activating tools in the software you use most. There are many macro keyboards on the market for exactly those situations, but if you’d prefer to create your own then you should check out the KeyBoh open source Arduino Leonardo keyboard shield.

The Uno is the most popular Arduino development board, but the Leonardo has some distinct advantages that might make it more suitable for some projects. The most obvious of these advantages is that the Leonardo has more digital and analog I/O pins available to work with. In this case, however, the Leonardo is used because it has a Microchip ATmega32u4 microcontroller as opposed to the ATmega328 that the Uno is equipped with. The ATmega32u4 is unique in that it can be configured to show up as a standard USB HID (Human Interface Device) when plugged into a computer, which makes it perfect for a keyboard project like this.

KeyBoh is designed as a shield, which is an add-on device that plugs right into an Arduino’s pins to provide additional functionality. This shield provides 20 user-configurable buttons, as well as a small PS2-style joystick and a rotary encoder. The KeyBoh code, which is installed on the Arduino Leonardo, lets you set those buttons up to send any combination of key presses to your computer. If, for example, you use Adobe Photoshop a lot, you can assign Shift + Left Arrow to a button to rotate your brush tip counterclockwise. The rotary encoder and joystick can be used for other functions, like adjusting your zoom level and moving the cursor.

You cannot purchase KeyBoh at this time, which means you’ll need to construct it yourself. The custom PCB file is available, so you can have it made by the PCB fabrication service you prefer. Unlike most of the other macro keyboards we’ve seen, KeyBoh does not feature Cherry MX-style key switches. Instead, it uses tactile momentary push buttons. After soldering the components onto the KeyBoh PCB, you can simply attach it to your Leonardo and use the provided STL files to 3D print a basic protective enclosure. KeyBoh may not have many flashy features, but it is affordable and easy to build.

Cameron Coward
Writer for Hackster News. Proud husband and dog dad. Maker and serial hobbyist. Check out my YouTube channel: Serial Hobbyism
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles