Meet the Macropad of Your Dreams
This DIY macropad features a haptic scroll wheel, programmable buttons, and an icon display — with enough storage for 256 custom profiles.
People who spend a lot of time in front of a computer for tasks like video editing, PCB design, and gaming are very well acquainted with keyboard shortcuts. A few quick presses can save a lot of time and keep you from having to move your hand between your keyboard and mouse. However, the more digital tasks you do, the harder it is to remember the specific shortcuts for each application.
Resorting to lookup sheets is almost as slow as clicking through a menu, so power users often opt to use a customized macropad instead. YouTuber CNCDan is one such power user, but nothing commercially available quite fit his unique needs — at least not without costing an arm and a leg. So to get exactly what he needed at a reasonable price, he decided to build his own macropad.
The device has six programmable buttons, each with a Kailh Choc Brown low-profile mechanical switch. There is also a very cool programmable scroll wheel with haptic feedback that is ringed by 20 RGB LEDs, because everything is better with blinkenlights. A 2.42-inch monochrome display sits between the two rows of buttons to display labels or icons. An SD card reader was included in the build to allow for local storage of up to 256 different profiles, so the macropad can quickly adapt to any application you throw its way.
The brain of the operation is a Waveshare clone of the Raspberry Pi Pico development board. It is essentially identical to the Pico, however it has a USB-C connector rather than a micro-USB connector. It handles user inputs and sends keystrokes (defined by the chosen profile) to the host computer. It also interfaces with a motor driver that is wired to a brushless DC motor to provide haptic feedback on the scroll wheel. One of the microcontroller’s CPU cores is dedicated to motor control, while the other handles button presses, to keep the macropad highly responsive.
To complete the build, the hardware was installed in a custom, 3D-printed case. For more details on the hardware and the assembly, be sure to check out the project video.