Embarassingly Easy Arduino ProtoShield




Introduction: Embarassingly Easy Arduino ProtoShield

I posted a ProtoShield Instructable yesterday. It had the benefit of accounting for the offset Arduino header, but people pointed out that it was a bit messy (I used epoxy where standard male headers would have been fine.)

The reason I'm embarrassed is that in thinking of if I should redo the Instructable, I thought of an entirely better way to tackle the problem. I'm going to leave that instuctable there, because it's still useful if you need to make a shield TODAY and you don't have male headers.

If, however, you can afford to wait a week to get some male headers from the internet, this is by far the better solution. It's faster to make and more robust (and it still handles the offset header)

UPDATE: The headers in the picture below are soldered onto what most would consider the wrong side of the board. I've added a step (step 6) that shows how you could get these headers on the correct side.

Step 1: Required Materials

2 x 8pin male header
2 x 6pin male header
soldering iron (& solder)

Step 2: Modify Male Header : Long Side

Three of the headers we're going to leave alone, but one of the male headers will need to be modified to handle the offset female header on the Arduino. Let's get started:

Bend all the wires on the long side to about a 20 degree angle. I made a little template to get the angle right.

Step 3: Modify Male Header : Short Side

Next, bend the wires on the short side so they're parallel with the wires from the long side.

Step 4: Modify Male Header : Pivot

So the wires now have a shift in them, but they're at a cock-eyed angle. To fix this, give them a push with a soldering iron.

Touch a wire with the iron, and in a few seconds the plastic around it will melt. At this point you can pivot the wire so it's perpendicular to the plastic again. It may be a little off after the first push, but that's ok. You can reheat the wire and move it as many times as needed until it's in the right place.

Step 5: Make the Shield

Once you have the modified header, attaching a standard protoboard to the Arduino is really, really easy. Easy enough to put in one step.

  • Insert the male headers into the arduino
  • Align the protoboard on the male pins
  • Solder the pins in place

Step 6: Make the Shield (with the Headers on the Correct Side)

Most people will want to put their headers on the copper side of the board. to do this:
  • cover the target holes with solder
  • use your soldering iron to clear the holes
  • apply some solder to the header pins (tin them)
  • put the header in place
  • heat the pad next to the pins and the solder will melt and form a connection

Note: it's best to do the final step with the arduino attached so you can be sure the pins are all aligned

Step 7: Enjoy

Here now, is a Shield that can really compete with the custom ProtoShield, at a fraction of the cost.



    • Water Contest

      Water Contest
    • Metalworking Contest

      Metalworking Contest
    • Creative Misuse Contest

      Creative Misuse Contest

    21 Discussions


    2 years ago

    Yes - the original offset mistake/deliberate error with the 1 - 13 pin row has been an enduring PITA, but is now much too late and with too many shields by third parties to correct with Uno at least. I don't know what the reason was if it was intentional.

    Ref soldering male headers on the track side of stripboard, the plastic header can leave the pins unreliably short, so I just push the short side of the pin flush to the plastic, then there is plenty of pin too solder and mate.

    I want to get away from 0.1" boards, so I'm looking to do an XY plotting and drilling bed and go back to the etch resist ink and drill method I used years ago - very successful and ideal for one or two boards

    Very nice at keeping it simple.

    I recommend using the longer pins if you can get your hands on them!


    Nice one - such an ingenious way to get around the offset!

    Dude, your hand formed a triforce shadow.

    Also, very clever method of offsetting the pins!

    1 reply

    Yet another ingenious trick! I've been trying to figure out a good way to solder on the wrong side of the board for a week! Thanks!

    Thanks. I usually use the through headers by pushing the pins all the way flush with the plastic strap, put them through the stripboard and solder them at the copper side :-) That is not gonna be so eay with these :-) , yet , it is a good solution.

    All that wasted energy by so many coz Arduino misplaced a header :-)

    so i presume this pin makes an angle to the right and is not 'coming towards me'

    1 reply

    correct. we're looking to make a change along the axis containing all the pins

    This is nice.. the other workaround is Sparkfun's useful (but expensive) "offset headers".

    It is a damn shame that the Arduino designers are filtering out user complaints about the shield offset bug. They are dividing the community into two camps on shields... broken offsets vs. breadboard.

    I was paying $5 for a barebones Arduino shield PCB (off ebay). That's crazy, because it forces you to get your first shield prototype -perfect-. Basic breadboards are a few cents each on ebay.

    Shields are awesome, but I will never again buy an official Arduino design with the broken offsets.... the breadboard compatible 'duinos are smarter and cheaper. If you don't want to assemble one, they can be bought completely built.

    This is a bit confusing. The pictures in Step 6 and Step 7 are different as in the pins are on the copper side in step 6 and they are on the non copper side in step 7.
    And how are we supposed to put in the female headers to mimic the ones on the arduino?

    8 replies

    the headers are on the same side in both pictures. in step6 you're seeing the stubs protruding through to the copper side.

    One of the downsides of the way I did this is that when the shield is inserted, the copper side is facing outwards, away from the arduino. I did it that way because it's easier to solder the headers in place, but depending on what else you're putting on this shield it might create more problems.

    I don't get it..
    Take a close look at step 6 pic4 and step 7 picture. The black things on the headers is on the copper side in step 6 but they are on the non-copper side in step 7.

    I think I understand it now. Step 6 is an alternate way of soldering the headers with the copper side facing arduino.

    Step 7 shows how the board would look like as done in Step 5 with the copper side facing away from arduino.

    So now my question is, how do we solder the female headers with the copper side facing away from the arduino?

    yeah that's it. sorry it's been awhile since I wrote this one. forgot that picture was there.

    I'm not sure what you mean by female headers. the headers that are soldered in this instructable are male. soldering them on the copper side is much trickier. I actually don't remember how I did it. I can think of 3 ways now though:
    1: you could leave a little space between the plastic part of the header and the copper. enough to get the iron in.
    2: you could cut away some of the plastic on one side to get access.
    3: you could pre-tin the base of each pin, then insert and heat from the non-copper side.

    By female headers I mean the headers on the arduino. The two rows on the arduino which give access to its pins.
    Like this : http://www.sparkfun.com/products/7914

    ah. so if I understand you, you want to add female headers to this shield in addition to what I've already done. to do that you would want to make the copper side of the shield face the arduino using one of the methods I described above.

    at that point though it might be easier just to buy the adafruit DIY shield: http://www.adafruit.com/products/187

    it uses female headers with long pins so you get a male/female combo. the key to that kit is the offset header, which you can buy individually from sparkfun:

    full disclosure, I'm the guy who makes those offset headers for them.

    I would buy those but they are just way too expensive.

    A perf board and strip of 40 female + male headers would cost me max $2 from a local shop. It might actually cost less than that.

    Sad part is, I can't find any female headers with long pins locally.

    Would you mind sharing how you make those headers?

    I machined a jig that lets me make large quantities. when I was doing the prototypes I was able to use needle-nose pliers to get the bends I needed. not as uniform, but you should be able to get something that works for you. Also I'd suggest sliding the header though the perf board first for some stability.

    Why did I not see this before!

    I literally spent the past 3 hours trying to acheive this. The offset headers gave me a headache, eventually I gave up halfway when pins started falling out, everything got misaligned and a ton of solder bridges formed.

    I can't understand for the life of me why the arduino is made this way. This problem with the female headers is there in the decimila, deumilanove and also the uno. Why can't they have normal 0.1" spacing, it would make everyone's life SO much easier.