Arduino powered 5-key keypad includes a rotary encoder

There was a time when people were happy to interact with their computer with a standard keyboard and mouse.  But in recent years, we’ve noticed more programmable, custom-designed keyboards with more ergonomy, a built-in touchscreen display, integrated into a multi-function USB dock/hub, as well as tiny keypads with a couple of mechanical keys to speed up specific functions.

JC Pro Macro is another one of those compact USB keypads. Powered by an Arduino Pro Micro board, the keypad features five mechanical keyboard keys, and adds a rotary encoder, plus an optional I2C OLED display for debugging, and some I/Os to control external hardware like a fan.
JC Pro Macro - Arduino Keyboard with Rotary Encoder
JC Pro Macro keyboard’s features and specifications:

  • MCU board – Arduino Pro Micro compatible board with Microchip ATmega32U4 AVR microcontroller
  • User input
    • 5x programmable keyswitches
    • Rotary encoder to control volume or other “rotary-y” elements, plus a 6th input switch, i.e. you can press it like a button as well.
  • Expansion –
    • 2x GPIO pins (I2C) to control an optional 1306-style OLED display, or other I2C hardware
    • 4-pin header with 5V, GND, and 2x GPIOs can be used to control a PW fan or other purposes.
  • Misc – 4x WS2812B 5050 addressable LEDs
  • Power Supply – 5V via Micro USB port of the MCU board
rotary encoder for fan control
The rotary encoder can be used to control a PMW fan

JC Pro Macro has been tested on a Macintosh computer, but it should also work on Linux, Windows, and other systems that support the USB HID class.

The schematics are not available, but the developer – Jeremy Cook – provides resources in a Github repository with STL files for the base and 3D printed knob, as well as five Arduino sketches:

  • Standard Code used for media control (volume, song skip/back, play/pause), and features a “jiggler” mode that keeps your computer awake and looking like someone is fiddling with the mouse.
  • Slihter.io Mode adds a third mode for playing slither.io.
  • Experimental Fan Mode includes a PWM output for the broken-out pins on the right side that aligns with a standard PC PWM fan. Tested with a 12V Noctua fan, but it should work even better with a 5V fan.
  • Experimental Music Mode to connect a small speaker to GPIO pin 7 to play a number of notes.
  • Experimental Final Cut Pro X Mode adds a mode where the wheel acts as a jog wheel. Press down to stop. Press down & lower-right button to switch back to standard mode.

JC Pro Macro keypad is sold as part of various kits on Tindie with the price starting at $6.95 for the PCB only without any components, going up to $49.20 for a complete system as shown in the first photo. None of the kits come assembled at this time, so you’d still need to solder everything yourself, and Jeremy uploaded a video to show how to do just that.

JC Pro Maco is not the only Arduino-powered keypad with a rotary encoder, and he got his inspiration from other projects listing on Tindie, including the Hub16 programmable macro keyboard with 16 keys and two rotary encoders.

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK Pi 4C Plus
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
11 Comments
oldest
newest
Willy
2 years ago

I love the concept of a rotary encoder on a keyboard! It looks so obvious once you see it! It would make access to menus and scrolling within lists so much easier! And please don’t tell me there are mouses, scroll wheels, touchpads and whatnot. A keyboard is what you use when you need to be efficient. A mouse is what you use to surf the web with one hand or when interfaces are not keyboard-friendly. Ideally I’d like to have a small rotary wheel at the to of the keyboard with a bump in it so that I can… Read more »

Theguyuk
Theguyuk
2 years ago

Well re-invent the wheel. Do a internet search for the Deluxe T11 designer keyboard. ( no display ).
As CNXsoft points out, there many, wheel with keyboard already.

Willy
2 years ago

I was speaking about a real keyboard. Would be even better if it could be integrated by default on laptop keyboards.

Theguyuk
Theguyuk
2 years ago

For Willy

Look up the LOGITECH CRAFT keyboard . Deep pockets needed

Willy
2 years ago

Indeed, maybe. However I doubt that the slightly incurved keys sufficiently compensate for the crappy cheaplet design :-/ The key I use the most on chiclet keyboards is backspace. When I’m back to typing e-mails on my old type-M I feel surprised to continuously type many lines very fast without using backspace. For accurate typing you definitely need some perceptible feedback and chiclet keyboards give little to none, but they are way cheaper to manufacture.

domih
2 years ago

Digging the web, you also find these (non-exhaustive list):

https://leafcutterlabs.com/products/bigknob-steel-case-1
https://jtechdigital.com/product/mechanical-designer-keyboard-k610-white/
https://fave.co/3jDAmjD

Not sure they provide the same capabilities though.

KotCzarny
2 years ago

you know that all synaptic touchpads can designate part of the area for scrollers? imo better than wheel because no wear and tera

Willy
2 years ago

I totally hate this and disable it every time I discover it was enabled by accident. Random behaviors depending on were you touch the pad, no thanks. Plus the benefit of the wheel for me is the ability to move one tick at a time.

roel
roel
2 years ago

I am interested in thar “jiggler” mouse feature. Can that also be done with qmk firmware? I did a search, but no hits.

Frank
Frank
2 years ago
Khadas VIM4 SBC