Question on Combination of Stepper Motor, PowerSupply and Driver

Hi everyone,

I'm working on a small project where I want to use a stepper motor. The project itself isn’t particularly significant, but I’ve only ever used simple servos before, so I thought this would be a great opportunity to learn. For this setup, I’m using an ESP32-S Dev Board from AzDelivery, as I had one lying around.

My Setup:

  1. Stepper Motor: NEMA17 127HS19-2004S1 (2A per coil).
  2. Power Supply: 12V, 3A.
  3. Driver: L298N (following this tutorial). Specs for the driver are available here.

I wired everything according to the tutorial:

  • A+ and A- to Out1, Out2.
  • B+ and B- to Out3, Out4.
  • 12V in and GND connected to the driver and microcontroller.

What Happened:
When I powered it up, the stepper motor just vibrated instead of turning, and the L298N driver board became extremely hot within 5 seconds. I immediately cut the power.

My Questions:

  1. Could the problem be with my power supply? It only provides 3A, but I assumed the motor would just run at reduced power if under-supplied. How could a weak power supply cause the driver to overheat? Would upgrading the power supply help reduce overheating?
  2. Is the L298N simply unsuitable for this stepper motor? I’ve read mixed opinions—some say it’s not designed for this type of motor, but there are many tutorials that suggest otherwise.

Additional Notes:
I’m aware that the L298N isn’t the most efficient driver, and I’m planning to order a DRV8255 and a stronger power supply. However, I’d like to understand what’s going wrong here so I don’t repeat the same mistake.

I’m still learning and don’t have a deep understanding of electricity, so any guidance or advice on improving my setup would be greatly appreciated.

Thanks in advance for your help!

That is because the L298 module has no current limiting function. It will apply the full 12V to each motor coil, so the current will be 12V/1.4Ω = 8.6A. When you get the DRV8825 you will see that you have to set the current limit for the motor, in your case 2A.

The L298 is not a stepper driver, it is an ancient, very inefficient brushed DC motor driver. You need a modern current limiting motor driver capable of handling the desired coil current.

Pololu has the best selection.

Hi!
Thanks for the quick replies!

I see, so basically the coil will to draw 8.6 A, when I supply 12V. Even though the motor is only rated for 2A?
So the driver overheats because it just can't provide the 8.6A the stepper wants to draw?

Just for understanding purposes: if I would want to use the L298N driver (I don't anymore), I would need a stepper that has higher internal coil resistance (6 Ω), so that 12V would make it draw 2A right?

Thank you,

A NEMA17 will overheat with 12V and 2A. A typical NEMA17 stepper with a 12V coil draws about 0.4A (per coil). But you will find very few such steppers. Modern steppers are low impedance steppers and need a current controlling driver.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.