Z axis works when jogging, not when burning

When using the manual controls, the z axis works as expected.

I have enabled the z axis in my device settings.

I have tuned the steps per mm to move the proper amount in the physical world as much as light burn thinks it should move.

When I go to burn, the first pass executes and then the command to move the z axis is sent to my grbl controller. The console lingers and says streaming…

I have to cancel the job to be able to do anything. If I back my steps per mm waaaay back (down to 315) then the z axis does work during a burn, but the amount it moves is not correct.

My steps per mm are around 6300 because of the 20 tooth gear and the threaded rods that are being used on the four corners of my z table.

Any suggestions on what could be wrong?

6300 steps per mm is really high for GRBL. Generic GRBL on an 8 bit processor can only output 30000 steps per second, so if you have the maximum speed set higher than 30000 / 6300 (4.75 mm/sec or 280 mm/min) on the Z axis, you’re probably just freezing up the controller.

Is there a reason why these settings work when not burning?

What’s the Z-speed setting in the Move window? The default speed for Z moves when running a job is 10mm / sec. If your firmware isn’t limiting it to what the machine is physically capable of, the controls in the Move window could mess it up too if you set the Z speed to 10mm/sec.

It’s at the default 10.

Then I honestly couldn’t say. I’d have to set up a machine with a Z axis and try overloading it to see what happens. There’s a good chance that for GCode devices we don’t explicitly set the Z speed, so it could just be using the feed rate for your cut layer, which would explain it.

It appears as though the feed rate of the z axis is not set independently from the feed rate of x and y axes.

Here is a snippet of the gcode that light burn is producing:

; LightBurn 0.9.09
; GRBL device profile, current position
G00 G17 G40 G21 G54
G91
M4
; Cut @ 10 mm/sec, 30% power
M8
G0X36.8Y8.41
G1X-0.03Y0.3S315F600
G1X0.03Y0.3
G1X0.09Y0.28
G1X0.14Y0.26
G1X0.18Y0.22
G1X0.23Y0.18
G1X0.25Y0.14
G1X0.28Y0.09
G1X0.3Y0.03
G1X0.31Y-0.03
G1X0.28Y-0.09
G1X0.25Y-0.14
G1X0.22Y-0.18
G1X0.19Y-0.22
G1X0.14Y-0.26
G1X0.08Y-0.28
G1X0.03Y-0.3
G1X-0.03Y-0.3
G1X-0.08Y-0.28
G1X-0.14Y-0.26
G1X-0.19Y-0.22
G1X-0.22Y-0.18
G1X-0.25Y-0.14
G1X-0.28Y-0.09
G1X-0.31Y-0.03
G1X-0.3Y0.03
G1X-0.28Y0.09
G1X-0.25Y0.14
G1X-0.23Y0.18
G1X-0.18Y0.22
G1X-0.14Y0.26
G1X-0.09Y0.28
G0Z-5
G1X-0.03Y0.3
G1X0.03Y0.3
G1X0.09Y0.28
G1X0.14Y0.26
G1X0.18Y0.22
G1X0.23Y0.18
G1X0.25Y0.14
G1X0.28Y0.09
G1X0.3Y0.03
G1X0.31Y-0.03
G1X0.28Y-0.09
G1X0.25Y-0.14
G1X0.22Y-0.18
G1X0.19Y-0.22
G1X0.14Y-0.26
G1X0.08Y-0.28
G1X0.03Y-0.3
G1X-0.03Y-0.3
G1X-0.08Y-0.28
G1X-0.14Y-0.26
G1X-0.19Y-0.22
G1X-0.22Y-0.18
G1X-0.25Y-0.14
G1X-0.28Y-0.09
G1X-0.31Y-0.03
G1X-0.3Y0.03
G1X-0.28Y0.09
G1X-0.25Y0.14
G1X-0.23Y0.18
G1X-0.18Y0.22
G1X-0.14Y0.26
G1X-0.09Y0.28
G0Z5
G0X-3.23Y-1.38
G1X0.23Y-0.54
G1X0.29Y-0.51
G1X0.34Y-0.46
G1X0.39Y-0.42
G1X0.43Y-0.37
G1X0.48Y-0.32
G1X0.51Y-0.27
G1X0.55Y-0.2
G1X0.48Y-0.13
G1X0.48Y-0.07
G1X0.48Y-0.03
G1X0.48Y0.02
G1X0.47Y0.06
G1X0.45Y0.11
G1X0.45Y0.14
G1X0.42Y0.19
G1X0.41Y0.23
G1X0.39Y0.27
G1X0.36Y0.3
G1X0.33Y0.33
G1X0.3Y0.37
G1X0.27Y0.4
G1X0.23Y0.44
G1X0.18Y0.46
G1X29.4
G1X0.16Y0.01
G1X0.15Y0.04
G1X0.14Y0.07
G1X0.13Y0.08
G1X0.11Y0.11
G1X0.09Y0.13
G1X0.06Y0.14
G1X0.04Y0.16
G1X0.03Y0.18
G1Y26.96
G1X-0.02Y0.18
G1X-0.05Y0.17
G1X-0.08Y0.16
G1X-0.12Y0.14
G1X-0.13Y0.11
G1X-0.16Y0.09
G1X-0.17Y0.06
G1X-0.18Y0.02
G1X-68.16
G1X-0.19Y-0.02
G1X-0.18Y-0.06
G1X-0.15Y-0.08
G1X-0.14Y-0.12
G1X-0.11Y-0.14
G1X-0.09Y-0.15
G1X-0.06Y-0.18
G1X-0.02Y-0.18
G1Y-26.96
G1X0.02Y-0.18
G1X0.06Y-0.18
G1X0.08Y-0.16
G1X0.12Y-0.13
G1X0.14Y-0.12
G1X0.15Y-0.08
G1X0.18Y-0.06
G1X0.19Y-0.01
G1X29.36
G0Z-5
G1X0.23Y-0.54
G1X0.29Y-0.51
G1X0.34Y-0.46
G1X0.39Y-0.42
G1X0.43Y-0.37
G1X0.48Y-0.32
G1X0.51Y-0.27
G1X0.55Y-0.2
G1X0.48Y-0.13
G1X0.48Y-0.07
G1X0.48Y-0.03
G1X0.48Y0.02
G1X0.47Y0.06
G1X0.45Y0.11
G1X0.45Y0.14
G1X0.42Y0.19
G1X0.41Y0.23
G1X0.39Y0.27
G1X0.36Y0.3
G1X0.33Y0.33
G1X0.3Y0.37
G1X0.27Y0.4
G1X0.23Y0.44
G1X0.18Y0.46
G1X29.4
G1X0.16Y0.01
G1X0.15Y0.04
G1X0.14Y0.07
G1X0.13Y0.08
G1X0.11Y0.11
G1X0.09Y0.13
G1X0.06Y0.14
G1X0.04Y0.16
G1X0.03Y0.18
G1Y26.96
G1X-0.02Y0.18
G1X-0.05Y0.17
G1X-0.08Y0.16
G1X-0.12Y0.14
G1X-0.13Y0.12
G1X-0.16Y0.08
G1X-0.17Y0.06
G1X-0.18Y0.02
G1X-68.16
G1X-0.19Y-0.02
G1X-0.18Y-0.06
G1X-0.15Y-0.08
G1X-0.14Y-0.12
G1X-0.11Y-0.14
G1X-0.09Y-0.15
G1X-0.06Y-0.18
G1X-0.02Y-0.18
G1Y-26.96
G1X0.02Y-0.18
G1X0.06Y-0.18
G1X0.08Y-0.16
G1X0.12Y-0.13
G1X0.14Y-0.12
G1X0.15Y-0.08
G1X0.18Y-0.06
G1X0.19Y-0.01
G1X29.36
G0Z5
M9
G1S0
M5
; return to starting pos
G0 X-33.57Y-7.03
M2

Here is some gcode that I modified. It works better, the main issue is that the laser stays on when moving the z axis:

; LightBurn 0.9.09
; GRBL device profile, current position
G00 G17 G40 G21 G54
G91
M4
; Cut @ 10 mm/sec, 30% power
M8
G0X36.8Y8.41
G1X-0.03Y0.3S315F600
G1X0.03Y0.3
G1X0.09Y0.28
G1X0.14Y0.26
G1X0.18Y0.22
G1X0.23Y0.18
G1X0.25Y0.14
G1X0.28Y0.09
G1X0.3Y0.03
G1X0.31Y-0.03
G1X0.28Y-0.09
G1X0.25Y-0.14
G1X0.22Y-0.18
G1X0.19Y-0.22
G1X0.14Y-0.26
G1X0.08Y-0.28
G1X0.03Y-0.3
G1X-0.03Y-0.3
G1X-0.08Y-0.28
G1X-0.14Y-0.26
G1X-0.19Y-0.22
G1X-0.22Y-0.18
G1X-0.25Y-0.14
G1X-0.28Y-0.09
G1X-0.31Y-0.03
G1X-0.3Y0.03
G1X-0.28Y0.09
G1X-0.25Y0.14
G1X-0.23Y0.18
G1X-0.18Y0.22
G1X-0.14Y0.26
G1X-0.09Y0.28
G1Z-5F100
G1X-0.03Y0.3F600
G1X0.03Y0.3
G1X0.09Y0.28
G1X0.14Y0.26
G1X0.18Y0.22
G1X0.23Y0.18
G1X0.25Y0.14
G1X0.28Y0.09
G1X0.3Y0.03
G1X0.31Y-0.03
G1X0.28Y-0.09
G1X0.25Y-0.14
G1X0.22Y-0.18
G1X0.19Y-0.22
G1X0.14Y-0.26
G1X0.08Y-0.28
G1X0.03Y-0.3
G1X-0.03Y-0.3
G1X-0.08Y-0.28
G1X-0.14Y-0.26
G1X-0.19Y-0.22
G1X-0.22Y-0.18
G1X-0.25Y-0.14
G1X-0.28Y-0.09
G1X-0.31Y-0.03
G1X-0.3Y0.03
G1X-0.28Y0.09
G1X-0.25Y0.14
G1X-0.23Y0.18
G1X-0.18Y0.22
G1X-0.14Y0.26
G1X-0.09Y0.28
G1Z5F100
G0X-3.23Y-1.38F600
G1X0.23Y-0.54
G1X0.29Y-0.51
G1X0.34Y-0.46
G1X0.39Y-0.42
G1X0.43Y-0.37
G1X0.48Y-0.32
G1X0.51Y-0.27
G1X0.55Y-0.2
G1X0.48Y-0.13
G1X0.48Y-0.07
G1X0.48Y-0.03
G1X0.48Y0.02
G1X0.47Y0.06
G1X0.45Y0.11
G1X0.45Y0.14
G1X0.42Y0.19
G1X0.41Y0.23
G1X0.39Y0.27
G1X0.36Y0.3
G1X0.33Y0.33
G1X0.3Y0.37
G1X0.27Y0.4
G1X0.23Y0.44
G1X0.18Y0.46
G1X29.4
G1X0.16Y0.01
G1X0.15Y0.04
G1X0.14Y0.07
G1X0.13Y0.08
G1X0.11Y0.11
G1X0.09Y0.13
G1X0.06Y0.14
G1X0.04Y0.16
G1X0.03Y0.18
G1Y26.96
G1X-0.02Y0.18
G1X-0.05Y0.17
G1X-0.08Y0.16
G1X-0.12Y0.14
G1X-0.13Y0.11
G1X-0.16Y0.09
G1X-0.17Y0.06
G1X-0.18Y0.02
G1X-68.16
G1X-0.19Y-0.02
G1X-0.18Y-0.06
G1X-0.15Y-0.08
G1X-0.14Y-0.12
G1X-0.11Y-0.14
G1X-0.09Y-0.15
G1X-0.06Y-0.18
G1X-0.02Y-0.18
G1Y-26.96
G1X0.02Y-0.18
G1X0.06Y-0.18
G1X0.08Y-0.16
G1X0.12Y-0.13
G1X0.14Y-0.12
G1X0.15Y-0.08
G1X0.18Y-0.06
G1X0.19Y-0.01
G1X29.36
G1Z-5F100
G1X0.23Y-0.54F600
G1X0.29Y-0.51
G1X0.34Y-0.46
G1X0.39Y-0.42
G1X0.43Y-0.37
G1X0.48Y-0.32
G1X0.51Y-0.27
G1X0.55Y-0.2
G1X0.48Y-0.13
G1X0.48Y-0.07
G1X0.48Y-0.03
G1X0.48Y0.02
G1X0.47Y0.06
G1X0.45Y0.11
G1X0.45Y0.14
G1X0.42Y0.19
G1X0.41Y0.23
G1X0.39Y0.27
G1X0.36Y0.3
G1X0.33Y0.33
G1X0.3Y0.37
G1X0.27Y0.4
G1X0.23Y0.44
G1X0.18Y0.46
G1X29.4
G1X0.16Y0.01
G1X0.15Y0.04
G1X0.14Y0.07
G1X0.13Y0.08
G1X0.11Y0.11
G1X0.09Y0.13
G1X0.06Y0.14
G1X0.04Y0.16
G1X0.03Y0.18
G1Y26.96
G1X-0.02Y0.18
G1X-0.05Y0.17
G1X-0.08Y0.16
G1X-0.12Y0.14
G1X-0.13Y0.12
G1X-0.16Y0.08
G1X-0.17Y0.06
G1X-0.18Y0.02
G1X-68.16
G1X-0.19Y-0.02
G1X-0.18Y-0.06
G1X-0.15Y-0.08
G1X-0.14Y-0.12
G1X-0.11Y-0.14
G1X-0.09Y-0.15
G1X-0.06Y-0.18
G1X-0.02Y-0.18
G1Y-26.96
G1X0.02Y-0.18
G1X0.06Y-0.18
G1X0.08Y-0.16
G1X0.12Y-0.13
G1X0.14Y-0.12
G1X0.15Y-0.08
G1X0.18Y-0.06
G1X0.19Y-0.01
G1X29.36
G1Z5F100
M9
G1S0
M5
; return to starting pos
G0 X-33.57Y-7.03
M2

Clearly G1 is what is keeping the laser on during the z move.

Yes, but you’re the one who put it there. :slight_smile:

All the Z moves emitted by LightBurn are using G0, which just uses the maximum rate set in your controller for that axis.