enter image description here

Software engineer dabbling in electronics here.

I created this circuit to control a linear actuator using the states: Full speed forward, full speed backward, and off.

The switches S1 and S2 are pins on a raspberry pi.

The MOSFETs T1 thru T4 are suitably rated N-channel MOSFETs.

M is a DC motor that can be driven with +12 V (forward) and -12 V (backward). Other speeds not needed.

R1 and R2 and 1M resistors to discharge the MOSFET gates.

All connections to the 12 V power supply go through a single fuse rated 3 A, the motor draws 2 A.

An interlock preventing the opening of both switches simultaneously with a bit of safety margin is implemented in software (not perfect but seems okay, a bug would blow the fuse preventing catastrophic failure).

I think this is okay, the resistance of each MOSFET is sufficient to keep each circuit closed when the corresponding switch is in the 'off' state.

But I'm green, did I miss anything?

  • \$\begingroup\$ Are your switches driven with PWM? Full speed, ok ... but within what time? Current may be too high ... \$\endgroup\$
    – Antonio51
    Commented Apr 17 at 12:06
  • 4
    \$\begingroup\$ you shouldn't ask for a review of a circuit without attaching the schematic. \$\endgroup\$
    – LordTeddy
    Commented Apr 17 at 12:35
  • 3
    \$\begingroup\$ "did I miss anything?" Yep the schematic you are referring to. \$\endgroup\$
    – Lundin
    Commented Apr 17 at 12:43
  • \$\begingroup\$ @Lundin Hahahaha. Yeah sorry. Fixed \$\endgroup\$
    – cmc
    Commented Apr 17 at 13:04
  • \$\begingroup\$ @Antonio51 The motor draws 2A at peak, and the mosfets are rated 50A. \$\endgroup\$
    – cmc
    Commented Apr 17 at 13:07

1 Answer 1


Basically it's highly naïve and fails to understand how a MOSFET works. The problem in a nutshell is that the upper MOSFETs are driven as source followers and, given that the gate voltage cannot be higher than 5 volts, then the source cannot switch to a voltage higher than 5 volts minus the gate-source threshold voltage. This means maybe 2 to 4 volts peak on the output.

It's not worth reviewing anything else about it because it'll perform so badly that it just isn't worth any more effort. Having said that, it's a regular rookie/newbie mistake so, you are in company.

  • \$\begingroup\$ So maybe the best solution is that they switch this with some "H bridge" motor driver IC with all of this built-in? Including overcurrent protection and other goodies like that. \$\endgroup\$
    – Lundin
    Commented Apr 17 at 13:28
  • \$\begingroup\$ @Lundin it's got to be the right one but yes, for sure. Or, depending on the MOSFET type they may get away with an 18 volt control signal. \$\endgroup\$
    – Andy aka
    Commented Apr 17 at 13:49
  • \$\begingroup\$ @Lundin I'll look up an H bridge IC! Rolling my own would be nice for learning reasons but is not required. Andyaka Thanks for the feedback! Holding back for now until I understand what you wrote \$\endgroup\$
    – cmc
    Commented Apr 17 at 14:24
  • \$\begingroup\$ @cmc just ask if something is not graspable. \$\endgroup\$
    – Andy aka
    Commented Apr 17 at 14:40
  • 1
    \$\begingroup\$ Oh I was going to edit this one, but a new one makes more sense. My currently favored idea: T1,T2 as p-channels driven by small N-channels, rest as-is, schematic coming up in new post. \$\endgroup\$
    – cmc
    Commented Apr 18 at 7:08

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.