Anytime you design a circuit, the best place to start building is a breadboard. Believe me, it is much easier to fix a problem or make refinements to a design on a breadboard then to a circuit you have soldered to perfboard or a PCB. However, most breadboards that you will encounter will be bare bones. You will need a power supply so you may as well add some sort of power input if it is not already present. The ability to run the circuit on a battery is also a huge benefit since you can more easily more you experimental circuit to locations where it will be tested (a light sensor for instance).
Another aspect of breadboarding is modularization. This is a major theme in electronics and is the entire basis of using ICs. An IC is nothing more than a circuit which arises in practice so often that it is worth packaging in a small unit and treating as a black box with inputs and outputs that can interface with other parts of the circuit. So why not use this approach to breadboarding? One of the fundamental axioms of hacking is to never solve the same problem twice, so rather than rebuilding repeated sections of a circuit over and over in your experiments it is much smarter to build a reusable module!
In this tutorial I will show how I address many of these issues to make a regular breadboard much more useful for development and rapid prototyping. I will cover some techniques I have developed for hacking your board that have made my life much easier and hopefully they will do the same for you. Although I will show a few specific examples, these techniques can be used for any project that you are working with. Now, on to the good stuff!
Step 1: Adding a Breadboard Battery
First, let's add some mobility and flexibility to our breadboard. I'll be using a Elenco breadboard that I have been using for a while. This one is nice because it already includes a base plate and banana binding posts. If you start with a breadboard that doesn't have these then I suggest adding them. You can use a small piece of plywood or aluminum, drill a few holes and mount everything up. Put some rubber feet on the bottom to keep your board from sliding around you work surface.
In the picture you will see a couple of holes that are marked with black permanent marker. Breadboards inevitably wear out through use and end up with a couple of rows that may stop connecting well. MARK THE BAD ROWS!!! It is frustrating to try to debug a circuit just to eventually find out that one of you breadboard rows is not working. It is exponentially worse to let it happen again on the same board. Just use a permanent marker to indicate bad row so you don't end up pulling out your hair!
Now, get yourself a 9V battery clip. Align it in a convenient location on your board and use your marker to track a hole on the breadboard base where you will need to drill your holes. Pick a drill bit that just slips through the screw holes on the battery clip and use it to drill holes in your base plate at the marked locations. Next, tap the holes you drilled. Use the appropriate size screws to mount your battery clip to the board. Alternatively, if you don't have a tap you can just drill the hole a bit oversized and use nuts on the back side of the board with your screws.
Once you have your clip mounted on your base plate all you need to do is insert a 9V battery and use the appropriate wired terminal to connect it to your binding posts. Now the posts will be able to powered by your battery or by an external power supply using a banana cable
Step 2: Adding an On/Off Switch
Now that we have a battery installed we need to add a way to turn the power to our board on and off. We will accomplish this by building a small module which can plug directly into our power rails. This will include an indicator LED and a capacitor to regulate the voltage supplied to the board. It is preferable to connect/disconnect the positive terminal so keep the circuit at a low potential when turned off. The capacitor value is not critical but I would probably stick to a value 10µF or greater. If you want the LED to be more dim your can increase the resistor value but you have to have some resistance in series with you LED of it will burn out.
Lead wires connect the switch module to the binding posts. I have shown the module I built for my board which connects to the middle power rails. Along with I use some jumper wires at the opposite end of the board to bring power to the outside rails. You could integrate these jumpers into your module but since I sometimes like to use the outside rails to connect select components in series I have left this mod off of mine.
Headers are used to plug the module into the board. Soldering these onto your module is really the trickiest part of making this part. However, after some practice I have come up with a reliable way of doing it that keeps the long end of the header on the bottom and keeps the pins straight. In the next step I'll show you how I do it.
Step 3: Adding Headers to Your Modules for Connection to the Breadboard
Adding headers to your board can be a real pain. If you feed them though the top of the board then your pins will not be as long as they should be. If you try to place the header on the bottom of the board, the plastic connector will be in your way and prevent you from adding your solder. After a bit of toying with different approaches I came up with the following solution which I have been using for a while now with great success.
The trick is to use a breadboard. First take your perfboard and lay it on your breadboard with the copper pad side facing up. Use some jumper wires to pin the board in place. Next, cut your headers to the desired length. For most of the module I will shown in the following steps you will need a 2 pin and a 4 (or more) pin header. The switch module I showed in the last step used two 2 pin headers. It will depend on the module and hopefully this will make sense as you read on.
Place your headers in your board so that the longer part of the pin coming out of the plastic piece is inserted through the board and just sitting on the breadboard hole. This will make a gap between the perfboard and the plastic piece on the header. For the module in the following steps it is important of arrange the header pins as I have shown with two holes between the short (2 pin) and long (4+ pin header). In the end the 2 pin header will fit into the power rails to energize our module and the long header will be used to act as inputs and outputs for the module to the rows of the breadboard.
Now solder each pin to its respective copper pad. Once all of your pins are soldered into place you can remove your jumper wire that was holding the board in place. Eventually you will use a pair of pliers to pull off the plastic piece and leave only nice, straight pins on the underside of your module as I have shown. However, since you will often be doing more soldering in the vicinity of these pins as you build your module circuit, I recommend leaving the plastic spacer on until you entire module is finished. This will keep pins from becoming crooked if you need to melt the solder of a single pin as you make solder bridges.
The number of pins you use on the long header will depend on the number of ins and outs you need to the module. However, I recommend using at least 3 pins to make sure you have a nice, stable connection to your board. If you don't need all three that is fine. They will just be present to keep the module affixed to the breadboard.
Step 4: A Few Modules To Get You Started
There are several advantages to making modules. Firstly, they can be reused without having to waste time rebuilding these parts of your circuit each time you need them. Next, the type of module I have presented here are designed to hang off the edge of the board so that they do not eat up board space. Here are a couple of module I have made which show the general concept. A schematic and explanation for the LED light sensor and H-bridge modules can be found at http://www.instructables.com/id/Solar-Tracker-Project-Designing-and-Breadboardin/
LED Light Sensor Module
This is a simple sensor module that I use in my solar tracker project. It has three header pins that connect to rows in the breadboard but only one of them is used as a module output. Other parts of your circuit can be connected to this output using a jumper wire tied to the same row as the output pin. The other two pins on this part of the module are just there to keep the module in place and prevent twisting. The other two pins are connected to the power rail. In this case only the ground connection is used within the module.
This module is a huge space and time saver. Normally you would need to connect each output of the LM3915 IC to the bar graph LED and then make a ton of other connections to the positive power rail. By putting this all into a module, it can be rapidly added to any circuit and takes up very little room on the board. Here only one of the long header pins is used and it serves as the input. The 2 pin header provides connection to the positive and negative power rails to power the module.
This module is distinct from the other two just because I decided to try something different. In this case the board straddles the breadboard rows. Two sets of short headers connect the module to the power rails and two single pins connect the inputs of the module to rows on the board. Input can be provided to the H-Bridge using jumper wires fed directly through the labeled holes on the module and the output to a DC motor is sent through wires integrated into the module which had headers soldered to their opposite end. This entire module could be redesigned to work like the other two I have shown (and will be as soon as I bother to do so) and would probably be better for the effort. However, this was one of my earlier attempts at a modular design so I am showing it for contrast.
Step 5: A Few More Useful Breadboard Parts
In order to make the breadboard interface with external signals and actuators it is important that some additional components be made up. The first of these which I am showing is a 1/4" jack to allow the input of an audio signal to the board. I have simply soldered some lead wires onto the terminal of the input so that they can be attached to the board.
To make that addition of a motor a bit cleaner I made a DC motor unit as shown. I affixed header pins to each terminal of the motor as well as lead wires. The pin terminals can be used to plug the motor directly into the board. If the rows used for mounting the motor are not linked to an input signal, the lead wires can be used to connect the motor terminals to remote parts of the board where the signal is.
Step 6: Putting It All Together
As a demonstration of how to used make use of these breadboard hacks I have assemble a small demo circuit. This circuit reads in an audio signal through the 1/4" jack. One lead from the jack is connected to ground and the other is connected to the row where the VU meter input pin is connected. This will cause the VU meter to display the intensity of the signal.
In addition, one of the inputs of the H-Bridge is connected to the same row as the VU meter input to read the incoming audio signal. The other input the the H-Bridge is connected to ground. The outputs of the H-Bridge are connected to the terminals of the DC motor module. In this arrangement, the motor will run at a speed proportional to the level of the incoming audio signal. As you can see in the video, the motor will spin when a large audio signal is provided.
This type of circuit could be used for any number of cool audio/visual projects. However, the concepts established here can be extended to all kinds of applications and as you build more and more modules you will find tons of cool ways to link them together. Now, start hacking and let me know what you come up with!