I've recently updated my Ender 3 Pro to the latest Marlin 2.0 firmware and when I press autohome or try to move the axis, I hear a very quiet noise from the motors trying to move and then they just don't. I did get an error message about EEPROM when I first booted the printer after flashing but I just pressed reset and the issue hasn't come back even after trying multiple different firmware versions.

  • $\begingroup$ Hi, welcome to 3DPrinting.SE! This could we'll be related to an incorrectly configured configuration file, it is very hard to guess what is causing this with this little information. $\endgroup$
    – 0scar
    Jan 13, 2021 at 22:32
  • $\begingroup$ Jacob, were you able to resolve your issue with steppers movement? If my response below helped you (and you can accept it to close question)? Or do you have any other explanation to share, like stepper driver settings in firmware? I am very curious of the actual reason. Also let us know if you still struggle with this. $\endgroup$
    – octopus8
    Feb 2, 2021 at 4:38

1 Answer 1


This is theoretical assumption, but I suppose that your steps/mm values are now wrong in EEPROM - specifically they are set to 0 (zeroed steps per mm)? Could you please use LCD and navigate to Configuration > Advanced Settings > Steps per mm and check what values are set there? If there are zeros, could you set them to positive values (e.g. =80) and check homing again? Than you may save changes using Configuration > Store Settings.

I just made following test proving that this may be the cause. I set steps per mm for X=0 (executed G-Code: M92 X0 from serial terminal) and tried to move X. The stepper motor was enabled (quiet noise or hiss), but it not moved at all. There was no additional feedback e.g. on LCD. Pretty similar.

If this is not the only broken setting, then option Configuration > Restore Defaults should reset EEPROM to values defined in Marlin's configuration. I needed to perform Configuration > Store Settings to make it persistent. But this will reset many other values, so I would suggest to write down all current values from LCD before doing the reset, for reference in future (in case they were valuable). And still you may not see all settins in LCD, therefore I would use g-code for this operation - see below.

These operations can be also performed from serial terminal using G-Code commands: M503 to verify and copy current configuration, and M502 followed by M500 to perform factory reset.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .