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 | ?? |