I'm tying to understand boost and buck converter designs. Recently I made a prototype of a simple boost converter, used this as a reference. Used parts are as follows:

  • Transistor - IRF3205
  • Diode - STPS1545CT
  • Inductor - T80-6 core with 25 windings of 1mm wire.
  • PWM Source - Arduino Leonardo

PWM Duty cycle is set to 60%, frequency 70kHz.

It boost 12V input up to 40V. But transistor dissipates to much heat. Are there any issue I have to take into account? What is the reason for such power dissipation?

  • \$\begingroup\$ Mayve tge arduino can't provide a proper Vgs, the mos is not fully on and dissipates quite a bit. Can you possibly scope the mos gate terminal? \$\endgroup\$ Apr 18, 2015 at 10:57

1 Answer 1


You have not mentioned it, so I'd guess you're driving the MOSFET directly from the Arduino. That alone would explain the large dissipation, as an MCU GPIO pin is simply not powerful enough to drive a power MOSFET directly. The IRF3205 is a non-logical-level MOSFET, so even the driving voltage alone may be insufficient (logical-level MOSFETs can be driven from 5V, non-logical-level MOSFETs are usually specified to be driven from at least 8-10V). But for high frequency driving, the gate also needs to be charged and discharged reasonably fast, and in case of power MOSFETs switched on and off tens or hundreds of thousands per second that needs a driver capable of sending driving current on the order of Amps. An MCU output is simply not powerful for this, so the gate voltage will not transition fast enough, and the MOSFET will spend most of its time somewhere in between the fully open and fully closed states. The solution is to use a MOSFET driver between the GPIO pin and the MOSFET gate. You'll also need a proper power supply for the MOSFET driver, in the range of 8..12V, for this MOSFET type. You might replace the MOSFET with a logical-level MOSFET, then you may use your 5V supply, but you'll still need a MOSFET driver.

  • 1
    \$\begingroup\$ This is correct. Search for the Rds/Vgs curve in google and see what happens when you apply a certain voltage on the mosfet gate (the Resistenace between drain and source changes). The mosfets do need current to charge the gate capacitor, if your output (arduino) cannot provide enough current the capacitor will take longer to charge and thus the voltage on the gate will take longer to reach the desired level, this means that the mosfet will be in the ohmic region longer and increasing the power dissipation. The mosfet drivers can provide a lot of current to charge that capacitor. \$\endgroup\$
    – scrafy
    Apr 18, 2015 at 13:01
  • \$\begingroup\$ I tried with K15J60U, it has little bit lower drive voltage (but still needs to be improved). It heats a little bit. Is it possible to use ssomething similar to this? 256.co.uk/wordpress/wp-content/uploads/2014/03/… \$\endgroup\$
    – stardust
    Apr 18, 2015 at 15:39
  • 1
    \$\begingroup\$ I don't think 817 optocouplers are a good way to construct a discrete MOSFET driver. I'd suggest to use a standard IC-based one. If you really need to have the MOSFET on the high-side (I'm not convinced that it cannot be moved to the GND power line), you'll need a high-side (or a high-side + low-side) MOSFET driver (IRS2101 and similar). Otherwise cheaper low-side drivers can be used, Microchip for example has a large variety of them. \$\endgroup\$ Apr 18, 2015 at 17:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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