Let's Make Robots!

Hobbybotics Reflow Controller

7 April 2011:

Wow, it has been ages since I actually posted something although I visit the site pretty much every day.  I ain't (good slang term) making no excuses but, okay, I am making some excuses as I am in the military and I do work roughy 11 hours, 5 days a week (when I'm not traveling).

Of course this blog post is not my attempts at apologizing (as if anyone cared) but, is for me to post some progress on a project that I have been working on for quite some time (I swear that the news of the government possibly shutting down over the budget, that will leave me without a paycheck, has nothing to do with me finding time to actually post something).

The title says it all..it is a reflow controller that is a combination of a standalone device that can be manually controlled or computer operated through a C# interface.  The idea is to interface some external electronics to an unmodified toaster oven and use it to reflow my circuit boards.

I won't bore you with all of the dirty details right now as I want to use this blog to post information until I have the project finalized.  I like to provide as much detail as possible so that others may learn something and/or provide some feedback.

Here are a few pictures to tide you over:

Reflow Controller V6.00

Reflow Controller V6.00

Reflow Controller V5.03 PCB

Software Application V1.0 Alpha

Reflow Controller Application V2.0A

I actually have three different versions of the controller with different feature sets.  I will add pictures of the different version once I have them complete.  All version of the controller use a MAX6675 thermocouple.  Versions 1 and 2 both have a MAX3232 for RS232 communications with the PC and a connection for a FTDI breakout board if USB communications/power is prefered.  Version 1 controller has a DS1307 RTC clock IC on board for datalogging.  Version 2 has a header for a DS1307 RTC from Adafruit.  Version 3 of the board is a minimalist version and does away with the FTDI connector but keeps the RTC header.  All three versions of the board have an auto-switch power feature where the board is powered by USB if a FTDI breakout is plugged in but, auto-switches to external power when detected.  I modified a power supply design I first saw in an issue of Servo Magazine.

I am working on a forth version that pares the design down further for cost.  I'm waiting on those boards to come in.

The microcontroller of choice is a PIC16F877A or PIC16F887.  Both chips are loaded with a bootloader so that I don't have to program the microcontrollers outside of the project housing.

Below are some pictures of the almost finished housing without the top on.

Controller Case


Inside controller box

LCD manual control screenshot

Toaster Oven

That's it for now.  I'll explain some different control methods and software implementation later on.

Dang! it feels good to be back in business!

8 April 2011:

Pictures of the version 6.00 controller with the Adafruit DS1307 Real Time Clock attached.

I'm finishing the C# application that is stock full of features to control and graph the entire process.  The application has real-time visualization as the reflow or bake process takes place.  The reflow chart can be exported to an image and/or file for later viewing.  In addition, the chart data can be exported to a CSV file so that it can be viewed in notepad or edited in excel.  I've also somewhat integrated the bootloader application into the main application for controller firmware updates.

The application and controller is fully functional right now but, I'm exporting a lot of the functionality for control into class libraries to make them easier to update.  This will also allow other interfaces to be developed using the libraries.

That's all for now,  \o/

13 April 2011:

I'm pretty close to finishing the software application to accompany the reflow controller.  Below is a simple demonstration video going through some of the menu options and functionality.  I still need to actually demonstrate the controller operating with and without the software application.  The firmware for the controller is done and has been tested but, as usual, documenting is the most tedious part.  I'll post more videos tomorrow (time permitting).


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Always nice work Mr Brooks!! Glad to see ya posting again as well....

I appreciate the kind words and glad to have some time again.  \o/

You avatar has become a cheer around here.  You even have your own official ascii art  -->  \o/     Inspired by your avatar.

Your board looks great.  I assume you will need to hack the toaster a little in order to interface the control circuitry & feedback (thermistor) sensors?

Also, was curious if you etched your own boards.  To put so much effort into a controller, I would think you are interested in small scale production.  If that is true, have you found the etching process not worth while? 

Great stuff !

Glad to see you again.


I saw the ascii art avatar and plan to have some boards etched with it on there.  Great stuff!

The toaster does not need any hacking at all as it plugs into the controller using a standard wall socket.  On the board is a MAX6675 Temperature IC that uses a K-Type thermocouple sensor for a resolution of 0 to 1200 degrees Celcius.  The control scheme will approximate the on/off time for SCR based on the slope of the temperature curve and the amount of error from the setpoint.

I did not etch my own boards but used the ExpressPCB software to design and produce the boards.  For me, it was more cost effective money and time wise to send them off to a board house.  I intend to give some spare boards away once I got the project finished.  I'm close to finishing the software and firmware.  I have completed test runs with success.  I need to test a few more of the features.

Thanks, \o/

So it basically PWM's as SCR to control the AC power with feedback with its own temperature sensors.

Great stuff.  Keep it up !  \o/ 

You got it, PWM is what I'm using. I'll post the full project when complete. I'm going for a production level project. I'm pretty compulsive with this stuff.


Very good to have you back :D