Fresh PCBs from the Toaster Oven!


Hi all! This page shows how I completed a recent hobby project--a small video I/O PCB board based on Spartan-2. The board was hot-air reflowed at home using a small toaster oven. The pictures on this page illustrate the process. Apart from the FPGA the board also has a USB controller chip, some SDRAM, video decoder, video encoder, and a PLL on the back side of the board. My goal was to build something simple that allows me to do experiments with digital video processing and at the same time gain practical experience with FPGAs, SDRAM, USB, and--last but not least--making a PCB board with fine-pitch components at home.

First, The Final Result

OK, a picture is worth 210 words... Here's the final result--the assembled PCB after reflowing it in a small toaster oven and manually soldering all through-hole componets and the components on tha bottom side. You can click this image (and all others on this page) for a larger version.

Looks pretty good for a bake-it-yourself project, doesn't it? The big chip in the middle is the Xilinx Spartan-2 FPGA. The 1Mx16 SDRAM is on it's right side. Under the FPGA you can see the FTDI FT2232C USB controller with its configuration EEPROM and quartz crystal. The video decoder (TI TVP5150AM1) is to the left of the FPGA and below it are its quartz crystal and 1.8V voltage regulator. The RCA and S-Video connectors provide the input video signal. The video encoder (ADI ADV7173) did not arrive in time--you can see where it should be, just above the video decoder--and I will have to solder in manually. It will not look pretty... oh, well. The JTAG connector is in the top- left corner and next to it are the 3.3V and 2.5V voltage regulators. The DC power connector is in the top-right corner.

BTW the board has four layers and I designed it using the non-profit version of Cadsoft Eagle PCB. There is no solder mask as it raises the PCB manufacturing cost significantly above the bare board cost. Most of the ICs are in fine-pitch TQFP and TSOP packages, which makes it hard to solder them manually.

Pictures? What Pictures?

Well, I took a number of pictures because I wanted to document the process. I even made a small video clip through the glass of the oven but it didn't come through very well. The oven is a simple Black&Decker that I got brand new for $18 at the local Target store (note: lead is poisonous; do not use the oven for cooking food after reflowing PCBs inside). Anyway, here are the pictures.

This picture shows some of the tools that I used arranged around the bare PCB. The top syringe contains liquid rosin flux. The solder paste is in the bottom one. I got no-clean paste and flux because didn't want to deal with yet another manufacturing step: cleaning the board after reflow. I got the solder paste from Wassco. It came in a larger syringe, which I keep in the fridge as the solder paste dries out if left at room temperature. I also used a 212°C (413°F) Tempilstik (not pictured): it's a temperature indicator that melts at the specified temperature and you know your cookies are done... sort of. The vacuum pickup was handy for larger chips but it was easier to use the tweezers for the smaller components, e.g., 0805 resistors and capacitors.
Here you see how I applied the solder paste to the pads. A nice desciption of this process is available here. I was worried that when the solder paste is applied like that the layer is too thick and when the IC is placed on the paste the excess paste will go between the pins and make solder bridges. So I decided to flatten out the solder paste using a fine brush that I got from an art supply store; you can't say that PCB manufacturing at home isn't an art :) BTW Sunstone Printed Circuit Boards (previously called PCB Express) has an option to make you a stencil for applying the solder paste only to the pads. I didn't use that option although I ordered my boards there because I thought that I'll smear the nice solder paste islands anyway when I place the components.
Now the solder paste is flat and I'm ready to place the ICs on the board... or am I? Again thinking about solder bridges between the fine-pitch pins I decided to slightly wet the pins with rosin flux because I thought it may help get rid of the solder bridges. Maybe that wasn't such a good idea; in any case, there were a lot of solder bridges as you can see later.
All the top-side SMD components are on the board. We are ready to bake it. It took some careful pushing from this side and that side of the ICs to get them properly aligned on the pads. Slight misalignment is OK since the surface tension of the molten solder attracts the pins to the pads and the chips realign themselves on the pads during reflow. I was very careful place the ICs properly as it is possible to rotate the packages to 90 or 180 degrees.
The board after the reflow in the toaster oven. Note that there are many solder bridges between the pins. I was hoping for fewer than that. However, it turned out to be very easy to remove them using solder wick. The dark red drop in the lower-right corner is the molten Tempilsilk indicator. You are supposed to wait till it begins to melt and turn off the heat. I was able to see the solder paste melting and solder joints forming through the glass of the oven, so the temperature indicator was just a reassurance, not a necessity.
This is the board after removing the solder bridges. I used a magnifying glass to carefully inspect the pins. The bottom side of the board has mostly resistors and capacitors, which I soldered manually. The problem was that the small 0805 components move easily when the tip of the soldering iron is removed and end up in weird orientations. That's how I managed to create a short between a power plane and the ground plane. I was lucky that I tested the board for this kind of short before I plugged the power in. Since the bottom side is otherwise not very interesting, I'm not going to show pictures here.
And finally, after soldering the through-hole components, we are done! I gradually started testing the board: first a smoke test (if there's no smoke when you plug the power in - good), then the USB (Windows detected a new device and installed the driver), the JTAG (Xilinx IMPACT recognized the device on the JTAG chain), etc. I'm still working on the board; one of the last things I did was to write an I2C controller for the FPGA. It configures the video decoder to output a "video lock" signal on one of its pins. So when I connect a DVD player to the input and turn it on an LED lights on. I played about two minutes with that--press the power button on the DVD remote and the LED on the board turns on. Press it again--the LED turns off. Okay, it was 1:00 AM...

FPGA Booting Over USB

For the first experiments with the board I booted the FPGA using the Xilinx Parallel Cable IV JTAG pod. However, I had designed the board with the ability to boot from the USB chip in slave serial mode and wanted to try that. The FT2232C USB controller has a nice synchronous serial port that is easy to use for FPGA configuration.

So I wrote a simple Windows application to talk to the USB drivers and upload a configuration bitstream to the FPGA over the USB connection. This worked out quite well and now I don't need to plug-in the JTAG cable to the board. The programmer can stay open and when I build a bitstream in WebPack I simply hit the Program button: it loads the bitstream and sends it to the FPGA in less than a second. I used an evaluation version of Borland C++ Builder and am considering to buy the personal edition. The image on the left is a screenshot of the current FPGA programmer user interface.

In the future I will write little specialized applications that download and upload data from/to the SDRAM and control the video processing inside the FPGA. The documentation of the FT2232C chip is not very good but once you understand what's going on it is easy to write the top-level software.

Free Download

The Eagle schematic and PCB files as well as the USB downloader application are available here: They are free to use for any purpose. No warranties. Enjoy :)
Well... that's all for now. Back to the home page.
Copyright (c) 2005 Georgi Beloev.