2016-12-11 16:56 - Making
A few months ago I made a "tapper box" to share with the local Killer Queen arcade game community. A side effect of the way the game is played means that your ability to tap the button both very quickly and very consistently goes a long way towards your ability to play well. It was great fun and enjoyed by many. This first box was a spur of the moment weekend project. I took a LCD shield and an arduino, grabbed a button from a video game store and threw it in a box from radio shack with a pile of batteries.
At some point after learning about the nationals tournament this year and decided it would be fun to make a few more to give away there. This involved a bit of redesign in order to be something that I could make several of (rather than just the one) and to be sure the parts would be cheaper (as I'd be buying them rather than mostly using extras just lying around).
First I looked at the LCD shield and understood how it worked. There's power on the left, and more power on the right, dedicated to the LED backlight. In between is signals: contrast adjustment, various control lines, and four data lines. With that understood I could build a simple unit based on the LCD only, rather than the larger and more expensive shield I used the first time.
Then I started laying out both the schematic and the parts. The battery is a holder for two AAs, which goes to a switch, which goes to a 5V boost module. This provides power for the Arduino (a Leonardo Pro Micro) and the 1602 LCD. At the bottom of this sketch I began figuring out how to connect everything: the sixteen pins of the LCD across the top (notice the four empty spots in the middle, this LCD can be driven with either four or eight data lines, and we're just using four here) connect to power and the Arduino. Pins 4 through 7 of the Arduino hook to data pins 4 through 7 of the LCD, Arduino 8 to the LCD's RS (register select) pin, and Arduino 9 to the E (enable) pin.
Here's the first one partially built, inserted into a failed (bad spacing) face plate I still had from the original as a test for size. I needed to verify my ideas about exactly how big they would be. Then the only other picture I took, when I had four of the five boxes made. There you can see the letters A, B, C, D, E hand written on the perf boards. That is the order they were made in, and you might notice that I got them neater and more compact by the third try! The cases were 3D printed, the insides were all hot glued in and the case front and back were super glued together.
For those who are interested I've published the source on GitHub.
If you're interested in making one of these for yourself, there's an easy way and a hard way.
First the (mostly) easy way: Start with almost any full size Arduino. You can get the Uno from (e.g.) Sparkfun or a cheap clone from China. Then get an LCD Keypad Shield, again available both from Sparkfun or China. These should plug right together, one atop the other. Hook the Arduino board to your computer and install the Arduino IDE to build and flash the tapper.ino program linked above. Hook any button's two terminals between the Arduino board's GND and 2 pins. Now it's up to you to figure out how to provide power (your computer can do this) and how to hold it all together. If you have access to a laser cutter, you can use face.svg from the source linked above; it's designed to fit into Radio Shack's 6x4x2 inch enclosure.
Next the hard way. Get an Arduino Leonardo Pro Micro and a 1602 LCD module. Hook them together like my crudely drawn schematic above. Power can be added in several ways, I used a 2xAA battery holder into a 5V boost module, with a switch between the battery and booster. Assemble it all onto something like the perf board pictured. The same button and case concerns apply as for the easy way.