Storing several X- Y offsets

I don’t even have my machine yet but ive got several project ideas. What im wondering, is if its possible to store several XY offsets for high repeat projects. Im thinking about drilling dowel holes with different centers so that it might make set up faster.

Hey Dave,

sure. This was already possible when there existed no CAD/CAM programs and CNC operators programmed everything with pure G-code. You use the coordinate system offsets with which you can repeat your program at different locations of the workarea. Nowadays CAD/CAM programs offer that of course as a comfortable function.

Wouldn’t that require to home to the exact same location each time? I know I have to rehome mine sometimes on startup because the first time the y axis is way off.

Hey Ken,

yes, on startup of the machine, driving all axes to their home positions is always necessary because it enables the controller to know where its carriages are. This is called homing. Otherwise the machine would not know where the carriages are (they could have been moved while the machine was powered off). Usually you need to do this only once after startup of the machine. However on the stock Onefinity Original Series that uses stall homing for this, this is known not to ensure ideally accurate repeatability, so either retrofitting limit switches (e.g. with inductive proximity limit sensors), or generally zeroing at a repeatable location like a fence or a block (e.g. by using the XYZ touch plate) are necessary to have an acceptable repeatability accuracy (which means, that a specific position before shutdown is really identical to the same position after startup the next day).

See also Homing ≠ Zeroing.

But I think what the original poster meant was to use one program multiple times to produce identical workpieces (or holes) at different locations on the workarea. In pure g-code, without a CAM program, you would use g-code coordinate offsets, possibly with a number of fences or fixtures (or dowels) on the workarea to put your multiple workpieces on the workarea. You would only need to zero the workpiece zero position once in such cases, as all different workpiece coordinate systems that you switch in between inside your program are contained in the same program and relate to each other.

But nowadays, in a CAD/CAM program, you can also use a function where you can also simply copy your virtual model many times to have several identical copies of it in your toolpath and subsequently in your exported g-code.

1 Like

I’ve found that installing homing stops makes homing a bit more repeatable. I’m not sure if it makes it accurate enough for your use but it might be something to consider trying.

As others have indicated, the answer somewhat depends on the accuracy you require in the setup. If you’re caving into a blank that needs to be ‘nearly’ centered on the part or you’re performing an operation where you carve and cut out the part from one setup then stall homing should provide good enough precision to use stored X,Y offsets. If you’re doing things that require greater precision than +/- 0.5mm like 2 sided carving then you’ll need something more accurate than stall homing.

As for storing them, there is no method in the Onefinity Bulitbotics controller to store offsets but you can home the machine use the MDI input to go to a location then use that as your work offset/zero point for the project.

Hey Derek @WaywardWoodworker, hey all,

but you forgot that if someone has a fence or a even a simple block permanently attached on the workarea (possibly somewhere away from the work), and after startup / homing is zeroing on this with XYZ touch plate, you get a much better accuracy than stall homing, without having to retrofit limit sensors or such effort.

Generally, homing is necessary at startup, but

:point_right: Homing accuracy becomes irrelevant when you zero on a repeatable location on the workarea, :point_left:

and rely on these offset coordinates (what you usually do anyway! When you probe your workpiece.). You just have to remember that you don’t rely on machine coordinates but on the offsets, which are workpiece coordinates.

Or phrased differently: If stall homing does not provide reproducible accuracy beyond a powerdown and startup, a stop or block that remains on the desktop beyond powerdown and startup will provide just that.

I didn’t forget about probing as an option to have a repeatable work offset… if you’re going to use the probe then why not simply set the front left corner of your CAM model as zero and probe the workpiece? My interpretation of the OP question to turn on the machine, home it, then move to a known spot to start work.

I use all sorts of combinations of probing to set up my jigs and fixtures, even probing the dowel holes in the wasteboard for 2 sided operations, whatever gets the job done.

Hey Derek,

I didn’t really mean that you “forgot” it :slight_smile:

of course! I just wanted to add this point so that the methods for achievable repeatability accuracy after powerdown and startup, which is possible without modifications with this machine, are fully listed.

In the files section of this forum you will find an app I made for this purpose.
At the start I didn’t have permission to upload to this forum but now I do.
So go down to the 5th post to get it.

Work Offsets App


Basically, no, other controllers remember offsets between zero operations and even allow a few different positions to be stored 1f loses everything every home cycle. The workaround is to model your entire surface and always put your workpiece in the same location. I don’t like this because it adds a lot of setup information into a model and has to be changed if you ever move your clamps. You can also write down coordinates.

That’s amazing and awesome, thanks for this.