Hey folks, Crow here. While I personally do not own this popular low-cost 3D printer, a number of friends do and they all have run into the same problem: the controller board overheats at the power and hotbed connectors, often resulting in melted pins or wires. As this seemed to be a systemic failure, I decided to look into the board design to see what might be done.
I obtained the open-source Eagle CAD files from the reprap.org github for the Melzi version using the A4988 motor driver chips. Immediately several problems became obvious:
#1) Never use thermals on high-current connectors. Thermals are handy for isolating heat dissipation during soldering for low-current applications, but for high-current applications they become a liability as you want the best heat dissipation as possible on such connectors. For example, here is a failed set of connectors on a stock i3 Melzi control board:
The damage is to the ground-return pin of the main power connector and the PWR pin for the hot bed. Examining the board layers one will note the thermals circled in light blue that correspond to the pins shown above:
Thermals are the small traces leading from the green pad to the red (and hidden blue) copper layers that provide heat isolation. The reason these are a bad idea for power is that the overall copper width becomes an issue. Instead of the current being directly delivered into the 240mil-wide red/upper and blue/lower copper pours for power, all of the current has to go through the thermal traces. This means the main power GND return has a total of four red and (again, hidden) four blue 20 mil thermal traces for a total of 160 mils and even worse the PWR pin for the hotbed had only two 20 mil traces! This board was made using “1 oz.” copper weight, which means one ounce of copper per square foot of board material for a layer thickness of 1.27 mils or about 35 microns (0.035 mm). 160 mil of copper width is far too little for the 10 Amps a hot bed alone uses at 12VDC. These thermal traces overheat to several hundred degrees C and ultimately fail by either melting open, melting the connector body until the contact is broken, or the wires attached to the connector overheat and fail. All of these are fire hazards. This brings us to the next caveat for high current board design:
#2) Never use 1 oz. copper weight for high-current applications. It is simply too thin and requires a wide pour–wider than what is on this board. The copper will overheat at these currents resulting in the discoloration shown here:
The brown smudges are the result of the solder mask discoloring due to excessive heat for prolonged periods of time. Note the thermals on the power connectors.
For high-current applications such as this a third caveat can be stated:
#3) Always use screw terminals of the proper current rating for uses that exceed 3 Amps. I personally prefer a 50% safety margin, meaning a 15-Amp connector for 10-Amp use.
I should note the connectors used on this board are 15-Amp rated, and are a part similar to the On-Shore Technology part number EDSTL955/2.
So, how to fix all this? Time to rework the board. No more high current thermals, and make certain both layers are used for power and ground in these areas:
I am also placing a DS1822Z temperature sensor in the high-current area to measure the board temperature while it is printing. This is to make sure the board does not exceed 140C. This will need a small firmware tweak to Marlin or whatever flavor of code a Melzi runs, but this is the sort of thing that will keep your board from burning up again.
Other tweaks include rerouting the entire board, improving the power connections to the motor driver ICs (10 mil power, really?), adding headers to allow the use of external SD card readers and USB cables, adding connectors for 3.3v serial to enable the use of things like a BLE board, some extra work on the Z-stop switch input to allow the use of an inductive bed sensor for auto bed-tramming (leveling), use of all screw terminals and finally replacing the ceramic resonator on the ATMEGA1284P with a 50ppm quartz crystal. The resonator the old board used has a 0.5% tolerance, which might be a possible source of layer consistency issues. Thus I ended up with this:
Now to get some made. Well, not by OSHPark, alas. For some reason if you specify 2 oz. copper they make the board from 0.8mm FR4 instead of the usual 1.6mm. I know other versions of this board exist that (hopefully) address the problems I’ve outlined here, but this project is to get friends’ printers back up and running with a drop-in replacement as soon as possible.
Cheers, Crow
/**/
Great points, esp about thermals – no doubt they were auto-created but totally begging for hotspots. PCBs pushing more than a few amps require TLC. Have been pulling apart a few high-current DC commercial devices recently (30-100A) and you can see the layout guy’s respect for Big Amps; zillions of vias, FAT traces on both sides, no soldermask+extra solder laid down on main power rails; sometimes even copper wire overlaid on traces.
Thanks for this! So many conversations about this on the Wanhao Di3 google group and thingiverse group about this. I put a post on both of those pointing to this blog post to hopefully spread the word that we who have had to take a soldering iron to our Melzi boards aren’t just unlucky!
Great advice, thanks. I have little to no experience with PCB design, but I need to fix my still functioning Melzi. These will come handy when designing my external Mosfet board.
Thanks for this explanation! Same thing happened to my Melzi. I replaced it with a CloneBoard Mini (same board shape) from shop.raffle.ch – best upgrade I ever did!
[…] to a few terrible design choices. [Scott Rider] aka [Crow] took a look at the popular Melzi board, and what he found was horrifying. These boards overheat right at the connector for the heated bed, but the good news is these […]
I used to work for the company that did the original design and development of the Melzi. The v1 Melzi had a number of problems, mostly that some tracks were too close together, and can easily short 12V to the 5V hot end temperature pin on the Arduino chip, killing it. There were also some crosstalk problems, and the A4988 chip is difficult to solder, being a QFN package.
We didn’t ship the v1 board for long as these problems quickly became apparent, and quickly updated to the v2 board, which had much improved routing and used the A4982 in a TSOP package. However, it’s fair to say we did still have occasional reports of the bed circuit burning out in the manner you describe, which we never managed to resolve, but I expect you have found the source of the problem. Most of the time they did work very reliably; the main fault was people shorting 12V to 5V (usually hot end/bed temperature) somewhere, killing the ADC on the Arduino chip. A further improvement would be protection for that.
The main problem that has trashed the Melzi’s reputation is that the low cost Far-East manufacturers continue to use the v1 design, with all it’s associated problems. See the Melzi wiki page for more info: http://reprap.org/wiki/Melzi
I’d suggest adding your version as a ‘v3’. If you could replace the FTDI USB to serial chip, that would probably be a bonus too! Fake ones of those gave us a massive headache when FTDI borked the driver…
Hm, blog won’t let my reply to a comment so I will just post a new one as a reply:
Hi Bruce, I will set this up as a v3 then. I know the v2 went to the TSOP motor drivers and is a better overall board, but I am mainly addressing what people find in their printers in my article. I can change the FTDI chip (if it’s not Scottish its CRAP!) to a CH340 once this one-off batch is done for friends. More soon, Crow
140C for the PCB material?!? Where did you get that number? None such animal. Looks like regular FR4, so is probably class B (130), so the allowed deltaT would probably limit you to under 120C. You might want to look at UL796 for particular PCB requirements, and IEC/UL62368-1 for general product safety requirements. Or not.
I typically use FR4 with a Tg of 130 but for these boards I am using FR4 rated to Tg 170.
@Scott: Do you have a link to your revised board design? (or am I possibly just really blind, haha)
Hey Scott, really interesting article. Would you be making the redesigned board available for purchase? As someone commented above, quite a number of Wanhao i3 owners have had this problem with their boards. Also Wanhao has not been very receptive about warranty claims.
Still cannot reply to comments. I will put this revision on the reprap Melzi github once I build and proof-test the board. I have a few other tweaks to do before I submit it. I want to offer the option of using QC terminals on the power and hotbed terminals as well as some ground plane improvements. –Scott
This sure sounds like a class action if it is a known problem and they do not fix it.