or the past few weeks I've been trying to control a 48-volt DC motor with 4 12-volt batteries, an Arduino, and a mosfet. Even though the datasheet says it can run up to 60 volts and 110 amps, as soon as I hooked up my mosfet it got really hot and stopped ignoring commands from my Arduino and ran continuously.

After this I tried removing one of the batteries but after it's been hooked up to a different mosfet it works for 15 seconds or so, then the mosfet stops working. I'm just lost at this point. If anyone could help me with why the mosfets keep breaking I would greatly appreciate it.

Here is a link to the data sheet of my mosfets, IRF3205.


This is what my setup looks like.

enter image description here

Long story short my setup makes my mosfets super hot and makes them no longer functional and i would m like to know why.

  • 6
    \$\begingroup\$ Post a schematic of your circuit. \$\endgroup\$
    – Reinderien
    Commented Aug 28, 2017 at 15:14
  • 5
    \$\begingroup\$ Smells like the MOSFET is not fully on, include a link to datasheet of that MOSFET and draw a schematic which clearly shows how you control the gate of the MOSFET. \$\endgroup\$ Commented Aug 28, 2017 at 15:15
  • 9
    \$\begingroup\$ Probably your MOSFET needs 10V Vgs to turn on fully. Also the 110A may be a very optimistic rating compared to what the packaged device is actually safely capable of. You may need a heat sink. Finally, if your source is capable of high current (eg. lead-acid battery) the start-up surge alone could kill the MOSFET. \$\endgroup\$ Commented Aug 28, 2017 at 15:21
  • 1
    \$\begingroup\$ Without a schematic and spec sheets or at least the part name... all I can assume is either the parts hate you and spontaneously commit suicide, or else your circuitry is not appropriate or sufficient for the task in hand. \$\endgroup\$
    – Trevor_G
    Commented Aug 28, 2017 at 15:25
  • 4
    \$\begingroup\$ BTW you never mentioned the motor current.. and you have no fly-back diode protection across the motor. \$\endgroup\$
    – Trevor_G
    Commented Aug 28, 2017 at 16:56

2 Answers 2


There are some obvious problems with your circuit:

  1. You probably don't have enough gate drive voltage. Did you even look at the datasheet for the transistor you are using? If you had, you would have seen at what gate voltage it is intended to run at. Something rated for 60 V and 110 A almost certainly requires 12 V or so on the gate to get to the rated RDSON.

    With only partial gate drive of 3.3 or 5 V, the effective resistance of the FET is much higher. This causes it to dissipate enough power to heat up to the point of self-destruction.
  2. You don't have a flyback diode across the motor. There should be a diode in reverse across the motor. This is reverse-biased and does nothing when the motor is running normally. However, when you turn the motor off, it provides a safe path for the inductive kickback current. Without the diode when you try to switch off the motor, its inductance makes whatever voltage it takes to keep the same current running in the immediate short term. That means abusing the FET to the point where it conducts anyway, even though it is driven to off. That's bad for the FET.

OK, you say the motor runs at 26.7 amps, but you did not specify in which conditions. If this is a vehicle, it will draw a lot more current when starting or going uphill, for example. So you need to find out the maximum current the FET will have to handle. Without this it's difficult to size the MOSFET or choosing how many you will use in parallel.

For example if the motor draws 100 amps when it stalls, it's gonna be a different story, and some kind of overcurrent protection would be a plus! The circuit you needs depends heavily on this, so I can only give a generic answer.

the best way to make my mosfets stop going hay wire is to supply 10 volts to the gate? If so do you know if there is a way i get 10v out of the arduino

Yes, you either need a FET that will work with 4.5V gate drive ("logic level FET") or apply 12V gate drive to your FET.

This depends on switching speed required: if you use 25kHz PWM it will need to switch fast, not if you use say 100Hz PWM. Pending that information, I'll go "default" and suggets a simple circuit like this:


This level shifts the 0/5V into 0/12V to properly drive the FET, also the push pull transistors allow a substantial current to be driven into/from the gate, for speedy switching. Detailed explanations in the link.

  • \$\begingroup\$ You are not answering the question, this is off topic. \$\endgroup\$
    – MatsK
    Commented Sep 2, 2017 at 12:43
  • 1
    \$\begingroup\$ Odd. The answer is the simple driver circuit I linked to, which the OP needs. I would prefer to be more specific, but first he needs to tell about the max motor current... \$\endgroup\$
    – bobflux
    Commented Sep 2, 2017 at 19:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.