Hi
Is it a function of the machine slightly backing away from the prox's after triggering them? Any help would be appreciated.
No, at least that is my understanding.
The homing process is done by the motion controller not Mach. Mach supervises and supplies the settings data, aka the Home/Soft Limits data page.
Each axis is in turn, determined by the Homing Order setting is driven in the Home Dir at the Home Speed% setting. When a limit switch event
on that axis is detected the controller stops the axis at the max deceleration permitted, and then backs up until the home switch de-activates.
At that moment the controller sets the machine coordinate of that axis to 0, or whatever value you have in the Home Offset setting. Those coordinates
are reported to Mach4 and they form the machine coordinate positions displayed by Mach.
That is what Mach expects and to my knowledge all Mach4 ready controllers comply.
Why the Hicon should be reporting 'residual' machine positions is I suspect an issue with the Hicon rather than Mach.
I personally dislike the use of proximity switches for home switches, they work well for limit switches but are less than ideal for home switches.
Good quality snap action micro switches have a definite and repeatable hysteresis that proximity switches lack.
I use these as home switches and achieve 0.02mm repeatability without any special indexing operations.
https://nz.element14.com/honeywell/bzc-2rq18-a2/switch-basic-top-roller-plunger/dp/1525198Would this have anything to do with soft limits? Do they need to be set up? I'm not using them currently, since I have 6 limit switches, protecting each axis +/-.
No, Soft Limits have nothing to do with Homing. Once the machine is homed (also called referenced) then and only then do Soft Limits become useful.
Note that it is still advisable to use soft limits, set up to 'go off' a few mm 'inside' the physical limit switches. The advantage of that is that the machine
can decelerate on detection of a Soft Limit violation without loss of machine reference. A physical limit switch violation causes an EStop which is a crash
stop which loses machine reference.
Physical limit switches are the absolute last line of defense against machine damage. All previous steps including checking Gcode and Soft Limits should
have detected a violation prior to physical limit switch violation, and you would have to explain to your boss, possibly in writing, why it was that those
techniques failed to safegaurd the machine and you stacked an axis into a limit switch Estop. A second event like that will see you taken off a machine
and put on floor sweeping duty, if you have a job at all.
Craig