I call it "Toast-R-Reflow."
Reflow soldering requires an oven that is able to very closely follow a very specific time-temperature profile. Most good toaster ovens have enough power to reach the required temperatures (225 degrees for traditional tin-lead solder paste), but the controls that come with a consumer toaster oven aren't nearly nimble or accurate enough for the job. What's needed is a PID controller. The controller needs to be able to detect the current temperature and will output a numeric value that ranges from 0 to an upper bound (we'll pick 1000), with low numbers being less power and higher numbers being more power.
The temperature reading system needs to have a range beyond the maximum temperature of an oven cycle. The best choice for that is a thermocouple, which requires a thermocouple amplifier and to be read by a microcontroller, an analog-to-digital converter.
The output number from the PID needs to turn into a proportional power level for the heating elements of the oven. The easiest way to do this is the same way microwave ovens work - by cycling full power on and off with a duty cycle proportional to the power level. That is, for 75% power, you turn the elements on for 750 msec and then off for 250 msec, and repeat.
The ATTiny85 chip makes a perfect controller for this project. It's an 8 pin DIP package. Two pins are power and ground, one is RESET, and the last 5 are available for us. Two of the pins are part of the USI, which can be configured to be an IIC bus. We use that to talk to an OpenEVSE RGB LCD backpack or an AdaFruit LCD shield. Two of the remaining pins are control outputs for two heating element control circuits, and the last one is an analog input pin for the thermocouple amplifier.
The digital outputs need to be turned into on/off controls for the heating elements. The first instinct would be to use a relay, but the heating elements of a toaster oven are several hundred watts, and they're sure to arc as they're switched on and off. Beyond that, there's the noise.
A lot of Internet reflow oven conversions have used solid state relays. Those overcome the objections to a mechanical relay, but most SSRs are expensive. An opto-isolated triac circuit is easy to make. And since most ovens have an even number of heating elements, it's easy to make a power control board that has two triacs, dividing the power handling requirements in half for each.
The power board can be built into the oven and the optoisolator inputs can be connected to a cable that can safely run outside to a microcontroller board kept external.
Step 1: Warnings
1. It involves disassembling a toaster oven. Toaster ovens are powered by household AC current, which can easily kill you if you make are careless. It can also easily start a fire not even counting the fact that we're dealing with heating elements here. Which leads to…
2. It involves modifying the control circuitry of the oven, which includes bypassing whatever over-temperature safety systems were built into it by its manufacturer. This is yet another way the entire project could burst into flames if you're not cautious.
3. Reflow soldering, by its nature, uses some fairly nasty chemicals, which you will heat until some of them vaporize. Always use the oven in a well ventilated space, and avoid contact with any fumes or vapors that may escape the oven during the process. If you're using lead-based solder, then be aware that lead is an extremely nasty heavy metal if it gets into you in even small quantities. If you're in California, then proposition 65 no doubt applies (as it generally does to every facet of modern life, unfortunately). If the oven smokes or catches fire during use, cut off the power, if safe to do so, and get away from it.
4. Once used for reflow soldering, the oven should never, ever be used in any facet of food preparation. You should permanently label the oven lest someone unaware attempt to restore it to its original purpose.
We can't advise that you follow in our footsteps. Quite frankly, we're shocked that we did it ourselves.
Step 2: Get All Necessary Parts
1. A toaster oven
2. A Toast-R-Reflow power board
3. A Toast-R-Reflow controller board
4. An OpenEVSE RGB LCD display or an AdaFruit RGB LCD shield
5. A K type thermocouple
6. A 7-12 VDC "wall wart" with a 2.1mm barrel connector, center positive
Step 3: Selecting an Oven
I wound up selecting - more or less at random - a Hamilton Beach 31138. It turns out to have been a fairly good choice. It can heat up to 450 degrees Fahrenheit in about 6:30, which is good enough. If you want your oven to heat faster, you have a few options... You can stuff the space between the outer walls of the oven and inner walls with fiberglass insulation (make sure to use unfaced insulation. You don't want to introduce a fire hazard, and fiberglass can stand up to 250 degree celsius temperatures). You can also wrap a brick in aluminum foil and put that inside.
Step 4: Take Your Oven Apart
Examine the wiring. Start at the AC plug. In this case, the hot line is orange, and the neutral splits into two blue wires. One of the blue wires goes to the far side of the oven, where it connects to a common bar on each element. The other neutral wire goes to a lamp on the front panel that we will not use.
The hot line goes to a QD plug on the bottom front panel control.
Next, look at the two elements. Each has a line (one blue, one white) leading to a QD connector on the top control.
Unplug each of those. The rest of the wiring doesn't matter. I just left it to rot.
On this oven, the wires of interest have QD connectors on them. The two elements use .25" QD female connectors, but the hot line uses a smaller size. I wound up cutting it off and crimping on a replacement .25" female QD.
Step 5: Install the Power Board
1. You need to keep the heat sinks as far away from the heat of the oven as possible. The design of the power board calls for a maximum ambient temperature of 50 degrees Celsius.
2. You need to insure that there's no way you could accidentally insert something into a ventilation slot, or some other opening, that might allow you to touch an energized point on the power board.
Surprisingly enough, tests with a kitchen thermometer in the interior space of the oven behind the controls show a temperature during operation of just a touch more than 100 degrees F - quite cool by comparison. It's probably because that area of the oven is liberally perforated with ventilation slots. That makes point 2 somewhat difficult. It turns out, however, that a strip of metal between two ventilated sections was just the right size for mounting the board.
During initial testing, I just ran the three control lines out a vent slot, but when I made the final modifications I drilled a proper dedicated hold and used a strain relief.
Step 6: Hook Up the Controller
It also has a 3 point screw terminal for the oven optoisolator inputs. It doesn't really matter which output is 1 and which is 2, but it does matter that you get the ground/cathode pin connected correctly on both ends.
The controller also has a four wire SIP header for the i2c LCD, and a barrel connector for power.
Power the controller up and press the SELECT button to start a reflow cycle.
If the temperature shows 511.5 degrees Celsius, then that means that your thermocouple is not connected properly (an open circuit results in the amplifier pegging the output high).
If you want to build your own controller, don't forget to put a current limiting resistor in series with the oven control outputs. You're effectively lighting an LED. The optoisolator specifications are a forward voltage drop of 1.2 volts and a forward current of 30 mA. For 5 volt Arduino digital pins, that means a series resistor of 150 ohms. Do not exceed 50 mA or you'll damage the optoisolators. If you're using an ATmel controller (or an Arduino), then don't exceed 40 mA or you may damage the controller.
Step 7: Firmware Details
This means adding ATTiny support to your Arduino IDE and fetching the libraries necessary to build the sketch. You'll also need an AVR ISP to connect to the ISP port on the controller to upload the sketch.
The libraries you'll need are
You'll also need the TRR sketch itself.
For ATTiny support, the center of the universe seems to be this page. I used the MIT "high low tech" code, but the HLT server seems to be up and down a lot. Fortunately, the actual files you need are on GitHub.
My favorite ISP is the Pocket AVR programmer from SparkFun, but any one that's compatible with AVRdude will work just fine.
You should unplug the oven when uploading firmware. One of the element control pins is shared with one of the programming pins. This will cause one of the elements to flicker on and off erratically during programming if the oven is powered.