Setting Z Height After Home - No Z Probe
I am working on a printer that does not have a Z probe, only a minimum Z end stop. I have it working, but can't figure out how to set the Z height after homing. Right now I am adding a G92 command in the scripts, but I'm hoping there is a better way. I have to make changes in two places when I need to adjust that height.
Use a macro, call it in both places. With a macro, you'll only have one place to change.
It doesn't matter that you are using a switch to probe the bed - just use M558 to define the probe type as here https://duet3d.com/wiki/G-code#M558:_Set_Z_probe_type and "tell" duet that you are using a switch.
Then use G31 in you config.g to define the trigger height. You don't need to use G92. The trigger height is the distance that the nozzle tip is away from the bed at the point where the Z probe (switch in you case) triggers. So for example, if the nozzle tip is 1.2 mm above the bed when the switch triggers, that is what you set in G31. When you then home Z (G30), Duet will move the the bed or nozzle until the switch triggers, at which point it "knows" that Z=0 is 1.2mm from this point. So if you then do G1 Z0, it should move to the pint where the nozzle tip is just touching the bed. If it is too far away increase the trigger value in G31, if it's too close and pressing down hard against the bed, decrease the value. HTH
The two replies above are different solutions, and both should be workable. If you use the second one of treating your homing switch as a Z probe, you will need to connect it to the E0 endstop connector instead of the Z endstop connector.