Tag Archives: ExtremeTech

Arduino Micro helps design the perfect keyboard

Writing for ExtremeTech, Sebastian Anthony reports that Jesse Vincent is working to design the perfect keyboard using an Atmel-powered Arduino Micro (ATmega32u4 MCU).

Vincent has already 3D printed a number of plastic prototypes, with mechanical key switches and (commodity) key caps. Inside the latest keyboard (Mark 13) is a programmable Atmel-Arduino microcontroller that provides a USB interface so the DIY keyboards can be plugged into a PC.

“As an Arduino, it’s programmable directly in the vanilla Arduino IDE. It even includes native support for ’emulating’ a USB keyboard and mouse,” Vincent explained in a recent blog post. “The bootloader is an AVR109 compatible Arduino bootloader. It’s free to use and modify. The hardware design is also free to use and modify.”

On the software side, Vincent says he learned Arduino C and wrote the first fully functioning version of KeyboardioFirmware in an hour and a half.

“It turns out that Arduino really is easy to develop for. I’ve [also] added support for keyboard-driven mouse emulation, multiple keymaps, rudimentary macros and dramatically improved reliability and memory efficiency.”

The next step for Vincent is to prepare the Mark 13 for mass production via a process known as design for manufacturability (DFM). Although every key switch has thus far been hand-wired, the final version will use a printed circuit board that has yet to be designed, along with a hard-wearing material for the keyboard’s chassis.

Interested in learning more about the Mark 13 keyboard? You can check out Vincent’s detailed blog post here.