Instant Macropad: Just Add QMK

I recently picked up one of those cheap macropads (and wrote about it, of course). It is surprisingly handy and quite inexpensive. But I felt bad about buying it. Something like that should be easy to build yourself. People build keyboards all the time now, and with a small number of keys, you don’t even have to scan a matrix. Just use an I/O pin per switch.

The macropad had some wacky software on it that, luckily, people have replaced with open-source alternatives. But if I were going to roll my own, it would be smart to use something like QMK, just like a big keyboard. But that made me wonder, how much trouble it would be to set up QMK for a simple project. Spoiler: It was pretty easy.

The Hardware

Simple badge or prototype macropad? Why not both?

Since I just wanted to experiment, I was tempted to jam some switches in a breadboard along with a Raspberry Pi Pico. But then I remembered the “simple badge” project I had up on a nearby shelf. It is simplicity itself: an RP2040-Plus (you could just use a regular Pi Pico) and a small add-on board with a switch “joystick,” four buttons, and a small display. You don’t really need the Plus for this project since, unlike the badge, it doesn’t need a battery. The USB cable will power the device and carry keyboard (or even mouse) commands back to the computer.

Practical? No. But it would be easy enough to wire up any kind of switches you like. I didn’t use the display, so there would be no reason to wire one up if you were trying to make a useful copy of this project.

Continue reading “Instant Macropad: Just Add QMK”

Linux Fu: The Cheap Macropad Conundrum

You can get cheap no-brand macropads for almost nothing now. Some of them have just a couple of keys. Others have lots of keys, knobs, and LEDs. You can spring for a name brand, and it’ll be a good bet that it runs QMK. But the cheap ones? Get ready to download Windows-only software from suspicious Google Drive accounts. Will they work with Linux? Maybe.

Of course, if you don’t mind the keypad doing whatever it normally does, that’s fine. These are little more than HID devices with USB or Bluetooth. But what do those keys send by default? You will really want a way to remap them, especially since they may just send normal characters. So now you want to reverse engineer it. That’s a lot of work. Luckily, someone already has, at least for many of the common pads based around the CH57x chips.

Continue reading “Linux Fu: The Cheap Macropad Conundrum”

Design Constraints Bring Lockbox To Life

One of the most paradoxical aspects of creating art is the fact that constraints, whether arbitrary or real, and whether in space, time, materials, or rules, often cause creativity to flourish rather than to wither. Picasso’s blue period, Gadsby by Ernest Vincent Wright, Tetris, and even the Volkswagen Beetle are all famous examples of constraint-driven artistic brilliance. Similarly, in the world of electronics we can always reach for a microcontroller but this project from [Peter] has the constraint of only using passive components, and it is all the better for it.

The project is a lockbox, a small container that reveals a small keypad and the associated locking circuitry when opened. When the correct combination of push buttons is pressed, the box unlocks the hidden drawer. This works by setting a series of hidden switches in a certain way to program the combination. These switches are connected through various diodes to a series of relays, so that each correct press of a button activates the next relay. When the final correct button is pushed, power is applied to a solenoid which unlocks the drawer. An incorrect button push will disable a relay providing power to the rest of the relays, resetting the system back to the start.

The project uses a lot of clever tricks to do all of this without using a single microcontroller, including using capacitors that carefully provide timing to the relays to make them behave properly rather than all energizing at the same time. The woodworking is also notable as well, with the circuit components highlighted when the lid is opened (but importantly, hiding the combination switches). Using relays for logic is not a novel concept, though; they can be used for all kinds of complex tasks including replacing transistors in single-board computers.

Continue reading “Design Constraints Bring Lockbox To Life”

Metronome Flashes And Vibrates To The Beat

Annoying though they can be, if you play any kind of instrument, you will definitely benefit from using a metronome. While many of them thock or otherwise tock, the VRRVRR metronome from [Turi] works a little differently.

In addition to flashing LEDs, the VRRVRR contains a small vibrating motor. If you’re wondering about the name, it comes from the fact that it vibrates and makes a sort of vrr vrr sound. Need to be quiet? A small switch on the side shuts off the vibrations.

The 4×4 keypad really allowed [Turi] to cram in a bunch of features using both short and long press to do different things. On short press, the digits set the tempo. When not typing in a tempo, zero can be used to enter a tempo by tapping. The letters load preset tempos, and the +/- keys increase and decrease it.

Inside the basswood enclosure is a Raspberry Pi Pico, the vibration motor, and various other bits and bobs that make it go. There’s even an LED to indicate that it’s time to charge the lithium battery. If you want to build your own, head on over to GitHub, but be sure to take the brief VRRVRR tour after the break.

We don’t see too many metronomes around here, but we do have this nice teardown to offer you.

Continue reading “Metronome Flashes And Vibrates To The Beat”

Keypad Interface Module Reverse Engineers Pinouts So You Don’t Have To

If you’ve scavenged some random keypads and want to reuse them in a project without the hassle of figuring out the pinouts, then [Cliff Biffle] has an interface module for you. The Keypad Go connects to the mystery keypad via an 8-pin 0.1 inch header, and talks to your own project using I2C and/or serial.

You could categorize the mechanism at work as machine learning of a sort, though it’s stretching definitions a bit, as there is no ChatGPT or GitHub Copilot wizardry going on here. But you must teach the module during an initial calibration sequence, assigning a 7-bit ASCII character to each key as you press it. Once trained, it responds to key presses by sending the pre-assigned character over the interface. Likewise, key releases send the same character but with the 8th bit set.

The heart of the board is either an STM32G030 or STM32C011/31, depending on parts availability we presume. I2C connectivity is over a four-pin STEMMA connector, and logic-level serial UART data is over a four-pin 0.1 inch pin header. [Cliff] plans to release the firmware and schematics as open source soon, after cleaning up the code a bit. The device is also for sale on Tindie, though it looks like they won’t be back in stock until later on in the month.

Longtime readers might recognize [Cliff] from his impressive m4vga project which we covered back in 2015, where he manages to generate 800×600 VGA signals at 60 Hz from an STM32F4-family microcontroller.

Continue reading “Keypad Interface Module Reverse Engineers Pinouts So You Don’t Have To”

Students 3D Print Low Cost Braille Keypad

Numerical keypads are common entry devices for everything from home security systems to phones and more. Unfortunately, a great deal of them are difficult to use if you’re visually impaired. This high-contrast Braille keypad aims to solve those issues with simple design choices.

The keypad was developed as a school project by students [Nicholas Nguyen] and [Daniel Wang]. It uses a regular layout, with 1 at the top left and 9 at the bottom right. The keypad itself is 3D printed with large buttons for easier use. Each button has its numeral inlaid on the face which allows it to be easily filled in with paint for high-contrast readability.

The real neat feature, though, is that each individual button features its relevant number in Braille. The pips are directly 3D printed into the shape of each button. For those that familiar with the tactile writing system, this makes the keypad much easier to use. It obviates the need to guess at the keypad’s orientation, and we’re honestly surprised we don’t see this on more devices out in the wild.

We’ve featured a variety of neat Braille hacks over the years, including this neat tactile display.

Continue reading “Students 3D Print Low Cost Braille Keypad”

Deepdeck: Going Beyond The Macro Pad

We’re used to the idea of a macropad, a small extension keyboard for your computer whose keys can be programmed to the functions of your choice. They can be made in many ways, but they all follow a similar functionality. Deepdeck from [Nick Velasquez] is another matter, an attempt to make a macropad with functionality that goes way beyond simply pressing keys.

At its heart is an ESP32 module, and it makes full use of both Bluetooth and wireless networking capabilities. It can use Bluetooth when connecting to the host computer, and the wireless connection hosts both the configuration interface via a web server and an Internet connection from which it derives those special powers.  This is a macropad with programmable keys just like all the others, but it also has the ability to connect to online APIs programmed by the user. This allows it to automate complex queries involving other sources into a keypress, which gives it many more possibilities.

A tool such as this one is one of those things which requires a bit of thought as to exactly how it might be used. A normal API connected device might display the weather on a screen for instance, but how often does one need to type the weather forecast? However we can see that this extra online dimension will find as yet unseen applications, and we look forward to the idea being taken up with other macropads.