Cooling Fan MOSFET Driver
by Danjhamer, published
This is a MOSFET driver board to enable the control of a cooling fan from a Sanguinololu board using Sprinter firmware. I have included a protection diode and suppressing capacitor which is overkill if you are using a PC/GPU brushless DC motor fan but I wanted to make this drive general purpose for use in other expansion projects and experiments.
I also considered having this made by a PCB maker using SMD's but I would probably need to order a couple of hundred units to make it worth while as its such a small circuit. I think this would be a useful prototyping gadget for Arduino projects as well as 3d printer upgrades as it could be made really small using SMD's, small enough even to tuck inside a cable sleeve. I'd love to have a bunch of these in my tool box as it would save a lot of time faffing with breadboards when you just want to try something quickly. So if anyone else is interested in buying one or two let me know and if enough people show willing I'll advance the project.
I have refined the design of this driver and had some boards made up. It's an SMD design and I've made it as small as possible while still allowing various connector/wiring possibilities. I'm currently making it available as a kit as not everyone has the necessary materials to hand and it can be a pain trying to source one of a particular 0603 resistor.
If you'd like to purchase a kit from me please go to:
If you'd like just a board or a kit with slightly different parts let me know and if enough people ask for a particular packing list I'll make it available. The kit comes with a brief instruction card but I'm compiling more comprehensive instructions. As soon as they are done I'll upload them and some new photos. Meanwhile please check out my listing above.
Buy the way before anyone asks the supplied transistor is an IRLML0030TRPBF.
Recent Commentsview all
This works perfect with Repetier firmware 0.91 build 6+ on the Reprappro Huxley Melzi board.
I use the lower pins for the 5v pwm signal (pin 42 I think) and then configure feature fan for that pin :-)
The exact type of snubber circuit you use
depends on many things. The circuit on the Wikipedia page is a flyback circuit
so the current will reverse and the diode is configured to stop it. In my
circuit I wanted to absorb any back emf if a regular dc motor was used. My
circuit is only intended for current flowing in one direction, so any back emf
is directed back up to the high rail and impeded by the capacitor (reactance).
If a large solenoid was to be used with my circuit then additional emf
protection would be recommended. I hope this clearers things up for you however
this is a fairly big subject and emf protection depends on the situation. My
circuit is intended for connecting small motors etc. to Arduinos and the diode
and capacitor just add a little extra protection.
Liked Byview all
Give a Shout Out
1x RF540A MOSFET
1x 1N4001 Diode
1x 1K Ohm Resistor
1x 6.7K Ohm Resistor
1x 0.1uF Capacitor
1x 7 rows x 5 tracks Stripboard
1x 2way header 0.1ÃÂÃÂÃÂÃÂ¢ÃÂÃÂ¢ÃÂÃÂÃÂÃÂ¬ÃÂÃÂÃÂÃÂ male
1x 3way header 0.1ÃÂÃÂÃÂÃÂ¢ÃÂÃÂ¢ÃÂÃÂÃÂÃÂ¬ÃÂÃÂÃÂÃÂ male
Solder, Wire, Connectors etc.
Make up the PCB.
Coat circuit board both sides with hot melt but leave the MOSFETÃÂÃÂÃÂÃÂ¢ÃÂÃÂ¢ÃÂÃÂÃÂÃÂ¬ÃÂÃÂ¢ÃÂÃÂÃÂÃÂ¢s heatsink and the connection pins exposed.
Open up you arduino IDE, go to the pins file and scroll down to the motherboard 62 section.
Locate the FAN_PIN value, it should be -1, change it to 4.
Save, compile and upload the firmware to your Sanguinololu.
You can test your fan by sending the following commands:
M106 This will turn the fan on
M107 This will turn the fan off
M106 S127 This will turn the fan on at half speed.
(You can set any speed from 0 to 255)
There will be a cooling fan option somewhere in your slicing options. Use it and enjoy finer more accurate prints.
You must be logged in to post a comment.