One thing I have noticed in the groups is all the TronXY build surfaces with the deep gouges through them. Apparently there is a thing about the stock firmware driving the plate into the nozzle and some convert the oem board to run on Marlin and others switch to BLTouch or other different sensor. Some use separate drivers for the Z motors and I would like to show off my better way. For Z homing on my 500 Pro I am using 2 of these old school dirt cheap in every possible way early i3 style endstop switches..



These switches get wired in series back to the Z min endstop signal and gnd pins. This way the circuit is completed only when both switches are closed together. I remove the metal tab from the microswitches for better repeatability and accuracy..



One on each side..



This design creates a hard stop right as the switch is closed so the carriage will not flex upwards and the motor will immediately begin to skip steps after the switch is triggered. This height of these stops is absolutely critical and puts the glass bed in a place where it can be adjusted to level and the right height with just the springs underneath it. As Z homes one side will bottom out and skip steps until both switches close and the bed is level..



And now setup like this we can home and print without probing the bed in 12 places and wasting 10 minutes of our lives at the start of each and every print. And as an added bonus it is now physically impossible for the nozzle and bed to do the touchy touchy thing. Which is good because I really like this Creality branded Ultrabase..