Unable to parse move 'G1 Z

Basic Information:

Printer Model: Chrion
MCU / Printerboard: SKR3 +EBB42
klippy.log (888.7 KB)

klippy.log

I’m getting the error 'Unable to parse move ‘G1 Z’. Also notice the print head steams off to back right position when no instructions was given to perform this action. I only try to extrude (load filament). Could this be the USB connection I have from the EBB42?

Hard to say without more info, but it seems that the invalid gcode command comes from your M600 macro:

[gcode_macro M600]
description = Change Filament
variable_parameter_x = 0
variable_parameter_y = 0
variable_parameter_z = 20
gcode = 
	SAVE_GCODE_STATE NAME=M600_state
	PAUSE
	G91
	G1 E-.8 F2700
	G1 Z{z}
	G90
	G1 X{x} Y{y} F3000
	G91
	G1 E-50 F1000
	RESTORE_GCODE_STATE NAME=M600_state

The issue is that variable_parameter_z define a gcode state variable named parameter_z, not z. Because z is undefined, G1 Z{z} is rendered as G1 Z which is invalid gcode.

I have no idea why these variable_parameters spread on github, this was never a thing. There once was a default_parameter_* (which is now deprecated and removed) where default_parameter_z defined a default value for the parameter z.

variable_ has a different purpose: it define a variable whose value can be modified with SET_GCODE_VARIABLE. If you only need a fix default parameter, delete these variable_ lines and use the G1 Z{ params.Z|default(20) } syntax.

For your issue of spurious moves, they cannot originate from connection problems, it is most likely a configuration issue.

2 Likes

Thanks, I’ll have to double check all my macros now I know I bit more

Hello,

I have same problem.

Tried overwriting G1 Z{Z} to G1 Z{ params.Z|default(20) } gone unable-to-parse-move-g1-z but head goes back waits and moves to x0 y0 and stops. Resume required.

klippy.log (495.9 KB)

Hello @BezdaM !

Can’t find that in the log…

Unable to parse move 'G1 Z'

Obviously. Z needs a parameter.

I found that here:

[gcode_macro PARK_MACRO]
gcode = 
	M117 PARKING..
	G91
	G1 E-3.14 F1500
	G1 Z{Z}
	G90
	G1 X{0} Y{0} F3000
	G91
	G1 E-50 F1000

And there is no value for ‘Z’

And there also is your move to X0 Y0


BTW: Did your wrote all the 1000+ lines of config on your own?

1 Like