A DIY Reflow Hotplate for small Aluminium-core PCBs

My home made reflow hotplate with each component labelled.

Few months ago, at the beginning of the pandemic, I was just about to finish assembling my DIY Fluorometer when disgrace stroke. While disassembling the lights, I noticed that one of my LED PCBs stopped working. The only solution to that problem was to manufacture a new batch and request assembly in China, as it was my custom procedure to design my own PCBs. What it used to be a normal, albeit slow, procedure to get a small batch of aluminium core PCBs done then transformed into a nightmare. A batch of 5-10 aluminium core PCBs would cost around $70, plus delivery $25. I would also add the stencil ($10) and assembly, which would include the service and parts costs. It was the part cost that changed overnight with the arrival of the pandemic. My usual go-to was https://pcbway.com. After a couple of hours of having request the new batch, customer services got back to me with the assembly cost: the 2 PCBs I was requesting to assemble came at $200 just in components, which didn’t make any sense as the amount of parts were 50 Osram Optosemiconductor LEDs plus 4 connectors. That would be no more than $60. But PCBWay insisted they needed extra parts in case of failure and that the provider of the parts just had the LEDs in batches of 5, which our friends then multiplied by 50 (!). This was also the time everyone seemed to be particularly pissed with China because of the virus and also because of the heavy reliance on China’s manufacturing sector to serve the rest of the world. So, I decided to take matters on my own hands.

I started looking for local suppliers of electronic components and/or services. There are not many in the United Kingdom, and the few that exists are big companies. Understandably, none of them were interested in a small batch of 2 LED PCB boards to solder. What it was supposed to be an easy and conscious choice transformed into an existential crisis.

My first reaction was to search for similar DIY projects on the internet, and see what would suit my specific requirements. To my surprise, 90% of the projects were around modified versions of kitchen toaster ovens, while around 9% was about modifying cheap Chinese reflow ovens, and a 1% was about hotplates. The latter one seemed to be the favourite choice for LEDs soldering. 

One of the thousand DIY reflow hotplates available on the internet. Image courtesy of brooking.net

I found some issues with the most common and popular option of transforming a toaster oven into a reflow one. They rely of air convection and most of them were not heating the whole required area. To solve that issue, some DIYers were implementing quite few extraordinary measures, not few of them quite complicated. They were trying from increasing the insulation, to installing more heat elements to electronic controllers. The issue was pretty much that aluminium core PCBs need a higher temperature or a longer exposure in order to be soldered correctly. The toaster option did not look good.

The second option was a hotplate, but I decided to rule out the ones based on hobs and build the plate from scratch. The reason why I settled for this was based on a tutorial I found on Medium.com which was pretty well explained and was very much what I had imagined it could solve my soldering issue. The tutorial was called How to Build a Hot Plate Reflow Oven. What follows is pretty much an iteration of that project and I thank Mark Zachmann for his detailed tutorial.

As usual, rather than starting with a small prototype, I started with a big hotplate using quite powerful heater cartridges. Each heat cartridge was 200mm long, 16mm diameter and rated at 1000 Watts. I decided to put three of those into a 200mm X 150mm X 20mm Aluminium plate. I soon ran into trouble.

The first issue I encountered was that I could not drill the aluminium plate simply because it was way too big for my bench top drill and, also, I could not find a drill bit long enough to go through the plate in one go. The largest HSS 16mm drill bit I could find was 150 mm (that’s total length; flute length was 75mm) so, I had to settle for two aluminium plates of 100mm X 150mm X 20mm each. The result was the following:

The first issue was that I could not possibly align the different holes in both plates, and therefore, I ended up with a hotplate that had a protruding edge right in the middle. That was down to the limitations of the bench drill press, which is a not-very-cheap Bosch PBD 40. Once more I have to come to terms with the issue of precision in cheap tools. You get what you pay for, and in the complicated world of drilling metals, you need a precision grade pillar drill with plenty of space, a suitable vice and lots of power. They don’t come cheap, and one for the required precision of this project would easily be over £1,000. As a matter of fact, I didn’t buy one not because of price, but because of space. I simply don’t have where to put it.

With the first iteration of the plate drilled and pre-assembled, I then went on to assemble the rest of the system. 

The parts as follows:

  • Raspberry Pi Model B+ (or whatever model you have laying around)
  • Adafruit DC Motor Hat
  • Adafruit MAX31855 or MAX31856 (Be mindful of the differences between both)
  • Thermocouple Type K (I use the Adafruit one)
  • TE SSR and heatsink
  • Base plate 400mm X 400mm X 2mm (mine is big but you can buy a smaller one)
  • Stud mounts (X 9)
  • Terminal blocks X 3
  • Insulated ring terminals (various sizes)
  • Hex Screws M8 and M5
  • M8 and M5 nuts and washers
  • Buck Converter 12V 5A and 5V 10A Mean Well IR60 Series. 
  • Axial Fan (RS-Pro) 12V dc. 

The first run with the hotplate was not that bad, but I noticed that it was slow to take off. Below there is a comparison between the profile required by Osram Optosemiconductor to solder its LEDs and the first hotplate iteration during preheat phase:

The first thing to note from the graph is that the hotplate is slower in getting to 150C in the required time (62 seconds) at a rate of 2 degrees C per second. The hotplate was not getting to that rate and, in fact, was much slower at 0.6 degrees C per second. It was getting to 150 degrees Celsius after 2 minutes 30 seconds, or 150 seconds altogether. The possible explanation to that was twofold: not enough heaters for the size of our hotplate and too much aluminium to heat up for our application. Either way, that required a re-design, since the pre-heat ramp up should be much faster than that. The recommended ramp up rate for the preheat stage is between 2 C and 3 C per second. Thinking that probably the heatsink was slowing down the heating process, I decided to get rid of it and leave the plate bare, with the axial fan underneath. There was no change. 

But don’t get the above wrong! Still, these three cartridge heaters had a combined power rate of 3,000 Watts! They were slow at the beginning, but once they’ve took off, they were for a ride. I was having serious issues with the MAX31855 as I picked up a grounded type-K thermocouple and the MAX31855 does not like grounded ones. On top of this, I was doing this in my garage during the winter months at not so working friendly temperatures. So, one day, I came up with the brilliant idea of working remotely from the house, while leaving the hotplate in the garage. VERY VERY BAD IDEA.

The MAX31855 was giving me the wrong readings and I thought the heaters were much cooler of what they really were. They simply melted the aluminium like a hot knife on butter, and landed on the axial fan, creating quite a stir of black smoke to alert my wife. You can see what was left on the above photos by the time I got there. Two things I liked about the design during the accident was that the bottom plate contained the debris and heaters (although it would not have done so for too long), and the fact that nothing shortcircuited. In fact, I just unplugged the extension and apart from the melting mess above, all the electronics were ok (except of course the bloody MAX31855). All in all, a good design, but the hotplate would have to be re-designed and very likely scaled down substantially. That’s what I just did. 



This is just a provisional, or one of many exchangeable plates that I will build, as I want to have the capability to reflow bigger and larger PCBs. But for that I will have to invest on a pillar drill!


The new plate is not only much smaller but, also, much faster during the ramp-up preheat phase. It reached 150 C in 53 seconds at 4.5 C/second. That’s much more of what is needed.

The original cartridge heaters were 16mm (200mm L, 1000w and 230v), while the new ones are 6.5mm (100mm L, 400w and 230v). Both from https://cartridgeheaters.co.uk. They are heavily built, very good quality and at a reasonable price. 


My metal-core PCBs are usually coated with a white silkscreen, which is the preferred colour for LED PCBs. There is a problem or two when trying to reflow these PCBs using normal solder paste with a melting point of 217C. If you follow the manufacturer’s profile, it’s very likely you’ll end up ‘toasting’ your silkscreen with the high temperature, which will then turn to a creamy beige colour. I also have the feeling that this is not good for your LEDs. Unfortunately, there is very little information about it on the internet, and the little info that is there mentions that low temperature solder paste is the go-to for LED boards.

The Aluminium-core PCB designed for the Fluorometer.

Now, I did quite few tests with old boards and I can confirm that no matter how fast you carry out your profile, it will toast your silkscreen. The other thing I can confirm is that you are taking the LEDs to their tolerance limits and if you are not careful you will damage them. With use, and particularly if your mechanism to remove heat is not the best, your LEDs will stop working. One of the most common issues is that the lens will disintegrate or fall off completely if it has been exposed to high temperatures. That’s the end of your LED.

On the other hand, I have had consistent results, that is, no burnt silkscreen, will low temperature solder paste. ChipQuik SMDLTLFP is my preferred option:

ChipQuik SMDLTLFP Low temperature solder paste recommended profile.
Very long and poor video quality just to show how the solder paste melts beautifully.

The usual complaint about low temperature solder paste is that is brittle and can have structural issues down the line. In other words, low temperature Sn/Bi alloys do not pass high strain tests or shocks. I haven’t tested my PCBs by throwing them at the floor or hammering them. My only concern is about temperature, both while soldering and during operation; I am not concerned with vibration and/or shocks and so, I think I will keep using the low temperature solder paste for the foreseeable future. As a funny fact, if you click on the ChipQuik link above you will notice that the low temp solder paste is frequently bought along with what? LEDs! I have soldered several times the same PCB board and it hasn’t lost its white colour, which means that we are well within its tolerance level and almost 100C below the maximum tolerance level of our LEDs.

A presentation from Intel where low temp solder paste is mentioned as the material used for LEDs. https://www.intel.com/content/dam/www/public/us/en/documents/presentation/low-temperature-soldering-introduction.pdf

The picture above is an Intel’s presentation about using low temperature solder paste; they also confirm that this is the choice for certain electronic products that are not subject to movement such as TVs and/or White Goods, but most importantly, LED products. That’s us guys. So, stop using normal solder in LED projects.


The script used to control the hotplate can be found at: https://github.com/maykef/hotplate

import time
import datetime
import sys
import datetime as dt
import board
import busio
import digitalio
import adafruit_max31856
from adafruit_motorkit import MotorKit

# create a spi object
spi = busio.SPI(board.SCK, board.MOSI, board.MISO)

# allocate a CS pin and set the direction
cs = digitalio.DigitalInOut(board.D5)
cs.direction = digitalio.Direction.OUTPUT
thermocouple = adafruit_max31856.MAX31856(spi, cs)
temp_C = thermocouple.temperature

def fan(throttle):
    kit = MotorKit(i2c=board.I2C())
    kit.motor1.throttle = throttle

def heatplate(throttle):
    kit = MotorKit(i2c=board.I2C())
    kit.motor3.throttle = throttle

def temp_print():
    while True:
        print("Temperature: {} C".format(temp_C))

def soak_time():
    print("Preheat Started")
    while True:
            thermocouple = adafruit_max31856.MAX31856(spi, cs)
            temp_C = thermocouple.temperature
            if temp_C < 60:
                print("Pre Heat")
            elif temp_C < 130:
                print('Soaking 1')
            elif temp_C < 138:
                print('Soaking 2')
            elif temp_C < 150:
            elif temp_C > 165:
        except KeyboardInterrupt:


This is just a draft version and there is plenty of work to do to make this work smoothly but, so far, I managed to solder things with this script by modifying the time.sleep in each phase. It’s not PID, but it works and it’s simple enough so anyone can understand what’s going on under the hood. Isn’t that the Pythonic way?

Ideal soldering profile for CHIPQUIK SMDLTLFP vs DIY hotplate real temperature based on the above script.
The new aluminium-core PCB after soldering. Note that this version has testing points to find single LED failures..
Our LEDs shining!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: