Automatic bed leveling on glass

Hello everyone,
I made a small modification to my Snapmaker 2.0 to be able to automatically level on a glass plate.

It´s a simple holder for a 12mm capacitive proximity switch as a Z probe.
If you use a NPN normally open NO proximity switch 24V, you can use it without firmware modifications.

Everything is still in the testing phase, but I wanted to share the idea with the community as soon as possible because I couldn’t find anything comparable despite a long search.
I will upload future improvements on my Thingiverse page.

Have fun with it.


1 Like

There is a post here in the forum from a guy who modified his print head with an infrared light sensor that actually fits inside the head in the same space as the stock inductive sensor, which gives it a very clean stock appearance, but it was a bit more complicated; it requires soldering in a resistor and mounting the sensor PCB in the head (and maybe a customer firmware edit?). Yours is MUCH simpler. Have you checked the accuracy of its probing as compared to the manual calibration?

I am really interested in finding a suitable mod to run auto-cal on glass so I can start using the 11x11 cal grid.

1 Like

Geiler Scheiss!

If you could give us a few more info after your testing phase is finished, I’ll do this mod, too!

Don’t forget to adjust the prob offset in the firmware (Marlin). If you don’t, the bed leveling mesh will not be calculated correctly.

1 Like

My printing results have been satisfactory so far, even without any offset changes, as glass is usually a flat surface.
But you are right, the offset should be set correctly.
Does the Snapmaker Marlin FW support the normal M851 X#.## Y#.## command?
Haven’t tried it yet.

Yes, it does. Here is the website to use for MOST of the accepted Marlin firmware g-code commands.

Nice Thanks i want this

No, unfortunately not.
I tested it and the firmware documentation confirms it.

“The default (factory) value is set by Z_PROBE_OFFSET_FROM_EXTRUDER. In Snapmaker 2.0 firmware, the parameter has no effect.”

I drew a small update [v3a].
I moved the position of the proximity switch as close as possible to the position of the original sensor to further improve the mesh calculation.

1 Like

Ah, bummer. I assumed that because it was listed that it would work. Seems you could still custom edit that setting inside the firmware, just not as easy as using the g-code command.

Truthfully, having the new probe offset by such a small amount from the original probe really shouldn’t make that big of a difference, especially on a glass bed, and even less so if using the 5x5 or larger grid patterns. I wouldn’t worry about it unless the absolute accuracy is truly desired. Personally, I will probably work on the firmware edit when I do it, but I love to really dial-in things like that.

I’m planning on installing this mod soon (have the sensor and print ready to go). @TobIY Do you have any new insights now that you’ve been using it for a while? Or any suggestions on the height the sensor should be installed at?

So, my system runs surprisingly well with Mount v3.
I mounted the sensor, similar to what Snapmaker recommends for the original sensor, with a distance of about 2mm (credit card thickness) to the glass plate and set it so that it triggers just before the nozzle is exposed. The results of the measurement are very good.

The position of the retaining clips for the glass plate should be chosen with care. So that neither the nozzle nor the proximity switch touches it. (I will post a picture soon).


Did you do anything special for the wire pining? Or did you just shrink wrap the ends?
My capacitance probe came with a bit bigger connector and sockets than the stock probe, and about 18in of wire. It also did not come with nuts to secure it, but I handled that by just 3D printing some M12x1.00 nuts out of PETG.

I used single Dupont connectors and insulated them with shrink tubing.
Unfortunately, I couldn’t find out the correct name for the original plug.
The way I see it, it’s a kind of JST connector, but I have no idea what size it is.

1 Like

Here you can see where I positioned the brackets.

I ended up cutting about 2in of wire (with connector) off of the stock probe and then cut down the wiring on the new probe and spliced them together with solder splices, then shrink wrapped the splices. I also managed to edit the firmware to account for the new offsets, and put in a request to the developers to open up the G-code command for adjusting the offset. Hopefully that comes through in a future update before too long. Everything seems to work good so far; going to start some testing with it to see just how good it is.

1 Like

NICE! i have those sensors at work! mine are 24vdc but i can get a 12v im sure

I have mine rigged up with that optical sensor in that little PCB and its worked pretty well but i had to replace it once because it shorted out oon my wire brush and its very delicate. these types of sensors are great. And i didnt read what u said and forgot that it runs on 24VDC so thats great news for me… can we make this work on the dual extruder??