DIY Macro Keypad

Macro Keypad


I’ve always liked the idea of a little macropad that’s got some handy functions at my fingertips. For example, the first button on my keypad will switch audio between my headset and my speaker. Rather than mess with windows settings, I just tap a single key!

The Hardware

In order to create keyboard input we need a specific Arduino board, not all of them are able to supported ‘HID’ (simulating keyboards, mice, etc). You can find a list of supported Arduino devices on this page.

For this project I decided to use the Arduino Pro Micro. It has a sensible amount of digital inputs, outputs and comes in a tiny footprint which is perfect for a small keypad.

Next step was deciding on some keys to use, I had some Cherry MX Brown switches still lying around, which are perfect for the job.

The final option I wanted was to have a potentiometer. My plan with this was to have some universal volume control. Having to mash a hotkey to volume up/down is a bit of a pain. For hardware I purchased a very cheap encoder. These allow for continuous rotation (unlike potentiometers) and a lot of models even allow you to press the dial for an additional input as well.

Finally I wanted a nice enclosure to finish it all off with. I took inspiration from /u/JackPikatea in their keypad design. The idea is that you stick it to a monitor, side of a PC, or under the desk. This means it’s out of the way but still looks very aesthetically pleasing.

The Software

The software is incredibly basic, it takes advantage of the ‘hidden’ F13-F20 keys. Even though most keyboards end at F12, operating systems still support up to F32. It’s incredibly unlikely anything else will be mapped to these and it saves having to hide hotkeys under CTRL, SHIFT and ALT combinations. Over time I’ve found these can easily conflict with certain games and applications and it just feels like I’m playing Twister with my keyboard…


  • 3D Printed Case
  • Wiring Diagram
  • Sticky tape

Parts List

Item Price Link
Arduino Pro Micro £5.50 Ebay / Amazon UK
Cherry MX Brown Switches £8.00 UK KeyCaps
Rotary Encoder £3.44 Ebay
Various Wires £0.00
3D Printed Case £0.00
Total £16.94