In the first part of the Reflow Oven Build series of posts I explained how I transformed a regular toaster oven into a reflow oven. The second part was dedicated for the Reflow Oven Controller (ROC). And now the third and final part will focus on the Reflow Oven Manager (ROM). The ROM’s job is to talk to the controller, upload new temperature profiles, receive profile data from the controller, and display current status of the oven and a running profile to the user.
In short it looks like this…
Reflow Oven Manager (ROM) user interface
I decided to use Python to write the ROM program simply because I like programming in Python and making a graphical user interface with Python is easy.
Creating a new reflow profile
A reflow profile is list of target temperature values to be achieved by a reflow oven at certain times after starting a profile. Recommended reflow profiles can be found in the device datasheet for certain devices. A typical reflow profile can be broken down into five stages as shown in the diagram below:
Stages of a typical lead-free reflow profile
A custom reflow profile must be created for each board by consulting the device datasheets of the components to ensure the temperature in the oven does not exceed the specifications. If none of the devices have recommended reflow profiles then standard reflow profiles must be followed. The reflow profile will also depend on the type of solder paste used. Typically Lead-free solder paste require a higher temperature than lead solder.
Creating a reflow profile with the ROM is simple, as it asks the user for all the necessary temperature and time values to create a profile (see figure below). Once a profile is created it can be viewed and edited. The program automatically saves each new profile that is created so it is available the next time the program is used.
Creating a reflow profile using the reflow oven manager is as easy as entering a few temperature and time values
The ROC (Arduino) does not store any reflow profiles. So each time the controller is power cycled a profile must be uploaded using the ROM. Once a profile is successfully uploaded to the controller, it can be started; The status of the active profile will be displayed on the GUI. Profile data sent by the controller will be saved in a file so it can be viewed later on.
A complete program listing of the ROM is available here.
Now the reflow oven build is complete. All that is left to do is to test it by running a profile. Figure below shows the result of the first test run with the oven.
First test of the reflow oven. The actual oven temperature lags the target temperature
The results in the plot above shows the oven temperature is not able to follow the target temperature very accurately, specially at higher temperatures. The oven takes too long to heat up and as a result the actual temperature lags the target temperature.
The reason why the oven takes too long to heat up is because it doesn’t do a good job of retaining the heat. This was built after all from a $20 toaster oven from Walmart. I found that most of the heat is escaping through the glass door (which gets really hot!). After some searching around the internet I found a simple and a cheap solution to the problem: Just wrap the glass door with some aluminum foil! After wrapping the glass door with aluminum foil I ran the test again. This time the results were much better
Reflow oven test after adding the aluminum foil to prevent heat from escaping through the glass door
It takes a bit more time for it to cool down after about 160°C, but this is not an issue. At the end I can always open the door to allow more heat to escape if necessary.
Now the reflow oven is ready to take on a real job; That is to assemble the components on my Gyro’clock boards. This is the reason why I wanted to build this thing in the first place. I will cover that in my next post.