What Is the Purpose of the Ender 3 (Pro/V2) Disable Steppers Command?

As there are a lot of actions that you can execute through the interface of your 3D printer, it’s only natural not to be familiar with every single one when you’re first starting, especially considering that some are designed for particular purposes that you won’t need on a day-to-day basis.

On the other hand, familiarizing yourself with the interface of your 3D printer as much as possible will allow you to have a better understanding of what’s possible and what’s not, which makes the process of 3D printing, especially when the necessity for troubleshooting arises, a lot easier.

Today, we will be taking a look at one of the lesser-used but handy commands that you can find on the interface of your Ender 3, known as Disable Steppers, which may sound cryptic if you aren’t familiar with the inner workings of a 3D printer.

So, what is the purpose of the Disable Steppers command on the LCD panel of your Ender 3?

The purpose of the Disable Steppers command on the LCD panel of your Ender 3 is to temporarily deactivate the stepper motors that are responsible for moving the printhead (X and Z axes), the build plate (Y-axis), and the extruder (E-axis), which allows you to move the axes freely by hand until the steppers are re-enabled.

In the upcoming sections of the article, we will dive deeper into the purpose of the Ender 3 Disable Steppers command, go through the process of disabling (and enabling) the steppers with G-Code commands, and finally, discuss what to do if the Disable Steppers command doesn’t work.

What Is the Purpose of the Ender 3 (Pro/V2) Disable Steppers Command?

Even though the Disable Steppers command has a clear purpose, the name itself may not make a lot of sense to you if you aren’t too familiar with the components that make the 3D printing process possible.

The stepper motors in your Ender 3 are responsible for the movement of all the axes, with each stepper motor corresponding to a single axis. While the stepper motors are active, the axes remain locked, meaning that they can’t be moved externally even if no movement is actively taking place.

Utilizing the Disable Steppers command instructs the firmware to cut the power that goes into the stepper motors, which causes the axes to become unlocked and able to be moved externally, such as pushing or pulling by hand.

As any movement command that you invoke requires the stepper motors to be active, attempting to move the axes through the LCD panel of your Ender 3 will automatically enable the stepper motors once again and cause them to remain active until the next time you manually disable them.

How to Disable the Steppers of the Ender 3 (Pro/V2) with G-Code?

As there is a G-code command that corresponds to every command you can find on the interface of your Ender 3, it’s also possible to disable the steppers by executing G-code whenever necessary instead of utilizing the interface.

To immediately disable all the steppers of your Ender 3 with G-code, you can issue the M18 (M84 will also work for Marlin) G-code command to the 3D printer without any extra parameters required.

On the other hand, if you would like to be more specific with how you disable the steppers, you can utilize the parameters below for customization:

  • E – Disable E (extruder) axis 
  • X – Disable X-axis
  • Y – Disable Y-axis
  • Z – Disable Z-axis
  • S – The inactivity period the firmware will wait for before disabling the steppers.

To make things more understandable, let’s take a look at a few examples where the parameters come into play.

Suppose that you only want to disable the X and Z axes, which would allow you to move the printhead freely in either direction that it can move. 

In this case, the G-code you should use would be as follows:

M18 X Z

In this example, the X parameter refers to disabling the X-axis, and the Z parameter refers to disabling the Z-axis, and both coming together prompts the firmware to disable both the X and the Z stepper.

For another example, suppose that you would like all the stepper motors to go off whenever 20 seconds of inactivity occurs.

In this case, the G-code you should use would be as follows:

M18 S20

In this example, we have used the S parameter with a value of 20, telling the firmware to disable all the steppers automatically once the steppers remain idle for 20 seconds.

Finally, to manually re-enable all the steppers, you can use the M17 G-code command without any parameters. On the other hand, if you want to re-enable a single stepper specifically, you can use the same parameter you used for the M18 G-code (X, Y, Z, E).

Ender 3 (Pro/V2) Disable Steppers not Working – What to Do?

While the Disable Steppers command executes a very straightforward action where not much can go wrong, we have noticed some reports in the community about how the command does not function as intended at times.

Generally speaking, many community members think that the Disable Steppers command did not work even when it actually fulfills its purpose, as there is no noticeable feedback from the Ender 3, such as the LCD screen displaying a message or changing the entry from Disable Steppers to Enable Steppers.

A handy method you can use to find out whether the Disable Steppers command actually works is to listen closely to the steppers while they are active, where you should hear a humming sound, and right as you issue the command, where you should hear a click sound, followed by the humming sound disappearing.

In the rare case that the Disable Steppers command did not actually go through, and you are still unable to move the axes with your hand, we highly recommend turning your Ender 3 off, re-checking the wiring of the stepper motors, and trying again, which should solve the problem in most cases.

Wrapping Up

Even though the Disable Steppers command is not one that you will frequently use and, in fact, can even be considered one that you may never need to use at all, having an idea of its purpose can come in handy in certain situations.

To quickly recap, the Ender 3 Disable Steppers command allows you to disable the power that goes into the stepper motors, effectively disabling them until explicitly re-enabled. With the stepper motors inactive, the axes become unlocked, which makes it possible to move them by hand.

This way, you can take the stepper motors out of the equation for all of the axes when you need to troubleshoot issues related to the movement of any of the axes and narrow the potential culprits down in a more straightforward way.

Happy printing!