You’ve (probably) got four limbs, so why are you only using half of them when you’re working on the computer? Just because your toes don’t have the dexterity to type (again, probably) doesn’t mean your feet should get to just sit there doing nothing all day. In a recent project, [MacCraiger] shows you just how easy it can be to put some functionality under foot by building a pair of media control stomp switches.
If the devices pictured above look a lot like guitar effects, that’s because they share a lot of parts. [MacCraiger] used the same sort of switch and aluminum case that you might see on a pedal board, as he figured they’d be better suited to a lifetime of being stepped on than something he 3D printed.
Up on the desk, and this time in a printed case, is the Arduino Leonardo that they connect to. The wiring for this project is very straightforward, with the switches connected directly to the GPIO pins. From there, the Arduino firmware emulates a USB Human Interface Device and fires off the appropriate media control keystrokes to skip to the next track or pause playback depending on which switch has been engaged.
This hardware isn’t exactly breaking any new ground here, but we did like how [MacCraiger] used standard 3.5 mm audio cable and the associated jacks to connect everything up. It’s obviously on-theme for what’s essentially a music project, but more importantly, gives the whole thing a very professional look. Definitely a tip to mentally file away for the future.
When [gdarchen] wanted to read some NFC tags, he went through several iterations. First, he tried an Electron application, and then a client-server architecture. But his final iteration was to make a standalone reader with an Arduino and use WebUSB to connect to the application on the PC.
This sounds easy, but there were quite a few tricks required to make it work. He had to hack the board to get the NFC reader’s interrupt connected correctly because he was using a Leonardo board. But the biggest problem was enabling WebUSB support. There’s a library, but you have to change over your Arduino to use USB 2.1. It turns out that’s not hard, but there’s a caveat: Once you make this change you will need the WebUSB library in all your programs or Windows will refuse to recognize the Arduino and you won’t be able to easily reprogram it.
Once you fix those things, the rest is pretty easy. The PC side uses node.js. If you back up a level in the GitHub repository, you can see the earlier non-Arduino versions of the code, as well.
If you want to understand all the logic that went into the design, the author also included a slide show that discusses the three versions and their pros and cons. He did mention that he wanted a short-range solution so barcodes and QR codes were out. He also decided against RFID but didn’t really say why.
The Knobo is a small macro keypad with 8 mechanical Cherry-style keys and a clickable rotary encoder knob as its main feature. Each key and knob gesture can be customized to any macro, and with five gestures possible with the knob, that gives you a total of thirteen inputs. On top of that, the build and presentation look so sleek and clean we’d swear this was a product straight off of Teenage Engineering’s money-printing machine.
The actions you can do with those inputs range from simple media controls with a volume knob all the way to shortcuts to make a Photoshop artist’s life easier. Right now you can only reprogram the Knobo’s Arduino-based firmware with an In-Circuit Serial Programmer to change what the inputs do, but [Gary] is currently working on configuration software so that users without any programming knowledge will be able to customize it too.
Security is something that’s far too often overlooked in embedded devices. One of the main risks is that if the device doesn’t verify the authenticity of incoming firmware updates. [Walter Schreppers] was working on a USB password storage device, so security was paramount. Thus, it was necessary to develop a secure bootloader.
[Walter]’s device was based upon the Arduino Leonardo. Starting with the Caterina bootloader, modifications were made to enable the device to be locked and unlocked for programming. This can be done in a variety of ways, depending on how things are setup. Unlocking can be by using a secret serial string, an onboard jumper, and [Walter] even suspects a SHA1 challenge/response could be used if you were so inclined.
It’s never too soon to start thinking about security in your projects. After all, we must stave off the cyberpunk future in which leather-clad youths flick all your lights on and off before burning your house down in the night by overclocking the water heater. Naturally, we’ve got a primer to get you going in the right direction. Happy hacking!
The modern keyboard enthusiast is blessed with innumerable choices when it comes to typing hardware. There are keyboards designed specifically for gaming, fast typing, ergonomics, and all manner of other criteria. [iot4c] undertook their own build for no other reason than nostalgia – which sounds plenty fun to us.
An Arduino Leonardo is pressed into service for this hack. With its USB HID capabilities, it’s perfectly suited for custom keyboard builds. It’s built into a working Atari 65XE computer, and connected to the keyboard matrix. The Keypad and Keyboard libraries are pressed into service to turn keypresses on the 80s keyboard into easily digseted USB data.
There’s plenty of room inside the computer for the added hardware, with the USB cable neatly sneaked out the rear. [iot4c] notes that everything still works and the added hardware does not cause any problems, as long as it’s not used as a computer and a keyboard at the same time.
The junk bin can be a great source of inspiration, unless you’re too familiar with the contents to be imaginative with them. But thrift stores are another matter, like giant junk bins that are constantly replenished by underappreciated elves. You never know what kinds of goodies they will pile on the shelves, so it’s easy to become a fixture and visit them once or thrice a week.
As luck would have it, a 9g micro servo fit perfectly in the back of the frightening little face. [Hunter] designed an axle to transfer motion to the face mechanism, but it broke almost immediately. We applaud his Plan B, though, which consists of a mounting block for the servo, and a cable tie armature connected with screws. Once that was sorted, [Hunter] designed a bulbous body for it in Blender.
This terrifying train-faced toy uses an Arduino Leonardo to read MIDI note-on and -off messages, and opens his mouth when appropriate to sing hit favorites in a smooth, speech-synthesized contralto. Pour yourself a strong beverage and enjoy the build/demo video after the break.
Interested in making your own? [Hunter] has all the files up on his Patreon page. For just $1, you can access the code, synth files, and STL files. While you’re there, you can also get the scoop on his Nintendo LABO waveform cards.
Macros are useful things. They allow one to execute a series of commands with a single keypress. There exists a wide variety of hardware and software solutions to create and use macros to improve your workflow, and now [Evan] has brought the open-source ManyKey into the fray, along with a build tutorial to boot.
The tutorial acts as a great introduction to ManyKey, as [Evan] walks through the construction of a macro keyboard designed to be operated by the feet. Based around the Arduino Leonardo and using off-the-shelf footswitches commonly used in guitar effects, it’s accessible while still hinting at the flexibility of the system. Macros are programmed into the keyboard through a Python app which communicates over serial, and configurations are saved into the Arduino’s onboard EEPROM. The ManyKey source is naturally available over at GitHub.
[Evan] tells us he uses his setup to run DJ software with his feet while his hands are busy on the turntables. That said, there’s all manner of other applications this could be used for. Efficiency is everything, and we love to see keyboard projects that aim to improve workflow with new ideas and custom builds – this shortcut keyboard makes a great example.