Hi,
I think the problem lies in the manner in which you are sensing.
I probe PCB blanks many hundred of times a day. The tip of the tool is earthed and when it touches the PCB surface the contact is detected by the probe circuit.
The controller must decelerate the axis, come to a stop and report its axis positions back to Mach. This will happen quickly but not instantly, I would guess several
milliseconds. I'm not sure, but if the report to Mach is made during the regular cycle of the motion controller as I suspect, then there could be an additional 10-25ms delay in the comms.
Once Mach gets the axis still report AND the axes positions from the motion controller then it is at liberty to issue another move, usually a g0 retract move.
From your description the motion controller/Mach is expecting the probe contact to be made continuously during that period, lets say 50ms. That comports with what I observe
with the on-screen LED that reflects the probe circuit.
May I suggest you experiment with a very simple probe circuit such as I have described and see if it works. All you need is some metallic tool in the spindle tool holder,
an endmill for instance, with a clip to ensure that is earthed and a flat piece of metal lying flat on the bed of the machine but insulated from earth with a sheet of plastic.
The probe circuit sense wire would be connected to the metal plate....it would be earthed or 'pulled low' on probe contact. With the tip of the tool 2mm above the plate,
zero the Z axis and issue this MDI:
g31 z-1
g0 z10
If this move is successful the tool will lower until it touches the surface, wait the appropriate 50ms or whatever for Mach and motion controller to do their thing
and then retract to 10mm above the surface.
That would confirm my hypothesis that the probe contact must be held while Mach and motion controller communicate.
Craig