This discrete MOSFET H-bridge motor driver enables bidirectional control of one high-power DC brushed motor. The small 1.3″ × 0.8″ board supports a wide 6.5 V to 30 V voltage range and is efficient enough to deliver a continuous 17 A without a heat sink. Additional features of this second-generation (G2) driver include reverse-voltage protection along with basic current sensing and current limiting functionality.

Overview


The Pololu G2 high-power motor driver is a discrete MOSFET H-bridge designed to drive large brushed DC motors. The H-bridge is made up of one N-channel MOSFET per leg; the rest of the board contains the circuitry to take user inputs and control the MOSFETs. The absolute maximum voltage for this motor driver is 30 V, and higher voltages can permanently destroy the motor driver. Under normal operating conditions, ripple voltage on the supply line can raise the maximum voltage to more than the average or intended voltage, so a safe maximum voltage is approximately 24 V.

Note: Battery voltages can be much higher than nominal voltages when they are charged, so the maximum nominal battery voltage we recommend is 18 V (and use with 24 V batteries is not recommended) unless appropriate measures are taken to limit the peak voltage.

The versatility of this driver makes it suitable for a large range of currents and voltages: it can deliver up to 17 A of continuous current with a board size of only 1.3″ × 0.8″ and no required heat sink. The module offers a simple interface that requires as few as two I/O lines while still allowing for your choice of sign-magnitude or locked-antiphase operation. A current sense output gives an indicator of motor current, and the driver can limit the motor current to a configurable threshold. The power supply inputs feature reverse-voltage protection, while integrated detection of various fault conditions helps protect against other common causes of catastrophic failure; however, please note that the board does not include over-temperature protection.

The G2 High-Power Motor Driver 18v17 is a second-generation successor to our original High-Power Motor Driver 18v15 and can be used as a near drop-in replacement in typical applications. See “Differences from original high-power motor drivers” below for more details.

Features

  • Operating voltage: 6.5 V to 30 V (absolute maximum)
  • Output current: 17 A continuous
  • Inputs compatible with 1.8 V, 3.3 V, and 5 V logic
  • PWM operation up to 100 kHz
  • Current sense output proportional to motor current (approx. 20 mV/A; only active while H-bridge is driving)
  • Active current limiting (chopping) with default threshold of 40 A (can be adjusted lower)
  • Reverse-voltage protection
  • Undervoltage shutdown
  • Short circuit protection

Using the motor driver

Connections

The motor and motor power connections are on one side of the board, and the control connections (1.8 V to 5 V logic) are on the other side. The motor supply should be capable of supplying high current. There are two options for making the high-power connections (VIN, OUTA, OUTB, GND): large holes spaced 5 mm apart, which are compatible with the included terminal blocks, and pairs of 0.1″-spaced holes that can be used with perfboards, breadboards, and 0.1″ connectors.

For good performance, it is very important to install a large capacitor across the motor supply and ground close to the motor driver. We generally recommend using a capacitor of at least a few hundred μF and rated well above the maximum supply voltage; the required capacitance will be greater if the power supply is poor or far (more than about a foot) from the driver, and it will also depend on other factors like motor characteristics and applied PWM frequency. A through-hole capacitor can be installed directly on the board in the holes labeled '+' and '−' (connected to VM and GND, respectively). The driver includes an on-board 150 µF capacitor, which might be sufficient for brief tests and limited low-power operation, but adding a bigger capacitor is strongly recommended for most applications.

Warning: Take proper safety precautions when using high-power electronics. Make sure you know what you are doing when using high voltages or currents! During normal operation, this product can get hot enough to burn you. Take care when handling this product or other components connected to it.

The logic connections are designed to interface with 1.8 V to 5 V systems (5.5 V max). By default, the driver is in a low-power sleep mode; the SLP pin should be driven or tied to a logic high voltage in order to enable the driver. In a typical configuration, only two other pins are required: PWM and DIR.

Motor control options

With the PWM pin held low, both motor outputs will be held low (a brake operation). With PWM high, the motor outputs will be driven according to the DIR input. This allows two modes of operation: sign-magnitude, in which the PWM duty cycle controls the speed of the motor and DIR controls the direction, and locked-antiphase, in which a pulse-width-modulated signal is applied to the DIR pin with PWM held high.

In locked-antiphase operation, a low duty cycle drives the motor in one direction, and a high duty cycle drives the motor in the other direction; a 50% duty cycle turns the motor off. A successful locked-antiphase implementation depends on the motor inductance and switching frequency smoothing out the current (e.g. making the current zero in the 50% duty cycle case), so a high PWM frequency might be required.

 

PWM frequency

The motor driver supports PWM frequencies as high as 100 kHz, but note that switching losses in the driver will be proportional to the PWM frequency. Typically, around 20 kHz is a good choice for sign-magnitude operation since it is high enough to be ultrasonic, which results in quieter operation.

A pulse on the PWM pin must be high for a minimum duration of approximately 0.5 µs before the outputs turn on for the corresponding duration (any shorter input pulse does not produce a change on the outputs), so low duty cycles become unavailable at high frequencies. For example, at 100 kHz, the pulse period is 10 µs, and the minimum non-zero duty cycle achievable is 0.5/10, or 5%.

Current sensing and limiting

The driver’s current sense pin, CS, outputs a voltage proportional to the motor current while the H-bridge is driving. The output voltage is about 20 mV/A plus a small offset, which is typically about 50 mV.

The CS output is only active while the H-bridge is in drive mode; it is inactive (low) when the driver is in brake mode (slow decay), which happens when the PWM input is low or when current limiting is active. Current will continue to circulate through the motor when the driver begins braking, but the voltage on the CS pin will not accurately reflect the motor current in brake mode. The CS voltage is used internally by the motor driver, so to avoid interfering with the driver’s operation, you should not add a capacitor to this pin or connect a load that draws more than a few mA from it.

The G2 driver has the ability to limit the motor current through current chopping: once the motor drive current reaches a set threshold, the driver goes into brake mode (slow decay) for about 25 µs before applying power to drive the motor again. This makes it more practical to use the driver with a motor that might only draw a few amps while running but can draw many times that amount (tens of amps) when starting.

The current limiting threshold is set to about 40 A by default. You can lower the limit by connecting an additional resistor between the VREF pin and the adjacent GND pin; the graph below shows how the current limit relates to the VREF resistor value. For example, adding a 100 kΩ resistor between VREF and GND lowers the current limit to approximately 24 A. Note that the current limiting is less accurate at especially low settings (indicated by the dashed portion of the curve).

Fault conditions

The motor driver can detect several fault states that it reports by driving the FLT pin low; this is an open-drain output that should be pulled up to your system’s logic voltage. The detectable faults include short circuits on the outputs, under-voltage, and over-temperature. All of the faults disable the motor outputs but are not latched, meaning the driver will attempt to resume operation when the fault condition is removed (or after a delay of a few milliseconds in the case of the short circuit fault). The over-temperature fault provides a weak indication of the board being too hot, but it does not directly indicate the temperature of the MOSFETs, which are usually the first components to overheat, so you should notcount on this fault to prevent damage from over-temperature conditions.

Real-world power dissipation considerations

The motor driver can handle large current spikes for short durations (e.g. 100 A for a few milliseconds). The peak ratings are for quick transients (e.g. when a motor is first turned on), and the continuous rating of 17 A is dependent on various conditions, such as the ambient temperature. The actual current you can deliver will depend on how well you can keep the motor driver cool. The driver’s printed circuit board is designed to draw heat out of the MOSFETs, but performance can be improved by adding a heat sink.

Warning: This motor driver has no over-temperature shut-off. An over-temperature or over-current condition can cause permanent damage to the motor driver. You might consider using either the driver’s integrated current sense output or an external current sensor to monitor your current draw.

Included hardware

Two 8-pin straight breakaway male headers and two 2-pin 5mm terminal blocks are included with each motor driver. You can solder the terminal blocks to the four large through-holes to make your motor and motor power connections, or you can solder one of the 1×8 0.1″ header strips into the smaller through-holes that border these larger holes. Note, however, that the terminal blocks are only rated for 16 A, and each header pin pair is only rated for a combined 6 A, so for higher-power applications, thick wires should be soldered directly to the board.

The other 1×8 header strip can be soldered into the small holes on the logic connection side of the board to enable use with solderless breadboards, perfboards, or 0.1″ connectors, or you can solder wires directly to these holes for the most compact installation.

Note: In most applications, it is necessary to connect an additional large capacitor (not included) across the power supply, as described under “Connections” above.

The board has two 0.086″ (2.18 mm) diameter mounting holes intended for #2 or M2 screws (not included); they are separated by 0.62″ (15.75 mm) both horizontally and vertically.

Differences from original high-power motor drivers

The G2 high-power motor driver is designed to work as a near drop-in replacement for our original high-power motor drivers; this version, the 18v17, is comparable to the original 18v15 but can provide higher output currents in most situations. The overall board dimensions and locations of the mounting holes and all required pins are the same for both versions.

This second-generation driver adds new features including reverse-voltage protection on the power supply inputs and basic current sensing and current limiting functionality. It also works with lower logic voltages, making it compatible with 3.3 V systems; however, note that it has a slightly higher minimum motor supply voltage than the original HPMD (6.5 V vs. 5.5 V).

The pinout of the G2 driver differs from the original in several ways:

  • The SLP pin must be connected to logic high to enable the G2 driver. (The corresponding RESET pin on the original driver could be left disconnected if unused.)
  • The G2 driver has only one fault pin, which is an open-drain output that is driven low when a fault occurs. (The original driver had two fault pins that were driven high to indicate faults.)
  • A current sense output is available on the G2 driver in place of the second fault pin.
  • A new VREF pin and adjacent GND pin let you connect a resistor to adjust the G2 driver’s current limit.
  • The G2 driver provides a 3.3 V output instead of the original driver’s 5 V output.

G2 high-power motor driver versions

There are currently two versions of the G2 high-power motor driver, both with the same pinout.

 


We Also Recommend