I made a relay h-bridge by using two 40 amp single pole double throw relays. I used this h-bridge, and another, to each drive a wheel chair motor fused at 20 amps each. I control the direction of each motor via an arduino uno driving a few transistors that I use to drive the relay coils. Thus I am able to get four driving conditions(directions) by selecting the direction of the left and right motor.
*Forward(turn both motors clockwise in the same direction) *Reverse(turn both motors counterclockwise in the same direction)
*Left(turn left motor clockwise and the right motor counterclockwise) *Right (turn left motor counterclockwise and the right motor clockwise see image attached below.

This system worked fine, allowing me to drive a machine that the two motors propelled via each driving a wheel on each side of a four wheels cart. The two non driven wheels are caster wheels.

I then added N-mosfet low side switches to each motor relay h-bridge by removing the ground connection in the h-bridge and connecting these ground wires to the respective mosfet drains. See second image.

All worked well and I was able to PWM the motors for variable speeds. Now the last thing I wanted to add for this project was variable duty cycle, or different duty cycle, to each wheel. to run the motors at slightly different speeds so as to have the cart veer a little left or a little more right or to make larger arcing turns rather than the skid steer turns I was doing with the relay h-bridges. No mater what I tried it seems that while I send each motor a different Duty cycle, both mosfets/motors sync up i.e turn on at the higher duty cycle being sent to the n-mosfet feeding one side of the system.

Even if I stopped sending the one side pair of mosfets a gate signal(grounding the gate at the gate driver board) while sending the other pair of mosfets their pwm pulses, the pair not being sent any signals still turns on in sync with the PWM. Also, now that I run the motors via sending them different PWM duty cycles, I am getting mosfet failures every so often. I suspect that the driven mosfet is always inducing the non-driven mosfet side; how, I do not know. I am using 56 ohm gate resistors. Each motor is fused at 20 amps, I think the drawl per motor is between 10 -15 amps when riding on the ground. During this testing the cart is on a test stand free wheel spinning.

I have done everything I can think of via manipulation of the gates to no avail. The protection diodes are Shotcky diodes 30 amps each. I have a pair across each mosfet as they were dual anode single cathode 220 packages.

I suspect that I am losing mosfets when sending differing PWM signals because the induced turn on mechanism is not sharp or clean thus maybe sending the gate of the off mosfet into the linear region although all visually looks good with motors turning in sync, although each should be doing their own thing(turn rate. I am using the Arduino Uno, PWWM is on pin 10 and 11(different timers), 500 hz.

I am looking a this as being a circuit problem. I am using a logic mosfet part number FKI06269 (60 volts, 24 amps). Two in parallel on the low side for each motor.

The motor drive protection diodes and mosfets sit on a solderable perf board about 2.5 feet from the arduino. I am using 14 gauge wire to this board for most connections but the gate drives feeds are 22 gauge. I use individual wire feeds for the left side motor protection components and the right side motor protection components as well as the left mosfet drivers and the right mosfet drivers. I am using 5 k ohm pull down resistors on each gate but have gone as low as 500 ohms when trying to eliminate my problem. While the drawing represents the circuit I understand the pull down resistors are not shown.

If someone can give me their thoughts on what the problem is, or may be, I would appreciate the insights.

Thanks, D

enter image description here

enter image description here

  • \$\begingroup\$ I don't see any gate-to-ground resistors on PWM "A" and PWM "B" nets. Are they missing in schematics only, or in reality too? \$\endgroup\$ Commented Jul 27, 2018 at 1:05
  • \$\begingroup\$ There too many missing design protections from BEMF and cross conduction deadband and power loss. Buy a proper designed MOSFET H bridge motor controller for >50A is my advice and analyze it. \$\endgroup\$ Commented Jul 27, 2018 at 2:09
  • \$\begingroup\$ Hi Ali Chen, The pull down resistors between the gates and ground, are 5000 Ohms, but have tried down to 500 Ohms while trying to eliminate the problem. The gate drive series resistance is around 56 ohms but I have tried no series gate resistance to eliminate the possibility of the capacitance from the drain to gate spontaneously kicking the gate into conduction when the device is turning off its protection diode. Thank you for your help. \$\endgroup\$
    – user194569
    Commented Jul 27, 2018 at 2:38
  • \$\begingroup\$ Hi Tony EE rocketscientist, Thank you for your help. I have installed protection diodes across the relay h-bridge and across the low side n-channel mosfets. the part number is MBRF30200CT, they are SCHOTTKY 200V 30A diodes. If you know of other back EMF protections that are a probable issue causing the problem I am having that I have not addressed, please let me know what they are if you can. Thanks, D \$\endgroup\$
    – user194569
    Commented Jul 27, 2018 at 2:45
  • \$\begingroup\$ Are there actually two separate batteries, as you schematic shows, or are you using a single power source? If that is the case, you need an isolation circuit, e.g. L-C filter, between each device and power. \$\endgroup\$ Commented Jul 27, 2018 at 4:33

1 Answer 1


SHow a photo of your wiring.

With 20 amps switching in 20 nanoseconds (assume that), inductively coupled across 1cm distance to a 10cm by 1cm loop, the induced voltage is

Vinduce = 2e-7 * Area/Distance * dI/dT

Vinduce = 2e-7 * 1cm*10cm/1cm * 1e+9amp/sec

Vinduce = 2e-7 Henry/meter * 0.1meter * 1e+9 = 2e^(-7 -1 +9) = 20 volts

How about some photos of your wiring.

  • \$\begingroup\$ Hi Analogsystemsrf, Thank you for you help. No photos available. Presently the wiring is not neat, optimized or laid out well. I understand the induction introduced by poorly laid wire runs being excessively far from the control circuitry is likely causing oscillations that can be responsible for the problems I am having. Thank you for asking about this condition as it likely is one of the main culprits causing or contributing to the problem. I will see what I can be to make the wiring less inductive, cleaner and shorter by mounting the control circuitry closer to the low side mosfets. \$\endgroup\$
    – user194569
    Commented Jul 27, 2018 at 16:00
  • \$\begingroup\$ Hi Analogsystemsrf, Thank you for your help. I forgot in my last response to your post, to reiterate that the PWM is 500 Hz or 2 Milli seconds. \$\endgroup\$
    – user194569
    Commented Jul 27, 2018 at 16:04

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.