How to Factory Reset Your Ender 3 (Pro & V2 & Neo & S1)?

Whether your Ender 3 can print successfully depends entirely on the configuration you provide, which can sometimes get to an unsolvable point after hours of trial and error and require a complete refresh.

In this guide, we will walk you through the process of factory resetting your Ender 3, which will erase all the changes you have made to the configuration so far, re-apply the firmware defaults, and give you a clean sheet to work on once more.

How to Factory Reset Your Ender 3 (Pro & V2 & Neo & S1)?

There are two distinct methods you can utilize to factory reset your Ender 3, which are either to issue the M502 G-code command directly through a terminal or to use the panel of your Ender 3.

Factory Resetting Your Ender 3 with the M502 G-Code

Factory resetting your Ender 3 with the M502 G-code command requires you to be able to directly send G-code commands to your printer, which usually involves setting up a 3D printing interface such as OctoPrint or Pronterface.

OctoPrint Terminal

Before we move forward with the factory reset, we highly recommend saving your current settings, which, even if the configuration is useless to you, will come in handy for verification purposes.

For this process, you can send the M503 G-code to your Ender 3 and either copy or take a screenshot of the output you see on the screen, which is a report of your printer’s current configuration.

Provided that you have access to such a terminal, the first step you will need to take to factory reset your Ender 3 is to send the M502 G-code command, which will restore the default values of the firmware you’re using for all the parameters.

If you are interested in learning more about how M502 works, you can refer to the corresponding part of the Marlin Firmware source code.

To learn more about the default values that will replace your current configuration, refer to the Configuration.h and Configuration_adv.h files.

OctoPrint M502 G-code output


Next up, you will need to make the factory reset permanent, as the changes done by the M502 command, similar to any changes to the configuration you would make yourself, are only written to the SRAM, meaning that they will be lost once your Ender 3 is powered off.

To make the factory reset permanent, send the M500 G-code command to your Ender 3 through the terminal, which will write the current configuration in the SRAM to the EEPROM and allow the printer to preserve these settings through power cycles.

OctoPrint M500 G-code output


Even though the factory resetting process is technically done after these two steps, let’s do a quick verification to ensure everything is working as intended.

For verification, the first G-code command you will need to send to your Ender 3 is M501, which will cause your printer to pull the configuration from the EEPROM and make it active by writing it to the SRAM.

OctoPrint M501 G-code output


Alternatively, you can power your Ender 3 off and turn it back on to achieve the same effect, as the M501 command runs by default on boot to activate the saved settings.

Finally, the last G-code command we will be sending is M503, which will tell the firmware to print the currently-active settings on the screen, allowing us to confirm the configuration we just loaded from the EEPROM are indeed factory defaults.

OctoPrint M503 G-code output


Additionally, if you have saved your settings before factory resetting your Ender 3, you can compare the two M503 outputs to see whether the factory reset has done its job.

Factory Resetting Your Ender 3 with the Panel

Factory resetting your Ender 3 with the panel does not come with any prerequisites, as the menus should have this option regardless of which Marlin variant your printer is currently running.

Ender 3 V2 Main Menu


The first step to factory reset your Ender 3 with the panel is to find and press on the corresponding menu entry (invokes the M502 G-code command behind the scenes), which can have different locations and names depending on the model of your Ender 3, the firmware variant you’re running, and the version of the firmware.

For the original Ender 3 (horizontal screen) that runs on the standard Creality variant of Marlin firmware, you can find the entry that allows you to factory reset your printer in the Control menu with the label Restore Failsafe.

On the other hand, for the Ender 3 V2 (vertical, colored screen), you will find the menu entry that allows you to factory reset your 3D printer in the Control menu once again, but with the label Restore Defaults.

Ender 3 V2 Restore Defaults


Once the factory reset is done, and the firmware defaults are loaded to the SRAM, the next step is to make the changes permanent by writing the values to the EEPROM, which will require you to find and click on the menu entry corresponding to the M500 G-code command.

This time, you will find this menu entry in the Control menu with the label Store Settings for both the original Ender 3 and the Ender 3 V2.

Ender 3 V2 Store Settings


Finally, after saving the factory defaults to the EEPROM, you can quickly verify whether the reset has been a success by restarting your Ender 3 to load values from EEPROM as usual and checking the values of a few parameters to see whether they have been replaced with the defaults.

Alternatively, you can use the Reset EEPROM or Initialize EEPROM buttons for the first step if they are available for the firmware you’re using, followed by the Load Settings button for the second step, which will have the same effect by factory resetting the EEPROM first, and then loading the factory defaults in the EEPROM to the SRAM.

Does Updating Your Ender 3’s Firmware Reset the EEPROM?

We have noticed that re-flashing the firmware is suggested as a method to factory reset an Ender 3 in some sources, which is technically false and won’t achieve anything.

According to the Marlin firmware documentation, which is what the default Ender 3 firmware is based on, re-flashing firmware should NOT reset the EEPROM under normal circumstances, meaning that the printer will keep your existing configuration in the EEPROM between firmware flashes.

That being said, as the new firmware (or the new version of the firmware you’ve been using) you have flashed to your Ender 3 may not be compatible with how the old firmware stored the data in the EEPROM, it’s usually recommended to write the defaults that come with new firmware to the EEPROM after flashing, and re-do the configuration.

Conclusion

Now that you have successfully factory reset your Ender 3 and learned how to repeat the process whenever necessary, you can feel free to tinker with your printer configuration as much as you wish and find the best settings for you without worry.

While you will still need to perform a good amount of changes on the factory defaults for your Ender 3 to work flawlessly, having a reference point you can return to makes the testing and configuring process much more manageable.