ESteps: The first step in dimensional accuracy.

Many people are happy with the results they get from their machines, but sometimes things are a little off. An articulated dragon that won’t articulate, castle walls with layer gaps, press fit objects that don’t fit. These are usually extrusion issues where there is either too much or not enough filament coming out of the nozzle.

There are actually a number of reasons why prints turn out that way, but in this discussion we are going to talk about stepper motors and what ESteps are, because those are the most likely cause of your printing issues if you are new to 3D printing.

Stepper motors move in steps of precise movements. Most 3D printer stepper motors are 1.8 degree motors. That means they take 200 steps to travel 360 degrees. A 0.9 degree motor would need 400 steps, but those are not typically stock on 3D printers. They are an interesting upgrade I will discuss in a future post. For the purpose of this post I will be talking about 1.8 degree motors.

The type of extruder you have can affect how many steps are needed to extrude the requested amount of filament. Bearing and gear extruders such as what are often found on Creality products are usually 93-96 ESteps. Many dual geared extruders are usually around 136-139 ESteps. They require a different number of ESteps to extrude 100mm of filament because one has more friction from being dual geared so it needs more ESteps.

To properly do your ESteps, you have to have a connection to a computer or other means of reading a gcode response. I have discussed both in previous posts, so for our purposes today we turn on our printers, plug in the USB connection to your computer and we will be opening up PrintRun (Pronterface). Once open we wil click connect and in the gcode input box type: M503

After clicking send, lines of information will be displayed. You are looking for M92 X??? Y??? Z??? E???, where ? represents the value returned on screen. You want the E value, that is your initial ESteps.

Your next task is to remove the Bowden tube or other connectors at the extruder. We are only measuring the extruder here, which is why we don’t want anything else connected to the extruder. In PrintRun heat up your printer to at least 180 C (It will not extrude if it is not heated), and tell it to extrude some filament. Slice this off cleanly at the exit of the extruder with a razor blade. Extrude 100mm and cut it off the same way.

Now tape the filament flat to a surface and measure it using digital calipers. You are going to take your intial ESteps, and this measurement with a calculator to determine your new ESteps. I really like the ESteps calculator found here:

Take the “Serial command to change ESteps” and put it into the gcode input box in Pronterface, then click send. After that type M500 in the input box and click send. This saves the value in your printer’s EEPROM. Type M503 and then send to confirm that the M92 values now reflect your new EStep value. Repeat the measurement to confirm that you are now extruding 100mm of filament.

My ESteps video on my YouTube Channel can be found here:

This article is writen by Keith.Thanks a lot for sharing it with LOTMAXX. 

3d printing3dprint3dprinter

Leave a comment