Hey Nick,
you are right, that is strange too. I have a controller here in my electronics lab and it is connected over network to any computer where I could be here (without the CNC machine attached to the controller) so I just tested it (see screenshots below). What it should do (what one would expect) is that it just drives the carriages to their home positions, performs stall homing (as set in the corresponding MOTORS page) and adjusts the values in the ‘position’ column of CONTROL page, but not the ‘offsets’. So I was wrong with what I wrote above. I find that strange.
Note that I am not using the Onefinity controller and don’t plan to use it on my Onefinity as I intend to use another controller. I am just fascinated about the buildbotics.com project and am sometimes exploring the Onefinity controller that is a software and hardware fork of the Buildbotics controller.
But I wrote frequently in the forum that stall homing is unreliable, because it never ends the homing process at exactly the same positions as before. It is more of a makeshift solution for homing because the manufacturer wanted to keep the price low and saved on everything, which means here on hardware limit sensors.
So what I frequently wrote, is that one should always avoid homing procedure (except once at startup – but only if you don’t have a machine position that you want to retain after a power loss),
and instead use G53 G0 X0 Y0 Z0
in the MDI tab or in a g-code program, to drive to the home position. This really does only the movement to the registered home coordinates, without the bumping of stall homing. ‘G53’ means “move in machine coordinates”, without altering any stored values (except absolute position of course). (Note: G53 is, unlike G54-59, G52 and G92, no modal command, which means it has to be given everytime before a motion command like G0 or G1). ‘G0’ means “move rapidly, ignoring feedrate”.
This is also the command I use for driving to the home position for a manual tool change ➪ in my own ‘tool-change’ routine.
Screenshots
Image 1: To avoid: The Homing Buttons (on top: home all axes, below are buttons for homing each axis individually)
Image 2: Moving the axes to X=100 mm, Y=100 mm, and Z=-50 mm, and then zeroing this position as offset (workpiece zero) (using G92)
Image 3: After homing all axes, not only the ‘Absolute’ positions are homed, but also the ‘offsets’ previously made active with
G0 X100 Y100 Z-50
and then G92 X0 Y0 Z0
are gone.