the micro switch on z was, is, and always will be problematic. if your x carriage is in the air and you home it you get a different height than if you are already home and you home it. And if you let it sit homed overnight and then home it you will get a different height. For this reason alone z axis micro switches are a loosing proposition. The inductive probe is the best method because of cost but it requires an aluminum bed as it will not read the glass. The BLtouch will read any surface just fine but it is expensive. I have both of these and have nothing but good things to say about either. There is also a capacitive sensor that is supposed to read anything as well but it is every bit as unreliable and inconsistent as the micro switch.