Autoleveling with proximity sensor
I have a Geeetech G2S 3D-printer, which features autoleveling out of the box. Unfortunately the autoleveling is pretty much a joke, consisting of piece of bended wire and a microswitch. Due to the wire flexing, the probe will get different values when the head is moving from left to right than from right to left.
I saw someone experimenting with the inductive proximity sensor for autoleveling. These sensors are usually used in applications like limit switches in the garage door openers. They aren’t designed for accuracy and thus I was a bit skeptic how it would work out. The sensors only detect metals, but for G2S it’s not an issue as it has a steel heat bed. Out of recommendation, I bought LJ18A3-8-Z/BX sensor from eBay. The benefit of this type of a sensor is the long detection range, which allows to position the sensor higher than the print head. This way there’s no need to manually lower and raise the sensor before starting the print. The downside is that the sensor needs +12v and also outputs the same voltage, so it can’t be directly connected to the endstop connector.
I spliced the supply wire from the power supply to power the sensor (brown wire is the positive and blue wire is the negative on the sensor). The easiest way to connect the sensor output to board is to connect 10 k ohm resistor between the sensor output (black wire) and the endstop pin. The sensor is NPN normally open type, so you need to invert the Z min endstop in the software.
The first version of the sensor mount was designed to be fixed to the spider to the same screw holes where the original probe microswitch was mounted. Unfortunately due to the size of the sensor the probing radius needed to be greatly reduced to avoid the sensor running over the platform. The second iteration of the mount places the sensor right behind the print head, which seems to work very well.
Here are the coordinates for the probe mount (you probably need to adjust the Z offset):
#define X_PROBE_OFFSET_FROM_EXTRUDER 0
#define Y_PROBE_OFFSET_FROM_EXTRUDER 28
#define Z_PROBE_OFFSET_FROM_EXTRUDER -1.4
Download STL files from: http://www.thingiverse.com/thing:1222949