Add GCodes from Marlin 1.0.3 dev, format as pre

This commit is contained in:
Scott Lahteine 2015-04-10 14:55:21 -07:00
parent 67c0e8323e
commit 907e8e98e5

View File

@ -2,105 +2,134 @@
## G Codes ## G Codes
* G0 -> G1 ```
* G1 - Coordinated Movement X Y Z E G0 -> G1
* G2 - CW ARC G1 - Coordinated Movement X Y Z E
* G3 - CCW ARC G2 - CW ARC
* G4 - Dwell S[seconds] or P[milliseconds] G3 - CCW ARC
* G10 - retract filament according to settings of M207 G4 - Dwell S[seconds] or P[milliseconds]
* G11 - retract recover filament according to settings of M208 G10 - retract filament according to settings of M207
* G28 - Home all Axis G11 - retract recover filament according to settings of M208
* G29 - Detailed Z-Probe, probes the bed at 3 points. You must be at the home position for this to work correctly. G28 - Home all Axis
* G30 - Single Z Probe, probes bed at current XY location. G29 - Detailed Z-Probe, probes the bed at 3 points. You must be at the home position for this to work correctly.
* G31 - Dock Z Probe sled (if enabled) G30 - Single Z Probe, probes bed at current XY location.
* G32 - Undock Z Probe sled (if enabled) G31 - Dock Z Probe sled (if enabled)
* G90 - Use Absolute Coordinates G32 - Undock Z Probe sled (if enabled)
* G91 - Use Relative Coordinates G90 - Use Absolute Coordinates
* G92 - Set current position to cordinates given G91 - Use Relative Coordinates
G92 - Set current position to cordinates given
```
## M Codes ## M Codes
* M0 - Unconditional stop - Wait for user to press a button on the LCD (Only if ULTRA_LCD is enabled) ```
* M1 - Same as M0 M0 - Unconditional stop - Wait for user to press a button on the LCD (Only if ULTRA_LCD is enabled)
* M17 - Enable/Power all stepper motors M1 - Same as M0
* M18 - Disable all stepper motors; same as M84 M17 - Enable/Power all stepper motors
* M20 - List SD card M18 - Disable all stepper motors; same as M84
* M21 - Init SD card M20 - List SD card
* M22 - Release SD card M21 - Init SD card
* M23 - Select SD file (M23 filename.g) M22 - Release SD card
* M24 - Start/resume SD print M23 - Select SD file (M23 filename.g)
* M25 - Pause SD print M24 - Start/resume SD print
* M26 - Set SD position in bytes (M26 S12345) M25 - Pause SD print
* M27 - Report SD print status M26 - Set SD position in bytes (M26 S12345)
* M28 - Start SD write (M28 filename.g) M27 - Report SD print status
* M29 - Stop SD write M28 - Start SD write (M28 filename.g)
* M30 - Delete file from SD (M30 filename.g) M29 - Stop SD write
* M31 - Output time since last M109 or SD card start to serial M30 - Delete file from SD (M30 filename.g)
* M32 - Select file and start SD print (Can be used when printing from SD card) M31 - Output time since last M109 or SD card start to serial
* M42 - Change pin status via gcode Use M42 Px Sy to set pin x to value y, when omitting Px the onboard led will be used. M32 - Select file and start SD print (Can be used _while_ printing from SD card files):
* M80 - Turn on Power Supply syntax "M32 /path/filename#", or "M32 S<startpos bytes> !filename#"
* M81 - Turn off Power Supply Call gcode file : "M32 P !filename#" and return to caller file after finishing (similar to #include).
* M82 - Set E codes absolute (default) The '#' is necessary when calling from within sd files, as it stops buffer prereading
* M83 - Set E codes relative while in Absolute Coordinates (G90) mode M42 - Change pin status via gcode Use M42 Px Sy to set pin x to value y, when omitting Px the onboard led will be used.
* M84 - Disable steppers until next move, or use S[seconds] to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout. M48 - Measure Z_Probe repeatability. M48 [n # of points] [X position] [Y position] [V_erboseness #] [E_ngage Probe] [L # of legs of travel]
* M85 - Set inactivity shutdown timer with parameter S[seconds]. To disable set zero (default) M80 - Turn on Power Supply
* M92 - Set axis_steps_per_unit - same syntax as G92 M81 - Turn off Power Supply
* M104 - Set extruder target temp M82 - Set E codes absolute (default)
* M105 - Read current temp M83 - Set E codes relative while in Absolute Coordinates (G90) mode
* M106 - Fan on M84 - Disable steppers until next move,
* M107 - Fan off or use S<seconds> to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout.
* M109 - Sxxx Wait for extruder current temp to reach target temp. Waits only when heating M85 - Set inactivity shutdown timer with parameter S<seconds>. To disable set zero (default)
* Rxxx Wait for extruder current temp to reach target temp. Waits when heating and cooling M92 - Set axis_steps_per_unit - same syntax as G92
* M112 - Emergency stop M104 - Set extruder target temp
* M114 - Output current position to serial port M105 - Read current temp
* M115 - Capabilities string M106 - Fan on
* M117 - display message M107 - Fan off
* M119 - Output Endstop status to serial port M109 - Sxxx Wait for extruder current temp to reach target temp. Waits only when heating
* M126 - Solenoid Air Valve Open (BariCUDA support by jmil) Rxxx Wait for extruder current temp to reach target temp. Waits when heating and cooling
* M127 - Solenoid Air Valve Closed (BariCUDA vent to atmospheric pressure by jmil) IF AUTOTEMP is enabled, S<mintemp> B<maxtemp> F<factor>. Exit autotemp by any M109 without F
* M128 - EtoP Open (BariCUDA EtoP = electricity to air pressure transducer by jmil) M112 - Emergency stop
* M129 - EtoP Closed (BariCUDA EtoP = electricity to air pressure transducer by jmil) M114 - Output current position to serial port
* M140 - Set bed target temp M115 - Capabilities string
* M190 - Sxxx Wait for bed current temp to reach target temp. Waits only when heating M117 - display message
* Rxxx Wait for bed current temp to reach target temp. Waits when heating and cooling M119 - Output Endstop status to serial port
* M200 - D[millimeters]- set filament diameter and set E axis units to cubic millimeters (use S0 to set back to millimeters). M120 - Enable endstop detection
* M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) M121 - Disable endstop detection
* M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! M126 - Solenoid Air Valve Open (BariCUDA support by jmil)
* M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec M127 - Solenoid Air Valve Closed (BariCUDA vent to atmospheric pressure by jmil)
* M204 - Set default acceleration: P for Printing moves, R for Retract only (no X, Y, Z) moves and T for Travel (non printing) moves (ex. M204 P800 T3000 R9000) in mm/sec^2 M128 - EtoP Open (BariCUDA EtoP = electricity to air pressure transducer by jmil)
* M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk, E=maximum E jerk M129 - EtoP Closed (BariCUDA EtoP = electricity to air pressure transducer by jmil)
* M206 - set additional homing offset M140 - Set bed target temp
* M207 - set retract length S[positive mm] F[feedrate mm/min] Z[additional zlift/hop], stays in mm regardless of M200 setting M150 - Set BlinkM Color Output R: Red<0-255> U(!): Green<0-255> B: Blue<0-255> over i2c, G for green does not work.
* M208 - set recover=unretract length S[positive mm surplus to the M207 S*] F[feedrate mm/min] M190 - Sxxx Wait for bed current temp to reach target temp. Waits only when heating
* M209 - S[1=true/0=false] enable automatic retract detect if the slicer did not support G10/11: every normal extrude-only move will be classified as retract depending on the direction. Rxxx Wait for bed current temp to reach target temp. Waits when heating and cooling
* M218 - set hotend offset (in mm): T[extruder_number] X[offset_on_X] Y[offset_on_Y] M200 D<millimeters>- set filament diameter and set E axis units to cubic millimeters (use S0 to set back to millimeters).
* M220 - S[factor in percent] - set speed factor override percentage M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000)
* M221 - S[factor in percent] - set extrude factor override percentage M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!!
* M240 - Trigger a camera to take a photograph M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec
* M280 - Position an RC Servo P[index] S[angle/microseconds], ommit S to report back current angle M204 - Set default acceleration: P for Printing moves, R for Retract only (no X, Y, Z) moves and T for Travel (non printing) moves (ex. M204 P800 T3000 R9000) in mm/sec^2
* M300 - Play beep sound S[frequency Hz] P[duration ms] M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk, E=maximum E jerk
* M301 - Set PID parameters P I and D M206 - Set additional homing offset
* M302 - Allow cold extrudes M207 - Set retract length S[positive mm] F[feedrate mm/min] Z[additional zlift/hop], stays in mm regardless of M200 setting
* M303 - PID relay autotune S[temperature] sets the target temperature. (default target temperature = 150C) M208 - Set recover=unretract length S[positive mm surplus to the M207 S*] F[feedrate mm/sec]
* M304 - Set bed PID parameters P I and D M209 - S<1=true/0=false> enable automatic retract detect if the slicer did not support G10/11: every normal extrude-only move will be classified as retract depending on the direction.
* M350 - Set microstepping mode. M218 - Set hotend offset (in mm): T<extruder_number> X<offset_on_X> Y<offset_on_Y>
* M351 - Toggle MS1 MS2 pins directly. M220 S<factor in percent>- set speed factor override percentage
* M400 - Finish all moves M221 S<factor in percent>- set extrude factor override percentage
* M401 - Lower z-probe if present M226 P<pin number> S<pin state>- Wait until the specified pin reaches the state required
* M402 - Raise z-probe if present M240 - Trigger a camera to take a photograph
* M404 - N[dia in mm] Enter the nominal filament width (3mm, 1.75mm) or will display nominal filament width without parameters M250 - Set LCD contrast C<contrast value> (value 0..63)
* M405 - Turn on Filament Sensor extrusion control. Optional D[delay in cm] to set delay in centimeters between sensor and extruder M280 - Set servo position absolute. P: servo index, S: angle or microseconds
* M406 - Turn off Filament Sensor extrusion control M300 - Play beep sound S<frequency Hz> P<duration ms>
* M407 - Displays measured filament diameter M301 - Set PID parameters P I and D
* M500 - stores paramters in EEPROM M302 - Allow cold extrudes, or set the minimum extrude S<temperature>.
* M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). M303 - PID relay autotune S<temperature> sets the target temperature. (default target temperature = 150C)
* M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. M304 - Set bed PID parameters P I and D
* M503 - print the current settings (from memory not from EEPROM) M380 - Activate solenoid on active extruder
* M540 - Use S[0|1] to enable or disable the stop SD card print on endstop hit (requires ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED) M381 - Disable all solenoids
* M600 - Pause for filament change X[pos] Y[pos] Z[relative lift] E[initial retract] L[later retract distance for removal] M400 - Finish all moves
* M907 - Set digital trimpot motor current using axis codes. M401 - Lower z-probe if present
* M908 - Control digital trimpot directly. M402 - Raise z-probe if present
* M928 - Start SD logging (M928 filename.g) - ended by M29 M404 - N<dia in mm> Enter the nominal filament width (3mm, 1.75mm ) or will display nominal filament width without parameters
* M999 - Restart after being stopped by error M405 - Turn on Filament Sensor extrusion control. Optional D<delay in cm> to set delay in centimeters between sensor and extruder
M406 - Turn off Filament Sensor extrusion control
M407 - Display measured filament diameter
M500 - Store parameters in EEPROM
M501 - Read parameters from EEPROM (if you need reset them after you changed them temporarily).
M502 - Revert to the default "factory settings". You still need to store them in EEPROM afterwards if you want to.
M503 - Print the current settings (from memory not from EEPROM). Use S0 to leave off headings.
M540 - Use S[0|1] to enable or disable the stop SD card print on endstop hit (requires ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED)
M600 - Pause for filament change X[pos] Y[pos] Z[relative lift] E[initial retract] L[later retract distance for removal]
M665 - Set delta configurations
M666 - Set delta endstop adjustment
M605 - Set dual x-carriage movement mode: S<mode> [ X<duplication x-offset> R<duplication temp offset> ]
M907 - Set digital trimpot motor current using axis codes.
M908 - Control digital trimpot directly.
M350 - Set microstepping mode.
M351 - Toggle MS1 MS2 pins directly.
M928 - Start SD logging (M928 filename.g) - ended by M29
M999 - Restart after being stopped by error
```
## SCARA-specific M-Codes - May change to suit future G-code standards
```
M360 - SCARA calibration: Move to cal-position ThetaA (0 deg calibration)
M361 - SCARA calibration: Move to cal-position ThetaB (90 deg calibration - steps per degree)
M362 - SCARA calibration: Move to cal-position PsiA (0 deg calibration)
M363 - SCARA calibration: Move to cal-position PsiB (90 deg calibration - steps per degree)
M364 - SCARA calibration: Move to cal-position PSIC (90 deg to Theta calibration position)
M365 - SCARA calibration: Scaling factor, X, Y, Z axis
```
# Comments # Comments
@ -122,4 +151,4 @@ If you need to use a literal `;` somewhere (for example within `M117`), you can
M117 backslash: \\;and a comment M117 backslash: \\;and a comment
Please note that hosts should strip any comments before sending GCODE to the printer in order to save bandwidth. Please note that hosts should strip any comments before sending GCODE to the printer in order to save bandwidth.