DRV8833 motor driver weak or hot: supply range, current limit and stall

Check the motor current against the driver rating. Stalled motors draw far more than running ones.

What the message means

The driver has limited current per channel and shuts down when it overheats or when the current limit trips.

Fix it in this order

  1. Read the stall current of the motor and compare with the driver rating.
  2. Keep the supply within the range given in the driver datasheet.
  3. Add a bulk capacitor near the driver.
  4. Use both channels in parallel only if the board allows it.
  5. Add a heatsink or airflow for continuous load.
  6. Use a larger driver for big motors.

Why it happens

The DRV8833 is a small dual driver. The Texas Instruments datasheet rates the DRV8833 at 1.5 A RMS per bridge (2 A peak) in the PWP and RTY packages at 25 °C, and only 500 mA RMS in the PW package, so check which package your module uses. In practice, cooling decides what you get: Pololu reported that 1.5 A per channel tripped thermal protection after about a minute with no airflow, while 1.2 to 1.3 A was sustainable. A motor that draws more than that makes the chip hot, and a stalled motor trips its protection. The nSLEEP pin must also be held high for the driver to work.

Measure the motor current, use a motor that stays within the limit or a bigger driver, keep nSLEEP high, and check the datasheet values for your module.

If you see this, do this

You seeDo this
Motor weak, board hotOver current.
Motor stops then restartsThermal or current limit.

TB6612 checks, L298N supply.

Last reviewed: November 2026. These are the usual causes and the order that finds them fastest. Test on your own board; clones and cables differ.

Why this happens

The DRV8833 has two H-bridges built from MOSFETs. Every amp through a bridge heats the chip in proportion to the current squared times the on-resistance of the two transistors in the path. The datasheet motor supply range is 2.7 to 10.8 V. The chip has thermal shutdown and an overcurrent function, and when either acts the outputs switch off for a moment, so the motor seems to stop and then restart.

A stalled motor is limited only by its winding resistance. A 6 V motor with a 4 ohm winding would draw 6 / 4 = 1.5 A when held still, much more than the free-running current. Many hobby modules also connect the ISENSE pins to ground, which disables the adjustable current limit, so check your module. Module boards and package types differ, and the continuous rating depends on the package and the cooling.

How to confirm the cause

  • Find the stall current of the motor from its datasheet, or calculate it as supply voltage divided by winding resistance measured with a multimeter.
  • Measure the motor current with a bench supply display or a meter in series on the 10 A range, holding the shaft for one second only.
  • Measure the voltage at the VM pin of the driver while the motor runs. A drop below the motor’s rated voltage means the supply or wiring is weak.
  • Check nSLEEP and, if available, nFAULT. nFAULT is open-drain and goes low when the chip reports a fault.
  • Touch the chip after a short run (with care). A chip too hot to hold for a second is above its limit.

Worked example

An estimate for a small gear motor. All numbers are examples; use your own motor data.

Motor rated voltage        : 6 V
Winding resistance (meter) : 4.0 ohm
Stall current              : 6 / 4.0 = 1.5 A
Free-run current (datasheet): 0.15 A (example)
Driver rating (your pack)  : check datasheet, for example 1.5 A RMS per bridge
Result                     : stall hits the limit -> add a current limit
                             in code or choose a larger driver

Common mistakes

  • Leaving nSLEEP unconnected or low.
  • Using a supply above the range given in the datasheet.
  • Running the motor stalled during tests, which heats the driver quickly.
  • Expecting a module to deliver the peak current number as a continuous figure.
  • Not placing a bulk capacitor close to the driver, which lets supply spikes reach the chip.

If this did not fix it

  • Check the battery. A weak pack sags at motor start and resets the controller, which looks like a driver fault.
  • Check the motor for mechanical binding or a dry gearbox, which raises current.
  • Check the PWM frequency and the decay mode your library uses, as they change the heating.