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


FreeABL - the ultra cheap (free) ABL for Ender 3

by stevohen Mar 4, 2019
Download All Files

Thing Apps Enabled

Please Login to Comment

It's a no go for the 1.1.9 unless you strip it down a lot.

Question: after the leveling is done, how is the Z Offset calculated?

Regards, and great mod :)

Hi, i've done all the steps, and it's working, but not fine, what i mean - i feel that z-axis is adjusting while printing first level, and as i feel it is doing it in right direction, but it moves not enough. It lifts z while move to right corner, but it's still become too close to the table and layer too thin. On the other corner, it moves down, but not enough and i get bad adhesion in that corner. Any ideas why it may be so?

M48 command reports:
Mean: 0.003000 Min: 0.000 Max: 0.007 Range: 0.007
Standard Deviation: 0.002449

Leveling results are
0 1 2 3
0 +0.250 +0.185 +0.130 +0.037
1 +0.170 +0.082 +0.022 -0.040
2 +0.040 -0.033 -0.080 -0.133
3 -0.078 -0.160 -0.193 -0.248

Tried to recompile with LINEAR leveling - got the same results. :(

Hey I finally posted a make! I made some variations but your tutorial was gold! Thanks man, this is so good!

Glad it worked for you! If you don't mind, I added some of your improvements but I would also like to add the information to make the bed level mesh 4x4, if you can guide me on where in the firmware the changes need to be made?

Other thing is: I did not have an Arduino at hand to flash the bootloader. Just letting you know that you can use a Raspberry for this too! and is as easy as: flash an image to the sd card, connect the raspberry to the printer board and turn it on (no coding, configuration or console needed). I don't have the link right now but I will comment again with it (you can google it also, you will find it).

I created an account just for give you the thanks for making my life so easy with this. I did not have to order an expensive sensor or anything, is so simple yet so useful. I tried to buy you a beer but you don't have your account configured, as soon as you are count on that!

I uploaded my make with a modified start sequence that beeps and prompt the user to change the switch position (because I used the double clip remix for the mount) and pause. There is a video of the sequence in action.

Hi carlosalexanderdev, thanks a lot for the kind words. I did manage to add my PayPal now and with your permission I would also like to link your video and start GCode in the post as they will definitely be an improvement to the instructions!

Of course you can! I think this is one of the first mods an Ender 3 owner must do if want to save 60 dollars and still want ABL.

Yeah it's a bit of work, but still better than manual leveling! You can check out the updated description, I added a lot of information including your tips and a reference to the remix, if you think we left anything useful out please let me know. And thank you for the generous tip, it feels good to know I'm helping the other makers out there :)

Hey great idea, I'm printing it now! I have a few questions:
1) does this mean that I'll always have to remove the probe before the print starts?
2) after I remove the probe, I just lay it onthe side ofthe printer?

1) Yes that is correct. What makes products like the BLTouch so expensive is the fact that they have a servo that pulls the switch away after leveling. By doing it manually, you can use a cheap simple switch
2) Yes that is what I do. You can actually unplug it and put it away at this stage, the switch will have no further effect on printing. If you want a more convenient solution, check out one of the remixes that allows you to stow it. This will require a lot more wiring and you will need to thread the wire through the loom.

It would be great to be able to leave the "gossip" in the hole above, in the same way when used to level.

It would simply be unplugged from below and plugged into the hole above.

In this way I could put the cables through the mesh and leave it nice and cool

Remixed: https://www.thingiverse.com/thing:3689126

FreeABL - Doble clip and reduced
by xchgre

Excellent job with that! I should have done that in the first place.

EDIT: I linked your remix in the description as I'm sure many people will prefer to use it

Love this idea and i going to make one. Have you thought about adding a M0 after the leveling but before the heating process it will make the printer wait till it has the main button pressed till it moves on, meaning if you get distracted the printer wont start printing with the switch attached.


Even though I won't need it:

Absolutely great thinking - one of the best Ender 3 mods I've seen so far!


Thank you for the kind words!

does this work with other fan shrouds like the herome ?

  • Posted with 3D Geeks Thingiverse Browser App

Not this design. But someone made a remix that should work for you:

freeABL Hero me mount
by doom01

lol it was made for him

" Step 3: FIRMWARE

You need to flash Marlin for this mod. If you don't have a bootloader flashed, you can check out the Youtube video by Teaching Tech (Michael Laws) on flashing Marlin to an Ender 3

Make sure you do the following:

Use Android 1.8.5 ONLY (newer versions don't work for some reason) "

Android or Arduino ? :)

Lol good catch :D

You think this mod would work on ender 2.

Yes I think so. The limit switches and hot end assembly looks the same. You will just need to use the Ender 2 configuration files and hopefully if Marlin compiles successfully you should be good. Just also notice in Step 4 we use G29 L30 R190 F30 B190 to level 30 mm inside the edges of the bed, you will want to change that to something like G29 L30 R120 F30 B120 due to the smaller print volume

I'm using the latest release from TH3DUF and it doesn't like it when I add the custom probe in. I get an error You must define Z_CLEARANCE_DEPLOY_PROBE in your configuration when ever I try to run load. :( Any workaround on this?

I have never used TH3D unfortunately. What you can try to do is uncomment Z_CLEARANCE_DEPLOY_PROBE and set it to 0 and see if it works

Since the z switch is not returned to any position after maybe you could design/add a lever to move it up and 'locked' in a non blocking position.
I can't design something (hardware man mostly!) and I am not complaining about your idea, just my two cents in case you are willing to upgrade it !

I considered that as well and think it will make a great v2.0 addition. The only thing I don't like about that is that the cable can get in the way of your print, it might have to be routed with the rest of the harness which is a lot of work

Great "out of the box" thinking.