From f33814fafe6d3f7fff0fa1b7f25e69470513c73b Mon Sep 17 00:00:00 2001 From: AnHardt Date: Thu, 24 Sep 2015 22:22:41 +0200 Subject: [PATCH] Updated G Code in Marlin (mediawiki => markdown) --- ...in-Marlin.mediawiki => G-Code-in-Marlin.md | 148 +++++++++++++++++- 1 file changed, 145 insertions(+), 3 deletions(-) rename G-Code-in-Marlin.mediawiki => G-Code-in-Marlin.md (95%) diff --git a/G-Code-in-Marlin.mediawiki b/G-Code-in-Marlin.md similarity index 95% rename from G-Code-in-Marlin.mediawiki rename to G-Code-in-Marlin.md index 8bb504f..6e17d59 100644 --- a/G-Code-in-Marlin.mediawiki +++ b/G-Code-in-Marlin.md @@ -7,156 +7,298 @@ G-Code (or GCode) is the instruction code that tells a RepRap 3D printer what to === Movement === [[G0]] -> G1 + [[G1]] - Coordinated Movement X Y Z E + [[G2]] - Clockwise Arc + [[G3]] - Counter-clockwise Arc + [[G4]] - Dwell S or P + [[G92]] - Set the "current position" for X Y Z E + [[M0]] - Wait for user, with optional prompt message (requires LCD controller) + [[M1]] -> M0 + [[M400]] - Finish all moves + [[M999]] - Restart after an Emergency Stop + === SD Card === + [[M20]] - List SD card + [[M21]] - Init SD card + [[M22]] - Release SD card + [[M23]] - Select an SD file by DOS path (M23 path/to/filename.g) + [[M24]] - Start/resume SD print + [[M25]] - Pause SD print + [[M26]] - Set SD position in bytes + [[M27]] - Report SD print status + [[M28]] - Start SD write + [[M29]] - Stop SD write + [[M30]] - Delete file from SD + [[M31]] - Print the time since SD print started, or since the most recent [[M109]] command + [[M32]] - Select file and start SD print. Can be used within G-Code files to include other files. + [[M540]] - Set the state of the [[Abort on Endstop Hit|ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED]] flag. + [[M928]] - Start SD logging. Stop logging with [[M29]]. + === Hardware Control === + [[M42]] - Change pin status via gcode: P S. If P is omitted the onboard LED pin will be used. M42 P9 S1 ; set PIN 9 to 1. + [[M80]] - Turn on Power Supply + [[M81]] - Turn off Power Supply + [[M85]] - Set inactivity shutdown timer with parameter S. Disable with "M85" or "M85 S0". + [[M112]] - Emergency stop. Requires hardware reset!! + [[M226]] - Wait for a pin to be in some state: P S + [[M410]] - Quickstop. Abort all planned moves, stopping the printer. + === Temperature === + [[M104]] - Set extruder target temperature + [[M105]] - Request the current temperature of all heaters + [[M106]] - Set the fan speed + [[M107]] - Set the fan speed to 0 (thus turning it off) + [[M109]] - Wait for an extruder to reach its target temperature. Optionally set the target temperature. Optionally enable [[AUTOTEMP]]. + [[M140]] - Set heated bed target temperature + [[M145]] - Set "heatup state" values for the LCD Menu + [[M190]] - Wait for the heated bed to reach its target temperature. Optionally set the target temperature. + [[M301]] - Set PID parameters P I and D + [[M302]] - Allow cold extrudes, or set the minimum extrusion temperature + [[M303]] - PID relay autotune S sets the target temperature. (default target temperature = 150C) + [[M304]] - Set bed PID parameters P I and D + === Messages === + [[M111]] - Set debug flags + [[M114]] - Output current position to serial port + [[M115]] - Capabilities string + [[M117]] - Display message text on the LCD + [[M119]] - Output Endstop status to serial port + === Endstops === + [[M120]] - Enable endstop detection + [[M121]] - Disable endstop detection + === Special Features === + [[M126]] - Solenoid Air Valve Open. (Requires [[BARICUDA]]) + [[M127]] - Solenoid Air Valve Closed. (Requires [[BARICUDA]]) + [[M128]] - EtoP Open. (Requires [[BARICUDA]]) + [[M129]] - EtoP Closed. (Requires [[BARICUDA]]) + [[M150]] - Set BlinkM RGB Color via I2C. (Requires [[BLINKM]]) + [[M240]] - Trigger a camera to take a photograph. (Requires [[CHDK]] or [[PHOTOGRAPH_PIN]]) + [[M250]] - Set LCD contrast + [[M280]] - Set servo position (absolute) + [[M300]] - Play a beep sound. (Requires [[BEEPER_PIN]] or [[LCD_USE_I2C_BUZZER]]) + [[M380]] - Activate solenoid on active extruder. (Requires [[EXT_SOLENOID]]) + [[M381]] - Disable all solenoids. (Requires [[EXT_SOLENOID]]) + [[M600]] - Pause for filament change. (Requires [[FILAMENTCHANGEENABLE]]) + + === Units and Measures === + [[G90]] - Use Absolute Coordinates + [[G91]] - Use Relative Coordinates + [[M82]] - Set E codes absolute (default) + [[M83]] - Set E codes relative while in Absolute Coordinates (G90) mode + [[M92]] - Set axis_steps_per_unit - same syntax as G92 + [[M200]] - Set filament diameter and E axis units to mm^3 + [[M201]] - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) + [[M202]] - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! + [[M203]] - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec - [[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 + + [[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 + [[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 + [[M206]] - Set additional homing offset + [[M218]] - Set hotend offset (in mm): T X Y + [[M220]] - Set speed factor override percentage: S + [[M221]] - Set extrude factor override percentage: S + + === Firmware Retraction === + [[G10]] - Retract filament according to settings of M207 + [[G11]] - Retract recover filament according to settings of M208 - [[M207]] - Set retract length S[positive mm] F[feedrate mm/min] Z[additional zlift/hop], stays in mm regardless of M200 setting + + [[M207]] - Set retract length S[positive mm] F[feedrate mm/min] Z[additional zlift/hop], stays in mm regardless +of M200 setting + [[M208]] - Set recover=unretract length S[positive mm surplus to the M207 S*] F[feedrate mm/s] - [[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 + + [[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 + === Z Probe === + [[G28]] - Home one or more axes. + [[G29]] - Probe the bed Z height at multiple points and enable bed leveling compensation. + [[G30]] - Probe the bed Z height at the current XY position. + [[G31]] - Dock Z Probe sled. + [[G32]] - Undock Z Probe sled. + [[M48]] - Measure Z Probe repeatability. + [[M401]] - Lower Z-probe. + [[M402]] - Raise Z-probe. + [[M420]] - Enable or disable Mesh Bed Leveling. + [[M421]] - Set a single Mesh Bed Leveling Z coordinate: X Y Z + + === Filament Diameter === + [[M404]] - Set (or display) Nominal Filament Diameter in mm: [N] (e.g., 3mm or 1.75mm) + [[M405]] - Turn on Filament Sensor extrusion control: [D] to set distance (in cm) from sensor to extruder + [[M406]] - Turn off Filament Sensor extrusion control + [[M407]] - Display measured Filament Diameter + === EEPROM Settings === + [[M500]] - Save current settings to EEPROM. + [[M501]] - Load stored settings from EEPROM. + [[M502]] - Revert to the default "factory settings." '''''Does not store them in EEPROM!''''' + [[M503]] - Print current settings (from memory, not EEPROM). + === Delta === + [[M665]] - Set Delta configurations: L R S + [[M666]] - Set Delta endstop adjustment: X Y Z + [[M605]] - Set dual x-carriage movement mode: S [ X R ] + + === Stepper Drivers === + [[M17]] - Enable/Power all stepper motors + [[M18]] -> [[M84]] + [[M84]] - Disable steppers until the next move, or set the inactivity timeout after which steppers should be disabled. + [[M907]] - Set digital trimpot motor current using axis codes. + [[M908]] - Control digital trimpot directly. + [[M350]] - Set microstepping mode. + [[M351]] - Toggle MS1 MS2 pins directly to set microstepping. + === SCARA === + ''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 + + === Host Printing === + [[M110]] - Set the current Line Number + == G-Code Comments == Comments start at a ; (semicolon) and end with the end of the line: