Commands - HeribertHechtersheim/Z-CodeReverseEngineering GitHub Wiki

Wiki ▸ [Z-Code Documentation](Z Code Documentation) ▸ Command Overview

A list of all the commands I was able to find. "?" means that I was able to find the commands in .zcode files, but I don't know what they do. "??" means that I was not able to find the commands and I don't know what they do.

01

move to, extrude and nozzle fan2 speed

01 type bitfield [unknown coordinate] [x-coordinate] [y-coordinate] [z-coordinate] [e-coordinate] [fan2 speed]

Table of parameters:

name Type Content
type uint8_t seems to be the line-color for the preview in Z-Suite. 01 - blue (object), 02 , 0A-0D - grey (raft layers), FD-FF - invisible (new layer), ...
bitfield uint8_t sets which parameters will be changed in the command
unknown coordinate int32_t only appears in conjuntion with the z-coordinate. Maybe it is the z-coordinate for another mechanical z-axis design(M200 v3)
x-coordinate, y-coordinate int32_t position of the x- and y-axis. 65,536 seems to roughly correspond to 10cm
z-coordinate int32_t position of the z-axis. 65,536 seems to roughly correspond to 8cm
e-coordinate int32_t extruder position
fan2 speed uint8_t with 3 empty bytes following speed of fan2 (fan that cools down the print surface at the nozzle)

Note: All parameters after the bitfield have a 4-byte length. The first byte stores the first 8 least significant bits, the second byte the next 8 bits and so on.

Examples

set speed of fan2 to full power:

command type bitfield fan2 speed
01 FF 20 (00100000) FF 00 00 00

move 10cm (~65,536) on the x- and y-axis and extrude:

command type bitfield x-coordinate y-coordinate e-coordinate
01 01 0B (00001011) 00 00 01 00 00 00 01 00 00 D0 00 00

02

set speed

02 speed

name Type Content
speed (u)int_32t? movement speed

03

??

04

set position

04 bitfield [unknown coordinate] [x-coordinate] [y-coordinate] [z-coordinate] [e-coordinate]

name Type Content
bitfield uint8_t sets which parameters will be changed in the command
unknown coordinate int32_t only appears in conjuntion with the z-coordinate. Maybe it is the z-coordinate for another mechanical z-axis design(M200 v3)
x-coordinate, y-coordinate int32_t position of the x- and y-axis. 65,536 seems to roughly correspond to 10cm
z-coordinate int32_t position of the z-axis. 65,536 seems to roughly correspond to 8cm
e-coordinate int32_t extruder position

05

homing

05 homing_bitfield

Bit Content
0 x-coordinate
1 y-coordinate
2 z-coordinate

06

??

07

??

08

nozzle temperature

08 unknown_parameter temperature

name Type Content
unknown parameter int8_t 00
temperature int32_t nozzle target temperature in °C

09

?

0A

?

0B

progress in percent

0B progress

name Type Content
progress uint8_t displayed printing progress in percent

0C

??

0D

??

0E

bed temperature

0B temperature

name Type Content
temperature int32_t bed target temperature in °C

0F

pause

0F 32bit 32bit

Appendix

Bitfield

The bitfield sets which parameters will be changed in the command. Explanation for each bit (bit 0 is least significant bit):

Bit Content
0 x-coordinate
1 y-coordinate
2 z-coordinate
3 e(extruder)-coordinate
4 ??
5 fan speed
6 unknown coordinate
7 ??