MakerBot Print is our newest print-prepration software, which supports native CAD files and STL assemblies,
allows you to interact with all your printers via the Cloud, and many other exciting new features.

Download Now


Ender-2 Bed-leveling procedure

by weitling Aug 12, 2017
Download All Files

Thing Apps Enabled

Please Login to Comment

Dude. This is awesome! Before i never could level my heating bed right and there were always some issues and it took like 1h to calibrate the bed for a 20min print.
With your procedure i level the bed in max. 2mins and print objects with huge precision.

Thank you I am glad it help you :) Happy printing

Hi there.

How easy would it be to adapt the code for the new Ender 3 which is a four point bed?

In normally very easy. But i don't see the need for the Ender 3 that has 4 point levelling. I mainly made the code for the Ender 2 because of the "Strange" position of the 3 points levelling.

That is the best helping tool for my very first new printer , THANK YOU !!!

You are very welcome :)

Thank you! This print is a must for every Ender 2 owner. Now I just need thinner fingers to reach the left-hand screw more easily...

One slight issue - sometimes the travels between the levelling points is rather slow - taking about 20-30 seconds to get from one to the next. Other times it travels at a more normal speed and I can't work out why it varies - any ideas?

Sound wired im not sure what cause this maybe some other can help

Hi, I customized your gcode (very good, thank you!) after running into the same weird issue - see comments in attached gcode file. That's what I use for leveling, works for me, imo no need to print the square. If you don't want to heat bed to 60°C (e.g. because you do that yourself before starting or you desire other temperature) remove M140 from gcode. I usually run the procedure multiple times (first: general check) and at the second run (second: tuning, third: check again), heat is all up. Cheers

Are the leveling positions supposed to be opposite of the screw positions?
Not sure if this is a feature added to the leveling procedure since uploading the video or not, I assume it is, but not sure.

THE best script to level your Ender 2 so far! Thanks a lot for this :)

You are welcome :)

New user. Expecting my Ender 2 printer to arrive on 12 February 2018
If the filament is to be removed before starting, what procedure do I follow to pause and insert the filament to make the test square?

let the filament be there


By replacing you Gcode

M140 S50
M190 S50
M104 S212 T0
M109 S212 T0

With this code :

M140 S50
M104 S212 T0
M109 T0

You will save some time, when heating up bed and the Nozzle, as this is now done in parallel.


You are right thanks for the tip :)

Would you be willing to do a version of this for the CR-10/General 300x300 printers? I really like this for my Ender 2 and use it all the time.

Hi. Yes i will get a CR 10 next month then i will make one. Thank you for your feedback.

Thanks, this is very handy.

Thank you so freaking much for this. I couldn't get my bed level until I used your gcode. 3 point doesn't work in my brain yet ;)

Thank you for taking the time creating and sharing this. It works well.

Works great to level the bed, however I'm struggling with first level Adhesion on my prints,

what slicer did you use/can you supply a profile?


whats the first layer height you have set?

What filament do you use and what temperature do you have on nozzle and bed

Surreal PLA as used in the bed level test, temp 205 nozzle and 60 bed

What speed do you use on the first layer? And be sure to level correct use copy paper

Copy paper (80GSM) used and 40 mm/s initial layer layer height. .2

Seems to be okay. Anyway, Reduce speed to 20mm/s on first layer. Try to increase the temperature as well to 215C on the Nozzle and 45C for the bed. If this not work try glue stick or hairspray as extra adheation. And try with this settings again. Good luck

This is moving CRAZY slow for me... anyone else having that issue? And by slow lol it takes 2 minutes to get from one point to another, no exaggeration. (this is a great tool though regardless of how it was going slow for me, thank you!)

I'm happy it worked out for you :)
Happy Printing

I get the same issue as you, did you ever figure it out?

Hey just saw this notification, I just restarted it and it worked fine after. I think it was due to changing the SD card without using the "Change SD Card" feature.

Well 2 minutes is long time. There must be something wrong with your printer

Yeah I just ended up restarting it and it worked fine, I mentioned above I think it was due to swapping the sd card without using the change sd card menu option. But yeah it's worked great for a month now and I always use this to level my bed, thanks for making it!

Yep, can confirm the same thing, a restart sorted it out for me as well :)

Interesting, I get the exact same issue on mine, right out of the box.

Thank you! This tool helps me a lot.

You are welcome im glad i could help you

Now this tool is absolutely perfect! Thanks for your contribution!!

Update! Added gcode file that Heat the nozzle to 210C and bed to 50C for more accurate leveling. I recommend to unload the filament before start the leveling so no filament will flow and interfere with the leveling.

Can you update the Gcode to just do a giant retraction (like 20mm or something) after it heats the hotend?

Thank you for such an amazing tool. I was wondering if it would be possible to modify the file, so before beginning the calibration process, bed and hotend get to the needed temperature. This way the process will be more accurate so both of them can dilate. Thanks again!

File added on your request :)

Hi RCCao
Thank you for the comment I appreciate that. You are right i will make a version for PLA

I think I know why the pause function does not work for me. I'm running Repeiter 0.91 firmware and I have read that the M0 command is not understood by this firmware. Some suggested another command and others reckon 0.92 firmware will work. However I don't want to break the machine with a failed firmware upgrade.

I don't know that firmware But Try M600 that is the code for filament change. You could consider Skynet or MK4duo. as your Firmware. I use MK4duo on my Ender 4 and it works perfectly.

Do u have anything similar for the Anet A8, you could share

Hi Here is a Gcode leveling file for the Anet A6 A8. It go over 2 times. When the beep comes. it will start to do a 150 x 150 square. Happy leveling.


Just tried the code and it appears to ignore the Pause command at each check point to allow me to adjust the bed.
It moves to positions 1, moves the Head down to Z0, then moves it back up to Z10 and moves onto the next check point. Everything else works correctly in terms of printing the square.

Thoughts, could it be a glitch in my firmware on the printer.?

Could be I use Skynet 3D on my anet A6 and it worked perfect. I'm not sure if Anets "original" firmware can use the M0 command. I will check tomorrow

O Skynet :-).

OK I will leave it with you.


I will make for the Anet A6 & A8 in the weekend :)

Thank you. I'm really pleased with the results after using your code

Great video and good advice, thank you.