Weak performance

hi all,

first time posting stuff here, please excuse me if anything is not properly done. Also the first time building a cnc machine.

at this point in time I am able to drive my mpcnc by computer. The issue is that I can stall it (x and y motors missing steps) by 1 finger. If I set the drivers at 1.25V (hot) it sort of performs cutting wood, Motors stay cold. Drivers calculated according to Chinese motor spec should be 0.34(*2), at this setting the mpcnc can not cut anything, it can move around in the air… Im lost!

I have been tuning the following:

belt tension up and down (dimensioning does change), stepper drivers (0.34v to 1.25v), aligning gantry, bearing tightness, 1/16 and 1/8 stepping,


1m X 1.5m x 0.3m, motors 17HS8401S (1.8degr, 1.5A, 1.8ohm, 52Ncm), belt GT2 (16teeth), power 12V 6A, Ramps 1.4, Arduino mega, drivers A4988, estlcam v10, 3200 steps per rev, 32mm per rev

help is very welcome!

cheers, Joost

trim.0D6C632E-7F10-404A-A920-56318F2A72AA.mov (2.63 MB)

1 Like

Don’t use Estlcam firmware, go back to marlin. Estlcam is only used for generating gcode.

Hey Ryan,

thanks for your quick reply. I went back to marlin (downloaded from v1engineering), the problem persists. At 0.68V the gantry doesnt even move. Above 1V it does, but is stopped easily as shown in the movie.

I also notice that the z axis Movement is larger than the input by jog dial.

could it be ‘fried’ stepper drivers? Or are the still working, as I can set the V? Do you have other suggestions? I would appreciate them a lot!!


That means incorrect z steps in the firmware, probably means the rest are wrong as well. Pulley tooth count? allthread or T8?



Hi Ryan,

i was assuming that the firmware had the right settings. Of course the firmware doesn’t know what drivers(settings/ stepping) I am using. I changed the firmware to x and y 100 steps/mm and z to 400 steps/mm. Travelled distances seem ok now. (T8, 16 teeth, 1/16 microsteping) The rest of the settings I left as is.

the weak performance persists. Marlin and estlcam both give the same performance for now. I have 2 sets arduino mega, ramps and a4988 drivers. Alle have been exchanged back and forth, no difference. Arduino uno is on its way, just to be sure.

Although the accumulated weight of the gantry is quite heavy, I would say it moves smooth. When doing a simple test on the steppermotors, they lift 3kg of the ground (with 16teeth pully).

would you say I am having a software setting issue, an electronic hardware issue or an assembly issue? Any tips on how to proceed?

driver pics are attached.

very happy with the help I am getting!

For reference, I don’t know what I am aiming for;

i see people write that trying to stop an x or y axis can push them over. As you can see in the movie, mine can be stopped by one finger.

Can you give me an indication of what should be possible?

cheers, joost

Have you set up the current limit of your drivers properly?
the current defines how much torque your motors have.
You can find the manual here

Hi Felix,

i tried setting the pot on the drivers.

Vref= Itripmax8Rs (A4988 driver) 70%1.5A8*0.1=0.84V (for x and y *2) drivers get extremely hot, and cannot go above 1.28V.

(Steppen motor specs: 1.8degr, 1.5A, 1.8ohm, 52Ncm) If I calculate according to what I see on this forum VI/12; 1.5A1.8ohm=2.7V 2.7V*1.5A=4.05W 4.05W/12V=0.34A (for x and y *2)

two completely different numbers by different calculations. I tried from o.34 to 1.28 setting at the driver potmeter. Drivers get very hot at 1.28 and motor does not rise in temp. The x and y axis are stoppable by 1 finger.

i am completely lost


At this point I am lost. Are you wired in series or parallel, you should be in series. Loosen all the tension bolts on your build. All the other information is correct. at 1.28 your steppers should be extremely hot. You are using a49’s I can’t help you with those I have not used them in 5 years or so.

I am wired in parallel, can you tell me why It should be series?


Twice the power/half the heat. Similar reasons for using a DRV8825, less heat, higher power. Have a look through all of the links on the assembly page, there is an explanation for almost all my design choices there. Why did you choose the A49’s and parallel?


I Will get drv’s this week. Leave the wiring parallel for now, Or change to series anyway?

I got a4988 because i didnt know the downfall and because they were in the package.

the links i Will check out


Not a big deal, don’t bother.


Twice the power…probably best to change.


Understood, just know I chose all the parts I have in the lists for a solid reason. If you buy anything else best to match my choices unless you have a real good idea why you would change.

1 Like

I’m having the same issues as well. I have an Arduino CNC shield with stepstick a4988 1.5a model drivers. During testing I realised that this current was only just enough to give the steppers moderate torque. I realised there was no way these drivers could supply the steppers in parallel, so series wiring must be used.

However I’m still having the occasional mistracking errors so I’ve just gone back to basics connecting one stepper to the shield, cranking the current to max 1.5a (VREF 1.25v), setting the jumpers to full step and using a 14v PSU. I can still stall the stepper with my fingers, it’s not easy but can be done, so this is best case scenario, single channel full step, and can still be stalled with tight finger pressure. My electrical engineering friends recommend 24v might overcome the problem. I have a feeling that I might not be able to get around the limitations of the Stepstick A4988. The Pololu A4988 might be a better choice as it supports 2a current. This could explain why people are getting confused with the drivers as they are all called a4988 drivers, but there is a (stepstick) 1a, 1.5a and (pololu) 2a model. I’m guessing an 8825 or a tbs109 might be a better choice for the 5 stepper MPCNC.

My next option is to try higher voltage, I’m not sure how increasing the voltage can make up for lower current apart from the power formula w=va, so I’m increasing the wattage but I’m not sure how this helps the steppers. If this doesn’t work then I’ll be looking at getting new drivers.

Again connecting the steppers in parallel or series will half the wattage regardless, one way halves the current and the other halves the voltage.

Hopefully I’ll have some luck.


The good quality DRV8825’s work very well in series with large steppers. At 0.7 volts there is room to push harder but it is not needed.

No need to go through all of that, just get the recommended drivers and wire in the recommended series, 12V is plenty.

The downside to all of this is I do not sell them anymore as the quality has dropped drastically and finding a decent import DRV8825 is impossible. The last batch of 2000 I bought had to be returned, they simply did not work (the scary part is they had me ship them to another company and they intended on selling them anyway). This is why we switched to the ultimachine boards. Buying genuine pulolu 8825’s costs more than getting the better board with them built in, and then you get the added benefit of a better board design and digipots.

Rewired from parallel to series, big difference. Still stoppable by hand, but much more torque) A4988 set to 1V. Stepper drivers get hot, but I think it’s acceptable. Motors now get lukewarm (at parallel wiring they stayed cold)

these A4988 drivers do not go above 1.28V. Moreover they get really hot at this setting. Later this week I will get Chinese drv’s and an uno board. Hope the quality is good.

Let’s see what will come next…

I connected the motors to a CRO and proper variable PSU. Again full step single motor, the wave coming out of the drivers was nice and square, so there’s no issue there. However the drivers I have, which sound exactly like yours (VREF max is around 1.25v), limit the motor power to 6w. At 12v the shield was only pulling 0.5a, so I upped the voltage to 24v and the current dropped to 0.25a, I then dropped the voltage to 6v and the current went up to 1a. I’m not sure if increasing the impedance with the series wiring would cause the drivers to up the wattage but I’m seriously doubting the suitability of these stepstick a4988 drivers in a CNC application. It sounds like the Chinese 8825s aren’t much better. I might look at getting TB6600 drivers https://www.ebay.com.au/itm/1PC-TB6600-4-5A-Stepper-Motor-Driver-Controller-Module-Board-Brand-New/232741510863 and avoid the shield altogether. Either that or the tbs109 might be a good (although expensive) replacement for the 4988 or 8825. It’s just that 5 week wait for replacement drivers.

I’ll see if I can find the page with the new recommended electronics.


You can always get real pulolu’s, $8 each or less, both steppers wired in series (or dual endstop firmware) they have twice the power than we need.

I assure you there is no issue with the real ones…the imports have completely fallen off in quality. The other driver boards are a complete overkill and just add complexity.

A friend of mine has some spare DRV8825s, as he upgraded to TB6600 drivers. so I swapped out the a4988s for these. Apart from having difficulty reading the VREF (the 8825s need both logic power and motor power to calibrate them) I eventually set them to 1.2a and I cannot recommend using these drivers highly enough, they have resolved most of my mis-stepping problems, they run cool enough to set the idle timeout in GRBL to infinite, it’s impossible to move the carriage when the motors are engaged like this. When I ran the a4988s with infinite idle timeout, both the motors and the drivers would get extremely hot, and the Motors would hiss. With the 8825s the motors are hardly warm, only hiss when in a certain step phases, and the drivers do not get hot.

I also hadn’t re-tightened any of the nuts & bolts on the z-carriage since first assembling it, this has eliminated my deflection problems.

If you are having any problems with mis-tracking or motor stalling and are using A4988s get rid of them and go order some DRV8825s. (and just remember that the trim-pot is on the other side of the driver carriage, so don’t align using the pot location, double check using the ENABLE pin location)