Hi,
a lot of switches, including snap action microswitches have hysteresis. It means that the switch makes at position x=0 but when it unmakes it has to travel
a bit further say x=-0.1. For home switches this is a good thing.
When Mach homes an axis it drives to the home switch in the direction and speed that you specify on the setup page until the switch makes. When the switch makes Mach
will stop and back up until the switch unmakes, ie the hysteresis distance. You've already noted that if that distance is too small it is possible for flexure in the machine to cause the
switch to re-trigger. Thus for home switch a small but repeatable hysteresis is desirable.
Note that switches with vanishing small hysteresis are available but are expensive and actually unsuitable for this purpose.
I not also in your post that when you set the Home Off distance on the setup page you expected the axis to drive backwards that distance. Mach doesn't do that.
What Mach does in fact is drive until the switch makes, then reverse until the switch unmakes and then set the machine coordinate of the axis to zero if no
Home Off distance is specified or the Home Off distance if it is specified. Note Mach DOES NOT drive to that remote location, it just sets the machine coordinates
to some remote location.
This has caused a lot of confusion over the years. Note also just to complicate matters a bit there is at least one external motion control board (PoKeys) that
can drive to that remote location if you program it to do so. It is not standard Mach behavior. Note also that with a macro you can cause Mach to go to a remote
location and achieve the same result, it just requires a short program.
Craig