Fusion 360 / GCode doesn't account for offset

I’m using Fusion360 and trying to cut through a 3/4" MDF (19.05mm)

But In the early gcode i see

N40 G43 Z15 H1
N45 G0 Z1
N50 G1 Z-0.365 F2032

N17885 X279.85 Y65.894 Z-20.05

The offset for the tool is 1

But what is weird is that the GCODE generated is -20.05

What i’m seeing is the spindle going that extra 1 down into the wasteboard below.
So either i’d have expected the CODE to stop at -19.05. or somehow -20.05 would be fine
if this command : “N40 G43 Z15 H1” would have actually set an offset that persisted.

What am i missing?

I found this guys comment that says OF doesn’t keep track of a tool table. Is that my problem?

Z movements (like X and Y as well) are in reference to your zeros (what you probed/set).
I do not believe that any other tool table related values have any impact.

So does that mean the post processor is messing up? I don’t understand why it’s saying to cut down to 20.05.

Where did you set your zero in F360?

Hey Mark @markalanevans, hey Alex @suprak,

G43 takes optional H argument with tool number, but without H uses last tool selected with Tx M6.

I tried to reproduce it by using:

G10 L1 P1 Z12  ; set 12 mm tool length offset for tool 1
T1 M6 G43      ; select tool 1 and switch on tool length offsets

Now when requesting which tool is selected:

(debug, Selected tool: #<_selected_tool>)

it returns the correct tool number, but when requesting whether tool offsets are active:

(debug, Tool offsets are on: #<_tool_offset>)

it should return 1 when tool length offset is on, but returns always 0. Why?

But on the next motion command, the 12 mm tool offset is active, it is shown in the “offsets” column.

When requesting the tool offset for Z axis:

(debug, Z tool offset: #5403)

it correctly returns 12 mm.

I defined a second tool 2 with

G10 L1 P2 Z14  ; set 14 mm tool length offset for tool 2
T2 M6          ; select tool 2

then the tool offset is reported correctly with 14 mm. When I then switch back to tool 1:

T1 M6

then after a motion command it’s back to 12 again:

(debug, Z tool offset: #5403)

So the tool data defined by the operator with G10 L1 (Set Tool Table) are stored by the Onefinity Controller and are called from the tool table on subsequent tool changes.

PS: Sorry, in fact I was answering to your post in this thread :slight_smile:


I set my zero at the top of the model.

The G43 command by itself will use the offset in the tool table, which I believe is unsupported - or at least it’s not documented where to put it on the controller.

You could attempt to use the G43.1 command to set a dynamic offset value but that won’t come from Fusion with the current post processor, it would be a manual edit.


Ughhh. The origin was set to Stock Box Point… Instead of Selected Point on model :man_facepalming:

Thank you. That looks like it has fixed it.

1 Like

Hey Mark,

sorry, in fact I was answering to your post in this thread :slight_smile:

I’m not sure if anyone helped you understand the Fusion 360 post screen you first showed.
Those are all register numbers.

Number is the tool number in the code as in T1 ← this in unsupported on the 1F so is not needed but harmless as far as i have seen.

Length offset is to set register the length of the tool from home as in H1 in your code. This is not a measurement. You could think of it as a register name where the value is stored. This also in not important in 1F and could be anything.

Diameter offset is to set the register for radial offsets usually used for cutter compensation. This also is not supported on the 1F and is harmless.

Basically I never change anything on that screen and never look at it.


1 Like

THank you! THat is very helpful. I really appreciate it.