Ultimaker heated bed MosFET relay hack - V2

Redefining the term PCB - from "printed circuit board" to "printable circuit board" !Make sure to look at all the documents!

3D printer parts and enhancements

Creative Commons Attribution Share Alike

Commercial use is allowed, you must attribute the creator, you may remix this work and the remixed work should be made available under this license.

Learn more or download attribution tags


NOTE: New version is out!

Hearing about people buying SSRs or even mechanical relays instead of just simply using a MosFET kinda hurts my feelings, so I decided to put together a little DIY hack to solve the problem.

In short: mechanical relays SUCK for DC (especially 24V, 200W which is a heavy burden for any mechanical relay to switch). Solid state relays (SSRs) are waaaay overengineered because they're made for industrial control applications where safety certificates, electrical isolation and things like these matter.

Anyways, I made this little hack which uses a MosFET (rated for 120A actual rms current! Forget any SSR's or mechanical relay's current capabilities...) to switch the heated bed's power from an Ultimaker 1 electronics board without using any current from the UM1's original power supply.

Of course, you need a second power supply dedicated for the heated bed (recommendations included in the BOM. Don't forget that these all come without wiring). I strongly recommend using a 24V power supply over 12V, because that means less current, meaning less stress on your wiring and connectors. Less current also means less electromagnetic interference.

The hack includes a printable circuit board - you print the circuit board with your 3D printer, put in the components and solder them using their own "legs" (full instructions in the files). All you need is a soldering station (preferrably with temperature control) and some standard electronics solder.

This design includes an LED indicator that will light up when the heatbed is activated. It's also fully ESD protected and enclosed.

Don't be afraid of the long instructions, it's really easy to solder the components together.

Note that you need to use the case if you want the thing to be protected against ESD effectively. The current design uses self-tapping screws for thermoplastics (aka "plastite screws"). If you really need a design that uses standard M3 screws, tell me. I can adapt the design. You could also just use a drill and drill through the small holes. Then you can put screws through and add nuts on the bottom.

Important: Make sure you don't put the MosFET relay on something that gets hot (such as the power supply unit)! It will not get warm by itself, but you don't want it to melt down and short-circuit...

The BOM includes supplier information for www.mouser.com. I recommend you get the parts from there. They ship worldwide. If you take one of the power supplies listed in the BOM, you should also get free shipping.

Note about the picture of the PCB's bottom side: Youmagine decided to rotate the picture and crop it. I tried it 3 times, it keeps rotating it. I have no time for this... See the assembly instructions for more pictures ;)


Added the sketchup source file. I completely forgot that earlier, sorry o.O

/update 2 (2015-06-02):

Added Wiring.pdf as a better display of how to hook this thing up.


This hack is intended to be used with the Ultimaker Original power supply and electronics platform! Don't use it with anything else than that - this hack is not an universal design but really just a "hack" to get the UMO working with a heatbed.

Update: Other platforms may work as well, as long as there are no differences in how the heater outputs are switched (compared to the UMO electronics).

Due to the way the heatbed output works and the fact that this MosFET relay hack does NOT feature an electrical insulation between input and output, you MUST use the second (heatbed) power supply EXCLUSIVELY for the heated bed and nothing else. The MosFET relay only works when it can break the GND connection between the controller (UMO electronics) and the heated bed. If you create any other GND connection between the controller and the heatbed power supply, then you bypass the relay, keeping it always in "ON" state.
As long as there is no other GND connection, the hack is completely safe to use as long as you solder all the joints correctly.

Materials and methods

- See BOM_V2.pdf for all the electronics parts
- 3x screws: 3mm diameter x 12mm length self-threading screws for thermoplastics



Issues are used to track todos, bugs or requests. To get started, you could create an issue.


E4902cd79c1dae16b6f4efa6f1c58a39?default=blank&size=40Tobiasz K added this to the to make collection ago
B3f652ee4ae24c77f9f661f1842b3823?default=blank&size=40Hakki added this to the 3DPrinters collection ago
Mini neevahavensneevahavens added this to the neevahavens collection ago
Fb8913b3237b2c550bcb8bb6192cbb59?default=blank&size=40Mehmet SITKI ULUK added this to the Print Edilecek collection ago
6505ec8d1b9f54f6dcbf7533fb9338f5?default=blank&size=40gdcircuit added this to the Elec collection ago
A81dfa73139089aa5fb819f51c96b824?default=blank&size=40matiuhart added this to the Prusa collection ago
16a995b6b4387d788b6ff21a8f2ff423?default=blank&size=40filipskott added this to the Miscellaneous collection ago
0592e92f50010d5abf34a408bf416747?default=blank&size=40redpaul6t8 added this to the Things to Make collection ago
Cf8d1624da46f32a89b9e7927f001ac7?default=blank&size=40Scoop added this to the Things collection ago
Cce87c06f65c620f42bb7005a55b1e7d?default=blank&size=40claude FOUQUEMBERGH added this to the IMP3D collection ago
Dce8d2f4c4f5c55ce4807e7e43a9df60?default=blank&size=40my.kosz added this to the Elektronika collection ago
77920c61af1bc3e62501a118c169ac22?default=blank&size=40Alberto Martinez added this to the ultimaker collection ago
Mini v2 1712e4f8eb53b02d7342262b2a32165a hdcnwlq added this to the 1 collection ago
92bec5c8830ef9a558901eb6e3bc39a2?default=blank&size=40TokarenkoYaroslav added this to the 1 collection ago
5a8f31ee508cc99b8d2b376800c2c76e?default=blank&size=40Guilherme Silvestre added this to the PEÇAS IMPRESSORA 3D collection ago
Mini fb img 1537900283340Douglas F. added this to the 3D PRINTER PARTS collection ago
D6248baf2569076347b72937f47e8fd4?default=blank&size=40Peter Seed added this to the Ultimaker Upgrades collection ago
Mini hd 1280x1024 abstract 3d medaltations 13580José Ramón Tezanos added this to the Electronico collection ago
Mini img 20160616 214649728ltmhenrique added this to the peças printer 3D collection ago
05d6c982b3929cb9c5e9cb3ac311f89d?default=blank&size=40Rajapandian Siva Ganesa Karthikeyan added this to the printer upgrade collection ago
54c4f626f1a04c4931d80027790f57cb?default=blank&size=40Corpsetaker added this to the RP1 collection ago
F73125cec9e9a3290a2eb3ad34f852cf?default=blank&size=40cikorio koku added this to the Ultimaker collection ago
A326efad8c7f78cd62a6f9288bc13059?default=blank&size=40coastroad added this to the UMO collection ago
55386496403e7be726858f784b78aef2?default=blank&size=40rekcah2222 added this to the Eletronics collection ago
224f9eefc4d428f214af4ac375bccd98?default=blank&size=40Davedwin added this to the Miscellaneous collection ago
3ae073b4815204de4d87f5ea83313c3c?default=blank&size=40benjabr added this to the 3D-Printer collection ago
27cc0283e63f455dd2bfcd787a26bc30?default=blank&size=40Crashoverride added this to the Hotbed collection ago
D9bce968fee59bc41f8fb44c9ddf4c36?default=blank&size=40Erik Avery added this to the Electronics collection ago
Fe82022490cf847fd54794908915d74c?default=blank&size=40tanakas commented ago

Hi Jonathan, I rebuilt your circuit to drive my heatbed. I have a GT2560 board. This board as a LED for the heatbed output.

Now, when the bed is switched off and I connect the bed power source, the board LED will switch on and the bed starts heating up (-> the board cannot switch it off), as if there is some voltage at X1........

Any guess what goes wront? I am extremely sure that I wired it correctly. However, I used a 30N06L instead of the one you proposed...

B4bef56dde99d433db75a4d892ad2d8a?default=blank&size=40vuelto added this to the Best Things in the Verse collection ago
Mini photo 2016 12 26  17 45 38Barrett Dent added this to the 3D Printer - Upgrades - Heated Bed collection ago
Fcb3469695c95a5e23c2429eaae67447?default=blank&size=40Adam Rękosiewicz added this to the dual collection ago
B1e5d2d82881c6c179ef909349555ce2?default=blank&size=40chantling added this to the 3D Printing collection ago
83f4d0c1a8b02a483d2997d60b06058a?default=blank&size=40CP Wong added this to the 3D printer collection ago
3e1d438de037b22a2541eecf8e05a63b?default=blank&size=40Firefly added this to the general collection ago
7231dd59a34ace63555f4443369a30d7?default=blank&size=40fxsys added this to the Extras collection ago
Ab14af86ccc672d5721fdabe10431604?default=blank&size=40Brian Daw added this to the printer tools collection ago
B25b747e638dc5b806fd3df1eab574d4?default=blank&size=40Rob2Too added this to the A8 stuff collection ago
Mini logogofixJuan Carlos Ramírez added this to the Things to do collection ago
72931c78d772df85b5419b3fc653e4d8?default=blank&size=40Louis Cypher commented ago

if you allow me some days I can post mine. It is not much more

complicated than the original design. It just needs an additional cheap


Eb80f8d7f783a6fe1df2b6d5e64f278b?default=blank&size=40Jose Jiménez López added this to the Electronic stuff collection ago
Mini sheepJonathan Bischof commented ago

Update 2 (where did the edit button go?)

Actually I found that it isn't that difficult to make a good version using an optocoupler. The new design has 2 components more than before, but is much better due to the complete isolation of the two power supplies.

Soldering is a little bit trickier, but really just a bit. If you can do V2, you can also do V3...

BOM consists of 3 "building blocks" depending on your voltages, but that should be manageable.

It'll take me some time to make the 3D files for V3, so stay tuned ;)

Mini sheepJonathan Bischof commented ago


I put some thought into that upgrade. I came to the conclusion that I won't do it because the design would become too cluttered and complex for what this is meant to be - a simple and easy to build hack for the UMO.

You could either power the RAMPS1.4 using a 19-24V power supply (in that case the hack should work - note that I don't have a RAMPS so I can't test it. But since the schematics say the boards are identical in that regard...) or buy a "proper" heatbed relay board instead.

Mini sheepJonathan Bischof commented ago

Hi Ariel,

The RAMPS 1.4 actually has the same heater outputs as the Ultimaker 1.5.7 board (for which my hack is made). So, connection is the same as described in the documentation ("19.5V" -> "+" and "hot bed signal" -> "-").

However, my hack won't work with 12V, only with 19-24V power supplies (on the RAMPS side) because I intentionally used a simple way to set the switching mosfet's gate input voltage using the two resistors R2 and R3. Of course there are better solutions, but this is the easiest one to reproduce while producing good results at the same time.

Generally my solution works so well because it's tailored to the specific voltages on the UMO (19V UMO supply, 12-24V hotbed supply). Many other solutions such as SSRs offer much more flexibility, but sacrifice performance in the process because they are more complex.

Now, for a 12V RAMPS, this won't work as it is now. One could mess with R2 and R3 to produce the correct gate voltage for 12V input, but since these resistors are also needed to ensure proper switching of the mosfet I won't recommend anything without trying first.

The reason why I'm calling this a "hack" and not a proper solution is - while it certainly works very well - it is not a "clean" design because it doesn't separate the two power supplies properly from each other.

I could make an upgrade with a proper input and GND separation, but that requires a few more components. It seems like people would still want it, so I can look into making that upgrade when I have time..

E94daa465309437093290a6f99500f43?default=blank&size=40Ariel Drach commented ago

Hi I was following Louis Cypher comment about adapting your idea to work with Ramps 1.4.

Since my knowledge in electronics is limit It will be great if you can do this adaptations for the use Ramps users.

Thanks in advance,


53aadef7ba1b7b4983632a3d50494c19?default=blank&size=40Gerald D added this to the Things collection ago
3a0739ad46e6f3714aa628e92e98f05b?default=blank&size=40Len Jakes added this to the stuff collection ago
92b4a45e4ea7309dfebbc6eb092892cb?default=blank&size=40Alexander Johansen added this to the print collection ago
C547b810270b9980d0200c7f15c58e0a?default=blank&size=40ThomasBe added this to the tools collection ago
2a6f68a8ed18d684f906ff7451df5a40?default=blank&size=40Peter Bistricky added this to the Printer addons collection ago
Mini 295954 2186536775701 1015484836 32584192 3113001 nMorten S added this to the Gogogo collection ago
Mini sheepJonathan Bischof commented ago

They use a 25A MosFET. Which is... well... I used a 260A MosFET which may be a bit overkill - but the point is to get nearly 100% efficiency (no losses in the MosFET, no heat generated).

They could've taken a better mosfet and left the heatsink away instead. But - as usual - they just take the cheapest components available, or maybe just didn't think far enough to make a good product...

Mini sheepJonathan Bischof commented ago


There are no schematics so there is no telling what they put together there...

The fact that they need a heatsink means they either don't know what they're doing, or they chose a bad MosFET. Because a good MosFET does not get hot and does not need a heatsink.

Anyways, it looks like they're using an optocoupler to drive the FET which means it's probably isolated (probably! There is no telling without knowing the schematics...) which is better than my solution. Efficiency is probably worse - why else would they need a heatsink... And I don't see any ESD diodes (which is why that chinese stuff usually doesn't work reliably for a long time).

D9c36452d2096e870c1c7a1a91d4e2e5?default=blank&size=40troy@tronic.com.au commented ago

I ended up just using a DC-DC 3-32V Control 5V-110V 24-36V SSR. $15AU on ebay including Heatsink and thermal paste.


I put a fan on which i think was over kill as after a 2 hour print it was cool to touch. though cool things are reliable things.

Turned the 24v power supply to max of 28.5V and the SSR takes .3 so still getting 28.2 to bed. The bed gets to 170deg and 100deg in near nothing.

That is unless you have a Ultimaker where this rocks. I should have read more before making one. If you in Melbourne Aus I have one if you want it.

Fe85cd7cfdbb4bfbd5e383ca9f654587?default=blank&size=40Marius Ioana commented ago

Is this something like what you have designed?

I'm lazy.. but if you tell me that yours is better i will do yours.

Thank you


29e10664e39f3e10a1784222b805579c?default=blank&size=40sadkins1981 added this to the 3D Printer collection ago
Ba2dfb12d93b502c89b217fbec54a300?default=blank&size=40perlguy added this to the Ultimaker collection ago
Mini sheepJonathan Bischof commented ago

Solid state relays suck. They are expensive and have a very high on-state resistance compared to my simple and cheap mosfet. They do have the advantage of being well protected and universally usable (if they're good quality).

As for the switching question:

The answer is simple - it's cheaper and easier to switch the low-side. An N-channel mosfet (which is the simple and cheap part with high performance) can only be used as a low-side switch. If you wanted to switch the high-side, you would need a P-channel mosfet. These are usually more expensive, have higher on-resistances and it takes a bit more thinking to be able to use them correctly (usually you would need an N-channel mosfet to switch that P-channel mosfet).

Nowadays there are lots of good and relatively cheap P-channel mosfets. But that hasn't always been the case. If you look at some reprap designs or other stuff, you can see that people are sometimes still using bipolar tranistors which is stone-age technology. Sometimes, new technologies take a long time to actually be used by the average engineer / hobbyist...

D9c36452d2096e870c1c7a1a91d4e2e5?default=blank&size=40troy@tronic.com.au commented ago

Thank you for the reply.

How come you didn't just use a solid state relay?

Also on a side note. Why would you switch the ground instead of the active side. I have seen this a lot lately in things such a my daughters electric car. Everything is ground switched and a time is perminatly connected.

Mini sheepJonathan Bischof commented ago

Update: I corrected the schematics as per my comment below.

Mini sheepJonathan Bischof commented ago

Hi Troy,

If you're using anything else than the UMO electronics, you have to make sure that your board is built the same way as the UMO.

The UMO hack is really just that - a hack for the UMO. It's not a good design, it's not flexible, not universal. It only works for output stages that switch the negative line, not the positive line (It's incorrectly named in my schematics, "Bed Signal" should be "V+ UMO" and "GND" should be "Bed Signal").

If you have a lower control signal voltage, then you have to adjust the voltage divider R2 and R3 to be ~10V again. Also, the LED's dropping resistor (R1) should be adjusted so that it's not too dim or bright.

For 28.8V, you would also need to use higher-voltage ESD protection diodes (D1 and D2), since the current ones are designed for 24V (or lower) operation.

D9c36452d2096e870c1c7a1a91d4e2e5?default=blank&size=40troy@tronic.com.au commented ago

Does it matter what the input and output voltages are for this unit?

As my current output from the GT2560 is 12v and want to run the heat bed at 28.8v. It's a 24v power supply and bed but at power supply max of 28.8 is gets to 160deg and heats to 100 in a minute.


9f7492d746be93ec373cab498dc8e31e?default=blank&size=40Dan Delaney (loclhst) added this to the Printer Upgrades collection ago
Mini lisca mangaLisca added this to the 3D Printer Parts collection ago
32957784653e41b98a697a5bc0149965?default=blank&size=40ssavov added this to the To Do collection ago
Mini sheepJonathan Bischof commented ago

You can't use this for anything else than what the description says. You can't use the same PSU because the mosfet works by switching the GND side of the wire, thus needs to be able to sever the GND connection from one PSU to the other.

You could just remove the connector and solder the wires to the board directly. That "should" get rid of the excessive heating.

Aa9c783b67413046b5bdb590f1422111?default=blank&size=40erocker88 commented ago

Is it really necessary to use different power supplies? Using a Ramps board and my PSU can provide enough power for the bed. I'd like to make this because the connector gets too hot.

Mini sheepJonathan Bischof commented ago

Just as a comparison:

A 0.4mm diameter wire (corresponds more or less to the thinnest THT "legs") has a copper cross section of 0.5 mm2.

That corresponds to a 14mm wide copper trace on a standard 35um PCB, and we're talking about the thinnest wires on THT parts. The power components in my board use 2x 0.7mm (or maybe they're even thicker) wires as traces. This is much more than could be achieved even with thicker copper cladding on standard PCBs.

Mini sheepJonathan Bischof commented ago

Interesting technique. For some people it might be easier to use the diode laser instead of a traditional UV light & acid bath. Can't help you with the result, I've never made PCBs this way. I suppose you either put it into the acid too long, or your foil suffered a bit from the laser cutting. With UV & bath, it looks a bit better. But you can't get very good results this way.

The achievable resolution will never be good enough for fine-pitch SMD boards. But then again, these need to be multilayer in almost every case anyways, so don't bother...

What I like about my 3D-printed circuit board is the fact that you can put in really heavy duty "traces". One of those 0.7mm diameter diode legs has a huge copper cross section compared to a 35um PCB trace. So, for those crude, but heavy duty designs, this method is really cool. (pun intended)

D66f7fffca120869ccf379239320fdd8?default=blank&size=40obor added this to the printer3d collection ago
4ec2727e7e8d55bb01c46f0c608107d8?default=blank&size=40Vladaz320 added this to the 3d collection ago
B236ffc98e4aff5bb419036342c3ef76?default=blank&size=40Charlie Fenwick added this to the mMy Prints collection ago
873cffef63319f9b61db5dbd4c0c2d2e?default=blank&size=40nickyp added this to the Cool collection ago
396e53047db5fedbd8c27c2ef7509f97?default=blank&size=40drofnas added this to the Electronics collection ago
40ce10047e0a86a385fd7533aefdf33c?default=blank&size=40putersdcat added this to the ThingsForReference collection ago
Mini sheepJonathan Bischof commented ago

Hi Markus,

Using an optocoupler is exactly what you need to do in your case. My design was always meant to be a fix for Ultimakers - not a universal solution for connecting heated beds.

The key of my design is to keep things simple, which is why I didn't isolate the power domains.

You're welcome to make a fork and extend the design.

A hint on optocouplers and mosfets: Optocouplers are current amplifiers, they work best when there is some minimal amount of current flowing. A mosfet gate however draws almost no current at all. You might need to add a small load (maybe 1 mA? - see optocoupler datasheet) to the optocoupler's output in order to make everything work reliably.

Best regards,


55f3329613c4da5052af51fa3ce716b5?default=blank&size=40RickP added this to the Rick's Picks collection ago
72931c78d772df85b5419b3fc653e4d8?default=blank&size=40Louis Cypher commented ago

Thanks for the great idea. I built this setup and found out that I should have read your instruction more thorough. At least with a RAMPS board the heatbed is on all the time. The reason is that the the MOSFET on the RAMPS switches the lowside. If input and output use the same ground connection the voltage between the highside on the RAMPS connection opens the gate even in case the MOSFET on RAMPS switches off.

My suggestion (tested) is to use a cheap optocoupler such as VISHAY 4N35 to separate grounds. You can use the highside (connected to PIN1) of the input as input for PIN 5 (input of the gate) and connect PIN 6 to the gate (of course needs a resistor to limit current 1k did the job for me). PIN2 gets connected to ground via a 4k7 resistor or the like. Maybe you want to update your design. In case not I can make a branch.



76652674c3ddbb662044858c1baa3c79?default=blank&size=40dintid commented ago

Hello Jonny. Very nice Work. I was planning on using a couple of these in an UM2 clone Im Building. I have a rather beefy 12v PSU at 45amp and was planning to use 12v to Ramps, use up-amp to get 24v and use 3 of these converters to control Heated be and 2x nozzles.

... untill I read your final warning about having to use a seperate PSU for this.

Does it mean I can use the same PSU for all the parts? Asking to make sure, as a friend of mine firmly believed I could, but I understand it otherwise, so I'd rather ask to be safe and try and be sorry.

Hope you are still active here :)


Morten - Denmark

349d81a6e74cfa60ba07a6b52882d559?default=blank&size=40RealityInc commented ago

I believe that there will be a printer capable of printing and laying down conductive material quite soon ;)

Mini sheepJonathan Bischof published this design ago