Investigating the Infamous Relay Bypass for Monoprice Maker Ultimate (Wanhao Duplicator 6)

This week my 3D printer stopped working mid-print. All motor movement, heating activity, and cooling fans stopped simultaneously. However, the control panel is still responsive and so is the LED light strip. Time to hit the web and see what I can find.

My printer is a Monoprice Maker Ultimate, which is a rebranded Wanhao Duplicator 6. Which is in turn a knock-off of the Ultimaker design, though not a literal clone of any specific Ultimaker model.

A web search of my symptoms found a known point of failure with this product: the main 24V relay. The popular explanation is that Wanhao cloned somebody else’s circuit board, removed the features that would use the relay, and used a cheap relay that’s always on. So the recommended workaround is to solder a wire to bridge the legs of the relay and bypass it. “It doesn’t do anything anyway.”

I was skeptical of this explanation because if Wanhao is really just cutting costs, they would skip the relay entirely: no relay is cheaper than any relay! There must be more to this story.

But first, a check to see if the relay is indeed the fault. A quick visual inspection confirmed that there’s a problem with my relay, indicated by the melted hole in the side.

D6 Relay hole

For additional confirmation, we temporarily bridged the pins as recommended by forum posters. When done with the power on, it brought the always-on heat break and circuit board cooling fans immediately to life. Relay failure confirmed.

What does the relay do?

Turning off this relay cuts power to all 24V components: Motors, fans, and heaters. In normal operation, there’s no situation where the 5V components (micro-controller, display, LED strip) are running without the 24V components, so the answer must be related to abnormal operation. Our best hypothesis: this relay is a safety switch in place to halt the system if the 5V subsystem should fail. If that happens, it makes sense we’d want to shut down all the 24V parts too. And now that we have a plausible description of the relay as a safety feature, bypassing it with a soldered wire seems like a bad idea.

Why did the relay fail?

This part was easier to figure out. When I ran my printer with my Kill-A-Watt meter, it indicated the power draw jumps by over 300 watts when both heaters are active. So even ignoring the cooling fans and motors, the print bed and filament heaters together draw over 12.5 amps from the 24V plane.

Typing in the designation on the relay “SRD-05VDC-SL-C” found its datasheet, which says the relay can handle 10 amps. So the printer was designed such that the relay exceeded its rated capacity anytime both heaters are active. Not exactly a great design. The relay tolerated this overworked condition for many months but this week it could take no more.

The correct solution, then, would be to replace this relay with a higher-rated unit that can handle 15+ amps continuously. (12.5 for heaters + motors and fans + margin.) Unfortunately relays are not standardized in their footprint so I failed to find a drop-in higher-capacity replacement. (I found the Omron G5LE series with the same footprint, but with the same 10A maximum for DC so I’d be no better off.) Hooking up a beefier relay to the circuit board via wires is a possibility but intimidating. 300 watts of electricity is very good at finding minor flaws and turning them into big problems.

What do we do?

To summarize, the candidate solutions are:

  1. Bypass the relay with a wire as per internet forums: Seems like a bad idea to bypass a potential safety feature.
  2. Install an exact replacement: Known to work until it doesn’t.
  3. Install a higher-rated drop-in replacement: Great idea but such a replacement could not be found.
  4. Install a higher-rated unit elsewhere in the box, connect to the circuit board via wires: Adds many points of potential failure and >300W of power is unforgiving of flaws.

I’d love #3 but I couldn’t find a beefier relay with identical footprint. #1 and #4 are asking for trouble. For the immediate future, I choose #2 as the least-bad solution.


UPDATE 1: After the original relay was replaced with an identical unit, I cut open the original relay to see inside the failure.

UPDATE 2: As expected, the identical unit eventually failed in an identical way.

3D Printer, Fix Thyself.

fan-adapterI’ve enjoyed using my 3D printer to solve little problems around the house. This project was extra amusing: I wanted to solve a problem I had with my 3D printer that I wanted to solve with the 3D printer.

My Monoprice Select Mini 3D Printer is a basic unit built to a low cost, and I’m probably using it a lot more than it was designed for. The first component to show serious wear was the tiny 30mm cooling fan, a simple unit with a cheap sleeve bearing that wore out. As a result the fan started vibrating and making quite a racket.

I could easily buy a direct replacement fan online, but where’s the fun in that? I have a 40mm fan just lying around anyway. Let’s make an adapter!

For a while I was stymied by the fact that the two fans were mounted in opposite and inconvenient directions. The original 30mm fan screws were pointed in the direction of airflow, and the original 40mm fan screws were pointed against the airflow. This meant that when one set of fasteners were mounted on an adapter, holes for the other set would be blocked.

I spent approximately an hour tearing my hair out trying to design something clever, to no avail. Then clumsiness came to the rescue: I held the cooling duct (which the fan would be mounted on) in my hand, trying to think, when I accidentally dropped it. When it hit the floor, it fell apart into two pieces.

The duct was actually two pieces fit snugly against each other. All this time I had thought it was a single piece! With the two pieces apart, the interior of the duct became accessible. This meant I could use the 30mm fan screws opposite of the original direction (pointed against the airflow) where it is no longer blocked by the 40mm fan.

Suddenly the adapter project became trivial.

“Oops” moment for the win!

Entering the World of 3D Printing

153651And now for something completely different… I got a 3D printer! I’ve been keeping an eye on the field for years, and I knew it was only a matter of time before the price point drops to a point where I can no longer resist.

The Monoprice Select Mini 3D Printer (Item #153651) is their entry-level offering at $199. For an entry-level item, it has an impressive array of features. All the basics plus some not-so-basic features like a heated build bed. At the standard price it was already quite tempting. When Monoprice threw a 4th of July sale that cuts 20% off the price of any Monoprice-branded item… I could no longer resist.

As advertised, it came completely built and almost ready to go: the build bed levelling had to be double-checked because that can easily shift in transit, and indeed I had to make a few minor adjustments before it was level. It came with a micro-SD card with a G-code file ready to go, plus a short sample of PLA filament. I was up and printing within half an hour – very impressive!

The only complaint is that their sample filament is too short to actually complete the sample print job on the microSD card. If you look at the picture above (from Monoprice web site) it’s in the middle of printing the same object, and it is stopped at around the same point as the filament running out. I’m not sure if that’s a coincidence or intentional. In any case, I couldn’t complete the print until I got more filament to feed the machine.

Now I’m learning all the basics of tweaking a 3D printer. Temperature, speed, all that good stuff. It also means I need to learn some new tools. A 3D design program (I’m looking at Onshape, but there are many others) and a slicer to turn the 3D design into a G-code file (Monoprice recommended Cura for this printer.)

My Ruby on Rails education has been seriously sidetracked by this adventure, but it’ll be fun!