How to cut a part at any position

I’m trying to cut various different parts and would like to do it at different places on the work area. I assumed that ‘define home’ would move the origin but it doesn’t do that. So, if I have two parts both referenced to (0,0), how do I cut them in different places? Do I have to have an offset in my files? That seems a bit clumsy.

It sounds like your first instinct is spot on and “define home” is exactly what you are looking for. Define Home should move the (0,0) point to the current machine position so the work flow goes like: Move the cutting head to where you want cut the part -> Then click define home

Is that not working?


Hmm, no it doesn’t. The co-ords don’t zero, but the home does move, so pressing home does move to wherever I pressed define home. So it’s difficult to cut shapes as the origin doesn’t move

Please bare in mind i don’t own a machine yet i just try to imagine the situation.

I have been looking in Groundcontrol and to me i felt a bit odd that i could not see the origin move when i pressed the position buttons, so the define home button didn’t seem to make sense to me.

I don’t know what @jetrock experiences but since i feel like this is related i made this comment.
Maybe you don’t see what is moving? what if you move the origin in steps of 100mm?

The X,Y and Z values show the location from the movement of the motors as reported by the firmware. Without the electronics and motors it’s less interesting :smile:


@blurfl is right, the X, Y, and Z values that are read out on the display are the absolute position of the machine on the work area with the center being (0,0). What the home button does is to translate the part that needs to be cut to the current position so the result you are looking for is achieved (you can choose where the part you want cut is on the sheet, but the X,Y readout won’t show the change

That’s interesting, and explains why I don’t see (0,0) when I hit define home. The part doesn’t move on the display, though, and I’m pretty sure it cuts at the same co-ords as before the define home. At least it does this for me. My only non standardness is a smaller frame. i don’t think that should affect this feature.

I’ll try 0.90, I missed that one.

:smiley: i see, i should get on board then…

I’ve loaded 0.91 and tried again. I still get the SME behavior. The parties cut irrespective of where I set home. Could it be because I am using the dxf2gcode generated file?
OK, I just loaded one of the test gcode files: caused. When I press define home the part now moves on the display. It looks like the problem is caused by the dxf2gcode problem as well.
For some reason I have to press define home twice, but it does work.

1 Like

I might be totally off here, but I played with dxf2gcode a couple of months back and believe to remember something similar that was related to missing G90, G91 in the gcode. Could you check your gcode with a text editor and add a G91 at the top, if it is missing and try if that changes anything?
G90 ( Switch to absolute coordinates )
G91 ( Switch to relative coordinates )

I just had alook at the file and here’s the first few lines:

(Generated with: DXF2GCODE, Version: Py2.7.9 PyQt4.11.2, Date: $Date$)
(Created from file: /tree/projects/maslow/things/test/test_shapes.dxf)
(Time: Sat Sep 23 08:01:57 2017)
G21 (Units in millimeters) G90 (Absolute programming) G64 (Default cutting) G17 (XY plane) G40 (Cancel radius comp.) G49 (Cancel length comp.)
G0 Z 5.000

So there is a G90, but interestingly it’s on the same line as several other Gcodes. maybe that’s the problem? or part of it?

I would try changing that to G91 and load the gcode again. Think that then it will move relative from where you set home.

Ah, ok, I see what you mean now.

Relative moves are from the current position, absolute are in workspace coordinates. G01 X1 Y1 has dramatically different results (well, unless you’re at 0,0) in each mode. In relative it will move a unit on each axis, in absolute it may move almost the whole width and height of the machine depending on where you start from.

You will get some pretty strange results if you edit your gcode into the mode it was not generated for.

Edit: Current position is where the cutting tool is at the time of the command. Move the bit and the current position and the relative coordinate system moves with it. Absolute is relative to a fixed position. You can change it with G92, homing (G28), or one of the G5x workspace commands, but not by repositioning the tool with a move (G0, G1, G2, G3, etc) command. Move and the abdolute coordinate system stays where it was.

You can switch between the two dynamically. For example control programs like ground control (Major Tom) can switch to relative to move the tool in response to move up/down/left/right buttons

1 Like