In my recent column — LED Effects with Toggle Switches — I discussed the creation of a simple test bench comprising a toggle switch and a 10K linear taper potentiometer. The switch has two tricolored NeoPixels associated with it, while the potentiometer has a 16-pixel ring.
The next step was to connect test bench to an Arduino Uno via a breadboard. Now, even though we’re only talking about relatively few wires, things quickly devolve into a bit of a “rat’s nest” when you are using flying leads.
A close-up of the breadboard and Arduino Uno is shown below. Although it’s hard to see, in the middle of the breadboard there’s a small, 8-pin dual-in-line (DIL) integrated circuit (IC). This little scamp is a low-cost LS18 switch debouncer that can handle three channels (three switches). I’m using only one channel to debounce the toggle switch on my test bench.
It probably won’t be long before I start to add more “stuff” to my breadboard. In turn, this will involve more flying leads. Sad to relate, experience has shown me that problems are lurking with this approach. While moving things around, I invariably end up inadvertently disconnecting one or more of the flying leads, after which I spend an inordinate amount of time figuring out where they go.
If only there was a better way. But wait! There is a better way! My chum Mike Pelkey, the founder of LogiSwitch.net, has just introduced something he calls the LogiSwitch Arduino Uno Workbench Proto-Extender Kit (try saying that ten times quickly).
This is one of those ideas that leaves me kicking myself wondering why I didn’t think of it first. In the middle we see the regular Arduino Uno footprint headers. In addition to 5V, 3V3, and GND, we have six analog input/output (I/O) pins (A0 to A5) and fourteen digital I/O pins (D0 to D13).
What Mike has done with his Workbench is to bring all of these pins out to connectors on the left-hand side of the board, the right-hand side of the board, and the bottom of the board (we’ll return to consider the other components later). In turn, this means that it’s possible to connect the Workbench to three breadboards — and to have all of the Arduino’s pins available to each breadboard — at the same time (see also this video).
In order to wrap your brain around just how useful this is, we’ll consider it in the context of my own humble project. Below, we see a picture of the LogiSwitch Workbench sitting next to my Arduino Uno.
After we’ve plugged the Workbench into the Uno, we plug one side of the Workbench into the breadboard, and voila! There we are with all of our connections made. I think this would be a good time for me to perform my Happy Dance (close your eyes; you’re not worthy).
Last but not least, let’s return to the additional components on the Workbench Kit. Let’s first note that the reason this is called a “Kit” is that you get the Workbench unassembled — it’s up to you to attach (solder) the connectors and other components yourself.
In fact, there are three versions of the Workbench Kit. The LS400-BB (bare board) comprises only the board and the connectors. The LS400-18 includes a reset switch, three uncommitted tactile switches, three uncommitted LEDs with associated current-limiting resistors, and a LogiSwitch LS18 debounce IC. The LS400-118 is similar to the LS400-18, except that the debounce IC is a LogiSwitch LS118.
Both the LS18 and LS118 debounce ICs can support three switches. The LS18 is ideal for use in electrically noisy environments, while the LS118 supports a sophisticated handshake protocol that can make your life a lot easier for certain applications. In my case, I have an LS118 on my Workbench for use with the three tactile switches, but I’m using an LS18 on the breadboard to debounce the toggle switch on my test bench (I’ll explain the reasoning behind these choices in a future column).
The inputs to the three LEDs are connected to a 3-pin header, thereby allowing you to connect them to three Arduino pins of your choosing (or to connect them off-board). Similarly, the outputs from the three uncommitted tactile switches are passed through the debounce IC to a 3-pin header, once again allowing you to connect them to three Arduino pins of your choosing (or to connect them off-board).
Well, that’s it for the moment. Now I’m ready to start playing with a variety of lighting effects. I will report back further in a future column. In the meantime, I would be very interested to hear your thoughts on the LogiSwitch Arduino Uno Workbench Proto-Extender Kits.