[Solution] 3D Printer Forgetting Bed Level After Power Off / After Mesh Leveling (Creality Ender, CR-10, CR-6 and more!)
Here are the best solutions to fix your printer losing bed level or forgetting your settings after you carefully level the bed! The scenario: you have levelled it perfectly, maybe you successfully complete a print, then the next time you power on the printer suddenly the level is off again! This might happen after a manual or automatic mesh bed level procedure, or even just after a manual bed levelling with screws/knobs and the paper test.
- In this article I will mostly reference Creality’s Ender, CR10, and CR-6 printers since those are the printers I am the most familiar with. However most of the fixes will be relevant to all brands of FDM (filament based) 3D printers.
- Quick list of just some of the printers this applies to: Creality Ender 3, Ender 3 V2, Ender 3 Pro, Ender 3 Max, Ender 5, Ender 5 Pro, Ender 5 Plus, Creality CR10, CR-10S, CR-10S Pro, CR-10 S4, CR-10 S5. And similar clones from other brands: Tevo Tornado, Anet E-10, Anet E-12, Tronxy X3S, Geeetech A30, Alfawise U10, Raiscube R10, Sainsmart, and others.
Complete Guide on How to Fix Your 3D Printer Forgetting Its Bed Level / Mesh Bed Level
Here is a complete checklist of things to check, fix, upgrade and more to get this problem fixed once and for all!
#1 Check the eccentric nuts of the wheels on the Z-Axis
Check and re-check the eccentric nut tightness of the wheels, especially on the Z axis (the ones that roll up and down vertically on the vertical frame.) The wheels should have some grip, but not be so tight that they can’t roll. If they turn freely without any friction, they are too loose.
#2 For mesh bed leveling, add M420 S1 to your start G-Code
If your printer utilizes mesh bed leveling (either automatic or manual) try adding the following to your Start G-Code in Cura. This can be found under Machine Settings. Add this AFTER any line that reads “G28” since that can sometimes disable the mesh bed leveling. Here’s the code on a separate line:
Add the above line AFTER the last line that says G28. To access the Start Gcode in Cura: Cura Settings Menu > Printer > Manage Printer > (Select Your Printer) > Machine Settings
#3 Install anti-backlash nuts on the Z rods
These are cheap upgrades that can prevent the gantry from drooping when the stepper motors are disabled. Below is a link to the part (very cheap!) and then a helpful video explaining installation:
Here is a helpful YouTube video on how to install them. The process is similar for most of these machines:
#4 Make sure the nozzle is clear of any hardened filament before leveling!
At the end of a print it is somewhat common for a little bit of filament to ooze out of the nozzle and harden there when everything cools down. If you come back the next day and try to level, that hardened filament is adding some extra distance to the nozzle. This could cause your leveling measurements to be further away than it should, even though it seemed like you had levelled perfectly.
To fix this just make sure to heat up the nozzle and then wipe away any filament from the nozzle. You can also make sure your End Gcode includes a significant retraction so the filament is automatically retracted well out of the hot area at the end of every print. Something like 30mm worked for me, here is the G-code for a 30mm retraction that you can put in Cura’s end of print GCode section:
G1 E-30.0 F2400
#5 Install a Z sync Kit
For printers with dual Z rods (lead screws), you can install a Z sync Kit. This is a little pulley that connects both rods and makes sure they turn in sync with each other. This can help prevent one side of the gantry from drooping. If your printer only has one Z rod you do not need this. You should be able to find a Z sync kit for your printer if it needs it at TinyMachines or possibly AliExpress.
#6 Remember to select “Store Settings” After Mesh Bed Level
Selecting the “Store Settings” option on the same screen that starts the mesh level procedure will save your mesh bed level results to the printer’s EEPROM onboard memory (either automatic mesh bed level or manual mesh bed level.) If everything is working correctly, these mesh settings should be reloaded when you next power on the printer as long as mesh leveling is enabled.
Still having trouble?
If you’re still having problems, try the following. While technically they shouldn’t be necessary, it doesn’t hurt to try if you’re out of other options and these were some of the things I tried while troubleshooting:
- Make sure you set bed leveling: on every time you start up the printer. (On my CR-10S it defaults to off whenever the printer powers off.)
- Autohome before and after bed leveling / mesh bed leveling
- Redo bed leveling / mesh bed leveling when you remove the print bed or put any pressure on it