From 4dc04654cf30b72dba01a70f99cd87e1f4bffb80 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 30 Apr 2017 17:28:14 -0500 Subject: [PATCH] Updated DNE G Code in Marlin (markdown) --- DNE-G-Code-in-Marlin.md | 184 ---------------------------------------- G-Code-in-Marlin.md | 1 + 2 files changed, 1 insertion(+), 184 deletions(-) delete mode 100644 DNE-G-Code-in-Marlin.md create mode 100644 G-Code-in-Marlin.md diff --git a/DNE-G-Code-in-Marlin.md b/DNE-G-Code-in-Marlin.md deleted file mode 100644 index bab492f..0000000 --- a/DNE-G-Code-in-Marlin.md +++ /dev/null @@ -1,184 +0,0 @@ -**DO NO EDIT -- TRANSFERRED TO NEW WIKI** - -##About G-Code - -G-Code (or GCode) is the instruction code that tells a RepRap 3D printer what to do. For example, the G-Code G0 X10 tells the machine to move the current tool to X position 10. Marlin's GCode is loosely based on the language specification for the [http://www.nist.gov/customcf/get_pdf.cfm?pub_id=823374 NIST RS274NGC Interpreter], but departs radically in its specific implementation details. (For example, RepRap G-Code doesn't care about "modal groups.") - -##G-Code in Marlin - -###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 - [[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 - [[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 - -###Z Probe - [[G28]] - Home one or more axes. Note G28 clears the bed leveling compensation matrix so use G28 followed by G29 - [[G29]] - Probe the bed Z height at multiple points and enable bed leveling compensation (ABL) - [[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. To test the accuracy of your z probe for bed leveling (returns standard deviation) - [[M401]] - Lower auto bed leveling Z-probe with a servo, ensure you are safe above the bed to clear the probe - [[M402]] - Raise Z-probe. Note: drives the servo - [[M420]] - Enable or disable Mesh Bed Leveling - [[M421]] - Set a single Mesh Bed Leveling Z coordinate: X Y Z - [[M851]] - Custom M code in Marlin to set/fine tune the z probe offset. (i.e. probe offset = 6.90 mm: use M851 Z-6.90, and store with M500 in EEPROM (if enabled)) - -###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: - - N3 T0*57 ; This is a comment - N4 G92 E0*67 - ; So is this - N5 G28*22 - -(example taken from the [RepRap wiki](http://reprap.org/wiki/Gcode#Comments)) - -If you need to use a literal `;` somewhere (for example within `M117`), you can escape semicolons with a `\` -(backslash): - - M117 Hello \;) - -The backslash `\` can also be used to escape `\` itself if you need a literal `\` in front of a `;` - - M117 backslash: \\;and a comment - -Please note that hosts should strip any comments before sending GCODE to the printer in order to save bandwidth. diff --git a/G-Code-in-Marlin.md b/G-Code-in-Marlin.md new file mode 100644 index 0000000..8e7a5f8 --- /dev/null +++ b/G-Code-in-Marlin.md @@ -0,0 +1 @@ +[Article on marlinfw.org](http://marlinfw.org/meta/gcode/) \ No newline at end of file