it is not a good idea to assume that the center of the anchors is the center of the workpiece, so some way of defining where 0,0 is is a good idea
I think it would be useful to have a few variations
first off, the point determined via these methods should not have to be 0,0, it just needs to be at a known x,y position (so it could be off the edge of the normal work area
- drive to center and hit a button to say ’ I’m at the known point’ (similar to the ‘set home here’ on the current maslow)
- drive up the top, right, bottom, left and say ‘this is the edge of a box centered on the center of the workpiece’
- touch based versions of #2
3a. move up until there is a touch, back off slightly, move right until there is a touch, back off slightly, move down until there is a touch, back off slightly, move left until there is a touch
this could be done with a frame of aluminum around the workpiece with tape around the sled and you are moving to touch
it could also be done with aluminum tape around the inside of the sled opening and a pin in the frame/workpiece
it could also be done with a ring mounted in the router instead of tape inside the sled opening and assuming that the sled opening in concentric with the bit.
3b. move up until there is a touch, raise the bit and move up a distance, lower the bit and move down until there is a touch, raise the bit and move to the midpoint between the two touch points, move left a distance, lower the bit and move right until there is a touch, raise the bit, move right a distance, lower the bit and move left until there is a touch, raise the bit and move to the midpoint between these two touches and you are at the center
This could be done with a carriage bolt in the router touching against one in the frame/workpiece
(note, having these as available subroutines to find a point will be useful for other things, including the skew reference points in the other request I just posted)
also, instead of making this coordinate system change permanent and global like the current ‘set home’ button, please consider implementing the standard gcodes for defining coordinate systems CNC Coordinate Systems: G54-G59, G10, G54.1, & G52 G10, G52, G53, G54-59, G92 (and possibly even g54.1)