Driver Circuit

I am making a bldc motor and attached is my 3 phase current driver circuit. A,B,C represents the phases of the motor (Y winded). The sockets behing the bjt's go into arduino micro-controller. The bjt's used are NPN 2n3904.

Top mosfets are P Channel's (FQP7P06) and bottom mosfets are N Channel's (IRF610PBF). My state machine is currently using no PWM (digitalWrite is being used).

Q. My N-channel's are really hot even with a 0.8Amps and motor is not working. I have checked my statemachine and circuit connections several times but I am not sure where I am going wrong. My hall sensors are positioned 60 degrees apart. VCC=6-12V depending on the current intake.

The link below was used as a reference for energizing the mosfets.

mosfet usage and p vs n channel

Your help would be much appreciated.

  • 1
    \$\begingroup\$ Could be a lot of reasons. But did you notice that the gate of N1 is not connected to anything? Is this the way the circuit was made? With N1 floating? Otherwise my guess would be that the gates are transitioning slowly due to the relatively weak 10k resistor. The NMOS can turn off quickly, but probably turns on slowly. The PMOS can turn on quickly, but probably turns off slowly. You deserve some points for posting a schematic with reference designators and providing a link. \$\endgroup\$
    – user57037
    Commented Mar 23, 2016 at 5:22
  • \$\begingroup\$ Hello, No This was a mistake in the schematic. The circuit was made correctly. I have a new question. Can you please look at it. electronics.stackexchange.com/questions/224758/… \$\endgroup\$
    – Rango356
    Commented Mar 26, 2016 at 7:59

2 Answers 2


The problem

The reason the N channel MOSFETs you have chosen get hot is because they have an abysmal on-state resistance:

At just 800 mA the transistors will dissipate about 1 W of heat. The power loss will quadruple every time you double the current (P = I²R).

Without a heat sink the thermal resistance from the junction to the atmosphere is about 62 °C/W, meaning that even 1 W will raise the junction temperature to 83 °C when operating at room temperature, which is why they are hot to the touch.


  • Aquire N channel MOSFETs better suited for the task. You need to switch low voltages (<30 V) and high currents (>5 A), yet you selected a high voltage low current MOSFET. Some suitable MOSFETs as an example: AON7752, AOD516, BSC886N03LS G, EKI04047. Note how the Rdson (on state resistance) is less than 10 milliohms (very low conduction losses), and the threshold voltage (Vgsth) is lower than 4V (important if the supply voltage in your circuit is low).

  • Get better P-channel MOSFETs. Although not as ill-suited to the task as the IRF610PBF is, the P channel MOSFETs you have chosen still aren't very good for what you are trying to use them for. Example: I80P03P4L_07-DS, AOI4185.

  • Heat sink the transistors if much heat is still produced. Be aware that the drains of the transistors are electrically connected to the cooling tabs, so you need to isolate them from each other.

  • If the transistors become much hotter at higher PWM frequencies you will likely want to add a proper push-pull gate driver. You can either design one yourself from discrete components or just buy a purpose made chip.

Don't just buy the parts I listed, search for suitable components using the parametric search tools that distributors such as Digikey, Mouser or Farnell offer. There are literally thousands of MOSFETs on sale to choose from.

  • \$\begingroup\$ "The power loss will increase exponentially with higher current." You mean quadratically ;) \$\endgroup\$
    – marcelm
    Commented Mar 23, 2016 at 12:33
  • \$\begingroup\$ @marcelm oops, thanks for correcting me. Fixed now. \$\endgroup\$
    – jms
    Commented Mar 23, 2016 at 12:58

Have you have checked the vgs voltage if it is sufficient as in case of inconsistency, the Rds on may cause an issue. Also try connecting vgs with some 10k resistor to ensure transition of gate on and off happens quickly.


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.