$15 Arduino-Based Reflow Oven Controller

$15 Arduino-Based Reflow Oven Controller

A reflow oven is one of the most useful tools for hardware developers, a machine used primarily for reflow soldering of surface mount electronic components to printed circuit boards (PCB). ESTechnical, a hardware manufacturer based in UK, works hard to produce open source hardware gadgets and contribute its best to make the hardware tools much better, had made a great product, the $15 Reflow Oven Controller. Having an Arduino based reflow oven controller with a graphic LCD opens up a world of possibilities to solder surface mount devices.

This reflow oven is built around the Arduino Pro Micro, an Adafruit TFT color LCD, and around two solid state relays, one for the heating elements and one for the convection fan. The board contains a very simple Zero crossing detection circuit, used to align control logic to mains frequency, two MAX31855 thermocouple-to-digital converters and two Sharp S202S01 PCB-mount solid state relays, mounted on Fischer SK409 50,8 heat sinks.



The Arduino-based reflow oven controller comes with:

  • PID loop control
  • Wave Packet and Phase Fired control for AC outputs
  • graphic TFT LC-Display, drawing the temperature curves
  • using an Adafruit 1.8″ TFT or derivate display
  • solely controlled using a cheap rotary encoder and its single button
  • stores up to 30 temperature profiles in EEPROM
  • configurable PID-parameters
  • simple, small hardware to drive loads up to 600V and up to 8A
  • hardware can
    • measure two temperatures independently
    • drive two AC loads, such as heater and fan
  • Note: Requires Arduino IDE 1.5.x or newer

The software uses PID control of the heater and fan output for improved temperature stability. The heater AC load is controlled using Wave Packet control in order to minimize RF interference and load on the relay. For the fan motor, Phase Fired control has been implemented.

In order to fit your ESTechnical Reflow Oven Controller to T962A, SMTHouse reflow oven infrared IC Heater soldering machine, you will need some tools that are not included in the packing list. You can check the Reflow Oven Accessories Package.
Detailed steps of the installation process are listed here.

T962A Reflow Oven
T962A Reflow Oven

To follow the tutorials make sure of each step or get help from an expert because this project operates with possibly lethal mains voltage.

More details and documentation are available at Github and at ESTechnical official website.

UPDATE 23/12/2019 -> Also check the following reflow controllers:

Please follow and like us:
Pin Share
Notify of

Inline Feedbacks
View all comments
Pedro Federici Coelho

Where can I buy it?


Please check on the source website, to see if it is available for sale.


Please can I create new profile and edit the included profiles?


For this, you will need to manually edit the code.

Hello. I am having problems with the code:

sketch\temperature.h:46:1: warning: ‘typedef’ was ignored in this declaration

typedef struct Thermocouple {


C:\Users\Linas\Desktop\reflowOvenController-master\reflowOvenController-master\ReflowController\ReflowController.ino: In function ‘bool getItemValueLabel(const Item_t*, char*)’:

C:\Users\Linas\Desktop\reflowOvenController-master\reflowOvenController-master\ReflowController\ReflowController.ino:295:37: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]

itostr(label, *iValue, “\367C”);


C:\Users\Linas\Desktop\reflowOvenController-master\reflowOvenController-master\ReflowController\ReflowController.ino:298:33: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]

itostr(label, *iValue, “s”);


C:\Users\Linas\Desktop\reflowOvenController-master\reflowOvenController-master\ReflowController\ReflowController.ino:301:33: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]

itostr(label, *iValue, “%”);


C:\Users\Linas\Desktop\reflowOvenController-master\reflowOvenController-master\ReflowController\ReflowController.ino: In function ‘void updateProcessDisplay()’:

ReflowController:819:40: error: ‘class Adafruit_ST7735’ has no member named ‘Color565’; did you mean ‘color565’?

tft.drawFastHLine(0, l, 160, tft.Color565(0xe0, 0xe0, 0xe0));



exit status 1
‘class Adafruit_ST7735’ has no member named ‘Color565’; did you mean ‘color565’?


Get new posts by email:
Get new posts by email:

Join 97,426 other subscribers