Tutorial: DIY SMD soldering with a frying pan

In this tutorial, I will show you how to solder SMD components on a PCB using the reflow technique and a simple frying pan.
What you need:
  • A PCB and the SMD components to be mounted
  • Solder paste (I used this one from Sparkfun)
  • A stencil (optional, see below)
  • A putty knife (if you go with the stenciling technique)
  • A frying pan or skillet
  • A hob (no induction, that might fry your components)
The frying pan I used is a 2.5€ one I found at Ikea. Very cheap, but that’s exactly what we need. Don’t plan to do any cooking (other than PCBs of course) with the pan you choose for this task. Just make sure it has a flat surface, so the PCB is heated up homogeneously.
To apply the solder paste on the pads, you can use a stencil. It can be made of acrylic plastic (cheap) or metal (expensive, but lasts longer). I got mine on the following website: http://www.smtstencil.co.uk/
The guy who runs this website is very nice, and the price is not so expensive if you live in the EU (even better for UK residents). It took about a week to arrive, as I chose the cheapest shipping option. Using a stencil is better if you plan to do a few prototypes or even a production run. It can also be useful for a single board if you have a lot of SMD components (as the paste might dry if the application takes too long).
You can find a very good video tutorial (which I followed myself for this board) on how to apply the solder paste to the board with a stencil at Sparkfun:

If you don’t want to use a stencil, you can still use a sharp object (like a needle) to apply some paste on each pad. Put a little drop of paste on the pad (enough to cover 2/3 of the surface) but don’t spread it or flatten it, let the component do the job).
Whatever method you choose, you will want to keep your hands clean after applying the paste, especially if it contains lead or other toxic elements. Same for your stencil, wash it right after using it, so the paste does not dry in the holes.
Laying out the components:
Once the paste has been properly applied, begin with the smaller components (resistors, capacitors, transitors and small ICs) and move on to the big ones last.
It’s okay if they are not totally aligned with the pad, when the paste melts down, it will suck the components into place. This is actually quite fun to watch!
Once everything is ready, put the pan on the hob, the PCB on the pan, and turn the heat all the way up. (oh, and keep the room ventilated, you probably don’t want to breathe lead fumes, do you?)
The paste is going to start melting at around 180-190°C, which can happen quite fast depending on the type of hob you use. As you can see, mine is a diecast iron hob, so it took about 8 minutes to reach that point.
The melt will start in the center of the board, so even for small boards, what you want to do is to move it around to let the edges of the board melt as well without overheating/frying the center.
And that’s it! When all the pads are shiny, remove the pan from the heat, let it cool slowly, and inspect your solder connections.
Note: this tutorial applies only for soldering SMD components on one side of the board. Usually it’s better to design your board so that there are both SMD and thru hole components on the same side. Use the technique described here to solder the SMD first, then the thru hole. These can be on the other side of the board, as long as you have enough space for soldering their leads among the SMD components.
The full gallery of the Mobius Modular Motherboard (the board used for this tutorial) is available on Flickr.

Motherboard PCBs

For those of you who don’t follow me on twitter (the link is in the sidebar), here are the updates of the blog since the last post in May:

  • The Mobius Modular’s Motherboard has been reworked and produced with SeeedStudio’s PCB service (which I recommend to anyone wanting to make industrial-like prototypes in low batches, it can cost as less as 1$ the board for 10 boards, definitely something to check out). Also, it costed half the price I paid for the first version of the motherboard (though it was bigger) and I got 12 units against one, for the price of ten! And did I mention it took only half the time to manufacture it (2 weeks instead of a month).. Now I just hope the few bucks I invested in the 100% electrical testing are worth it..

  • The pictures of the Motherboard are available on Flickr.
  • I just received a package from SparkFun containing some tools to get to the hard work of assembling the SMD components on the Motherboard. I’ll write a review after a quick test to bring the (mad) DIY spirit back to the blog (have you ever tried to reflow-solder a PCB in a frying pan?)
Stay tuned for more crazy stuff :)

MIDI Library – Callbacks

I published the release 3.1 of the Arduino MIDI Library, that adds the callback feature.

This allows you to handle input messages more easily and more efficiently. Instead of checking which message was read, connect a function to a type that will be called back (hence the name) when a message of this type is received. The data is passed in the function’s parameters so you no longer need to call MIDI.getType, MIDI.getData1 etc..
Also, version 3.1 corrects a few bugs on Thru, Running Status and the interleaving of RealTime messages. If you had troubles with your MIDI-equipped sound card, give a try to this update, the trouble might be caused by Active Sensing messages messing around with other types.

Native MIDI USB Controllers with Arduino

I was recently contacted by Paul from the Teensy project to port the Arduino MIDI Library to his board, to be able to send and receive MIDI messages over the USB port and make it so that the board would be recognised as a MIDI controller in any DAW (or software handling MIDI).

More recently, I also noticed that the Arduino Uno has a dedicated USB chip (no longer the good old FT232RL) that can be programmed to act as any USB device (eg: MIDI).
These boards usually have a serial port in addition to the USB communications, which allows to kludge MIDI plugs and to get the perfect MIDI controller, just by adding sensors and programming the behaviour.
This is the development line for the next release of the library, to be able to simply create MIDI controllers with just one board, one USB connection, and that’s all.