Instructables

Arduino ProtoShield from "Household" Items (<5$)

Featured
I love my Arduino. It got me into, and hooked on, microcontroller programming. I
also like the expandability that shields provide. My Arduino can be a GPS Locator
one minute, and be connected to the web the next. There's also a kit that lets you make your own shields.

That last option always bothered me. If you're making a bunch of different shields, the
cost of ProtoShields starts to add up. Wouldn't it make more sense to just take a standard
prototype board from Radio Shack, get some connectors and slap THAT on my Arduino? Sadly, no.
One of the flaws with the Arduino's design is that one of the female headers doesn't align with
the standard 0.1" spacing followed by, well, most electronics.

Mulling over this problem led me to my favorite type of solution: cheap & simple. By using wire instead of male headers, the misalignment can be handled with a simple bend.

Enjoy.

UPDATE: I'm embarrassed. Not one day after I posted this Instructable, I thought of a much better method, which I have documented here. This Instructable is still useful if you need a shield TODAY and don't have any male headers. If you have some, however, or if you can afford to wait, the new method is faster, easier, and more robust.

Step 1: Required Materials

Picture of Required Materials
Arduino
Radio Shack PC board (Available at every Radio Shack location I've ever visited)
Solid Wire (I used 20ga)
Sand paper
Wire strippers
Wire cutters
Flat toothpicks
Tape
Epoxy
Solder (and soldering iron)

Step 2: Insert Wires

Picture of Insert Wires
IMG_4559.JPG
  • Remove some insulation. Leave yourself with about 1 inch of exposed wire.
  • Sand off any burrs or rough spots from the end. This will make the final shield easier to insert and remove.
  • Cut off ~3/4 inch (2cm) of wire and insert the sanded end into one of the female pins on the Arduino.
  • Repeat (27 times) until all holes have a bare, sanded wire in them.

Step 3: Bend

To compensate for that pesky misalignment, give the wires on that header a slight bend.
 
Remove these adsRemove these ads by Signing Up
Why don't the wires bend when you insert the shield?
br3ttb (author)  4lifenerdfighter2 years ago
I used solid wire, which is more rigid than twisted strand varieties
ianrab2 years ago
Just a heads-up: JB Weld contains steel. it is slightly magnetic and slightly conductive, so in my opinion, I would use a different type of epoxy.

Great write-up, though. Clean, simple, and to the point. I'll have to try this sometime.
waterlubber2 years ago
or you can use a bread board and wires and shove the PS on that.
alexhb3 years ago
hey, I've done this before, very neat idea. :D J. B. Weld is sooooo addicting :P
Brilliant idea! Gonna try it on my homebrew Arduino, and with the cheap stripboards at my home. Thanks for sharing! :)
gibiault3 years ago
The offset header does have a purpose and reason.

To prevent plugging in of a shield "backwards" ..

At least that's the most logical reason I could think of.


br3ttb (author)  gibiault3 years ago
a few things have happened since I first published this instructable. first. I found a definitive explanation for the offset. (it was a mistake.  no biggie.)

second. I've started making, and sparkfun has started selling, these. they're not as fun, but they're way faster than using the method described in this instructable.
that's not a breadboard, that's a circuit board breadboards are plastic and have holes in them and you can change them around... solderless too
(removed by author or community request)
br3ttb (author)  jcgravesjr5 years ago
haha this is why it's good that Instructables have pictures. it is what it is. Whatever you happen to call it, it's $3.50 at Radio Shack. (they call it a "PC board" by the way)
(removed by author or community request)
A PCB is the final board with the printed circuit. You don't run wires with a PCB, you just drop in the correct components in their designated spot and solder them up. Prototyping is what you do before you figure out how your PCB has to be layed out to make your ciruit. You use breadboards (or proto-boards, they are the same thing) for this purpose, and there are solderless and non-solderless varieties. People get confused, I think, because many hobbyists never move beyond the breadboard stage.
pc stands for "printed circuit" and breadboard came from when people used to put things on bread boards (the ones you put bread on) to make a circuit. Today it's used for the ones you buy at the store.
br3ttb (author)  jcgravesjr5 years ago
yeah. barebones is a great option for prototyping. the problem is that if you want it to talk with arduino shields you're faced with the same offset problem in reverse. that's why I've gotten more excited about the header I made in this instructable. Initially it was a way to make a cheap shield, but it dawned on me that it could lead to an elimination of the problem all together.

I'm working on a way to churn those things out. if they become cheaply available, a shield maker could use standard spacing, and just ship an offset header with the shield, making it usable on both standard and offset 'duinos.

also, someone with tons of old shields would be able to use them with a standard spaced 'duino, be it the barebones or seeduino.

if widely used, eventually there would be no reason for the arduino to keep the offset spacing, and it could be changed to the standard spacing.
It's been answered somewhat already, but there are a dozen types of breadboards. One type is the solderless breadboard, which consists of a plastic case and metal clips - that's what you're talking about, and they are great for very fast prototyping. Another type is a through-hole breadboards (these were around long before solderless breadboards). These are now often called proto-boards, as they are a little more permanent than solderless breadboards (though they are still often re-used). These are for slightly longer-term prototyping (and many hobbyists never move beyond them). Once you move to a PCB, though, there is no reason not to de-solder the breadboard and use it again. The original breadboard was literally a wooden board with nails driven into it, and the wires for the circuit were wrapped around the nails. This type of circuit is still in use (obviously they don't use wooden boards any more) for telephone communications and many industrial applications because with specialized wire-wrapping tools the connections are far more robust than soldered connections. None of these are printed circuit boards, even though the through-hole boards do have copper on plastic like PCB's. Breadboards do not have any circuits. They have options - if you want to create a circuit you can connect a wire from this hole to that hole, or if you connect a component in one set of holes the holes directly next to it will allow you to connect another component to that particular pin, etc. A PCB, on the other hand, has a very specific circuit pattern printed on to it, and the correct components must be connected to their designated spot to make the circuit work. They don't have wires either, that's the whole point of the circuit being printed on the board. PCB's don't have options, and they are not used for prototyping. They are the final product that you conceptualized with a breadboard.
Many people refer to these types of boards as breadboards. The type you're referring to are solderless breadboards.
br3ttb (author)  rippinblaise5 years ago
good catch. thanks. thought I had changed all of those.
andrew1015 years ago
great idea with the epoxy. i just bought some for another project so that will work perfect. but how do you protect the copper wire from being corroded? it will after a month or two become corroded and add extra resistance or broken curcuits, it can also cote the inside of your female headers if your not careful. how can you prevent it?
br3ttb (author)  andrew1015 years ago
I hadn't thought of corrosion. That's a great point. Perhaps you could tin the wires with a thin layer of solder to protect them.

Also, you may be interested in an easier (though less fun) solution. In the time since this 'ible was posted, I've been able to start mass-producing "offset headers." Currently they're available from Adafruit as part of the DIY shield kit, or from Sparkfun on their own.
Loctite makes a glue we used to use in industry for bonding wires etc. I believe it is the Loctite 41404. Also, if you can't wait for it to fully cure you can use the "Tak-Pak" accelerator which pretty much makes it dry as soon as you spray it on the glue. BTW, anything over 1 oz should be bonded to the board in some manner. This includes big caps, coils, etc. (At least that is what the IPC says). Obviously, this does not matter as much for prototypes but for anything you want to last without having to re-solder broken pads...especially if the item is in a high vibration environment.
UziMonkey5 years ago
I just made a board with this method, and I have to say that it works great! I used some metal spacers as feet for the board while putting the wires in. The camera's battery died, but I'll post pics here later!
UziMonkey5 years ago
This is a great solution to what's obviously an egregious oversight with the Arduino. Each new Arduino model, I keep thinking they're going to fix this, but it never happens. For something they intend to be easy for hobbyists, this is quite a stumbling block if you can't make your own PCBs. The professionally made PCBs are expensive too, especially if you just need one made. Another solution to this is to get a Seeduino. It's an Arduino clone that fixes this, and is apparently also compatible with the Arduino. There are two rows of headers, one with the irregular spacing and one with the regular spacing. I'm not sure if you can have both sets of headers on at once though. The regular spaced headers are also 1 row closer than the normal headers, so you lose a little space when you use the regularly spaced headers. Oh, and it has two extra pins, since they use a surface mount ATMega with more pins.
Koil_15 years ago
Sweet idea! Personally I've been making my own boards from blanks. I usually either use my Dremel or a chemical etch solution with my printer if it has to be more precise. I have to admit printing the pattern on the board and then soaking it in the etchant solution is a smelly messy job. The only real benefit is the quality of the product you get out of it. What you've done here is WAY more inexpensive and a whole lot easier. You don't want to know how much the ink cartrages cost. The etching solution isn't cheap either. Then there's the clean-up.... Need I say more? Massive respect and many kudos to you my friend.
why not use a standard male header ? They're real cheap cost about 25 cents each...
br3ttb (author)  lordofthedonuts5 years ago
a few reasons:
  • this board only has metal on the bottom, so soldering a standard header would be tough at best. I suppose you could flip the board over, but...
  • there's still that offset female header to deal with. a standard male header won't work because it's rigid and straight, and the holes don't line up.
  • I like the idea of all the raw materials being readily available. some huge percentage of Americans (90%+ I think) live within 5 miles of a Radio Shack. male headers can be harder to come by. (Note: I realize that not only Americans are interested in this instructable, I just live here, and don't have electronic store distribution information from other countries ;) )
you do make a good point though. in one of my earlier attempts I used a flipped board, male connectors where they'd work, and wire for the 8 pins where they wouldn't. that definitely sped things up, but I figured I was already using the wire, why not go all the way.

Very nice! I did a similar thing when making a shield or my Arduino. Those offset headers are a real pain! I was looking into buying a commercial protoshield but I think I might just make my own now.
zachninme5 years ago
Cool! Nice way to beat their offset header!

Do you really need the epoxy, though? It *does* make it look really nice, but I think just solder would work well enough...
br3ttb (author)  zachninme5 years ago
you're right that in theory all you should need is solder. this was a huge pain in practice however. when you go to solder something to the adjacent pins your support solder melts, causing the wire to fall.

as far as side benefits:
  • the top epoxy keeps everything aligned before you get solder in place.
  • the epoxy on the bottom shortens the length of the exposed wire, minimizing the chance of bending during storage or insertion.
  • as you said, it makes it look nice