Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
supported-g-codes [2019/01/29 22:51]
arthur [Additional Codes]
supported-g-codes [2019/08/07 00:57] (current)
98.191.200.92 [G codes] Corrected M305
Line 34: Line 34:
 | G28.6 | Shows the homing status of each axis | <​kbd>​G28.6</​kbd>​ | | G28.6 | Shows the homing status of each axis | <​kbd>​G28.6</​kbd>​ |
 | G29 | Probes the bed and outputs the bed heights depending on levelling strategy selected, see [[ZProbe]] ​ | <​kbd>​G29</​kbd>​ | | G29 | Probes the bed and outputs the bed heights depending on levelling strategy selected, see [[ZProbe]] ​ | <​kbd>​G29</​kbd>​ |
-| [[G30]] | Simple Z probe at current XY, reports distance moved down until probe triggers. optional F parameter defines the speed of probing, zprobe.slow_feedrate is used when not supplied | <​kbd>​G30 ​G30 F100</​kbd>​ |+| [[G30]] | Simple Z probe at current XY, reports distance moved down until probe triggers. optional F parameter defines the speed of probing, zprobe.slow_feedrate is used when not supplied | <​kbd>​G30</​kbd>​ <kbd>G30 F100</​kbd>​ |
 | G31 | Depends on levelling strategy selected, see [[ZProbe]] ​ | <​kbd>​G31</​kbd>​ | | G31 | Depends on levelling strategy selected, see [[ZProbe]] ​ | <​kbd>​G31</​kbd>​ |
-| G32 | Uses Z probe to calibrate delta endstops and arm radius, use R parameter to select only arm radius calibration and E to select only endstop calibration. I to set target precision, J to set probe_radius,​ K to keep current endstop trim settings. ​ In Zgrid module, it starts the grid probing | <​kbd>​G32 ​G32 R G32 E G32 EK G32 I0.02</​kbd>​ | +| G32 | Uses Z probe to calibrate delta endstops and arm radius, use R parameter to select only arm radius calibration and E to select only endstop calibration. I to set target precision, J to set probe_radius,​ K to keep current endstop trim settings. ​ In Zgrid module, it starts the grid probing | <​kbd>​G32</​kbd>​ <kbd>G32 R</​kbd>​ <kbd>G32 E</​kbd>​ <kbd>G32 EK</​kbd>​ <kbd>G32 I0.02</​kbd>​ | 
-| G38.2 G38.3 | Standard probe commands implemented as documented [[http://​linuxcnc.org/​docs/​2.6/​html/​gcode/​gcode.html#​sec:​G38-probe|here]] | <​kbd>​G38.2 Z-10</​kbd>​| +| G38.2 G38.3 | Standard probe commands implemented as documented [[http://​linuxcnc.org/​docs/​2.6/​html/​gcode/​gcode.html#​sec:​G38-probe|here]] | <kbd>'G38.2 Z-10'</​kbd>​| 
-| G53,​[[G54]]-G59.3 | use workspace coordinates http://​linuxcnc.org/​docs/​html/​gcode/​coordinates.html and http://​linuxcnc.org/​docs/​html/​gcode/​g-code.html#​gcode:​g54-g59.3 | <​kbd>​G54</​kbd>​ | +| G53 | Must be on a line by itself OR the first G code on a linethe directly following G0/G1 will be executed in MCS coordinates | <​kbd>​G53 G0 X0 Y0</​kbd>​ | 
-| [[G90]] | Absolute mode ( //​default// ​) : passed coordinates will be considered absolute ( relative to 0.0.0 ) (command is modal)| <​kbd>​G90</​kbd>​ | +[[G54]]-G59.3 | use workspace coordinates http://​linuxcnc.org/​docs/​html/​gcode/​coordinates.html and http://​linuxcnc.org/​docs/​html/​gcode/​g-code.html#​gcode:​g54-g59.3 | <​kbd>​G54</​kbd>​ | 
-| [[G91]] | Relative mode : passed coordinates will be considered relative to the current point (command is modal)| <​kbd>​G91</​kbd>​ |+| [[G90]] | Absolute mode ( //default// ) (command is modal)| <​kbd>​G90</​kbd>​ | 
 +| [[G91]] | Relative mode (command is modal)| <​kbd>​G91</​kbd>​ |
 | [[G92]] | Set global workspace coordinate system to specified coordinates http://​linuxcnc.org/​docs/​html/​gcode/​g-code.html#​gcode:​g92 | <​kbd>​G92 X0 Y0 Z0</​kbd>​ | | [[G92]] | Set global workspace coordinate system to specified coordinates http://​linuxcnc.org/​docs/​html/​gcode/​g-code.html#​gcode:​g92 | <​kbd>​G92 X0 Y0 Z0</​kbd>​ |
 | G92.1 | Clear the G92 and G30 Znnn offsets | <​kbd>​G92.1</​kbd>​| | G92.1 | Clear the G92 and G30 Znnn offsets | <​kbd>​G92.1</​kbd>​|
 +| G92.4 | manually set homing (MCS) for XYZ  | <​kbd>​G92.4 X0 Y0 Z0</​kbd>​|
 |= M-Code |= Description ​  ​|= ​ | |= M-Code |= Description ​  ​|= ​ |
 | [[M3]] | Starts the spindle. Only if spindle module is enabled. The S parameter sets the speed in rotations per minute | <​kbd>​M3 S5000</​kbd>​ | | [[M3]] | Starts the spindle. Only if spindle module is enabled. The S parameter sets the speed in rotations per minute | <​kbd>​M3 S5000</​kbd>​ |
 | [[M5]] | Stops the spindle Only if spindle module is enabled.| <​kbd>​M5</​kbd>​ | | [[M5]] | Stops the spindle Only if spindle module is enabled.| <​kbd>​M5</​kbd>​ |
 +| M7 | Starts the mist switch for CNC (Need to create a switch called : switch.mist.enable).| <​kbd>​M7</​kbd>​ |
 +| M8 | Starts the flood switch for CNC (Need to create a switch called : switch.flood.enable).| <​kbd>​M8</​kbd>​ |
 +| M9 | Stops the mist and flood at same time (like LinuxCNC and GRBL).| <​kbd>​M9</​kbd>​ |
 | M17 | Enable stepper motors | <​kbd>​M17</​kbd>​ | | M17 | Enable stepper motors | <​kbd>​M17</​kbd>​ |
 | M18 | Disable stepper motors. With a parameter it will disable that stepper motor A will disable extruder 1 B will disable extruder 2. E0 will disable the currently selected extruder | <​kbd>​M18</​kbd>​ <​kbd>​M18 X0</​kbd>​ <​kbd>​M18 E0</​kbd>​ | | M18 | Disable stepper motors. With a parameter it will disable that stepper motor A will disable extruder 1 B will disable extruder 2. E0 will disable the currently selected extruder | <​kbd>​M18</​kbd>​ <​kbd>​M18 X0</​kbd>​ <​kbd>​M18 E0</​kbd>​ |
Line 62: Line 67:
 | M83 | Set relative mode for extruder only | <​kbd>​M83</​kbd>​ | | M83 | Set relative mode for extruder only | <​kbd>​M83</​kbd>​ |
 | M84 | Disable steppers | <​kbd>​M84</​kbd>​ | | M84 | Disable steppers | <​kbd>​M84</​kbd>​ |
-| M92 | Set axis steps per mm for XYZ axis and/or ABC axis (M92 A100 sets A axis if it is NOT an extruder) | <​kbd>​M92 X200 or M92 A1000</​kbd>​ |+| M92 | Set axis steps per mm for XYZ axis and/or ABC axis (M92 A100 sets A axis if it is NOT an extruder) | <​kbd>​M92 X200</​kbd>​ <kbd>M92 A1000</​kbd>​ |
 | M104 | Set Extruder Temperature ​ - S<​temperature>​ | <​kbd>​M104 S190</​kbd>​ | | M104 | Set Extruder Temperature ​ - S<​temperature>​ | <​kbd>​M104 S190</​kbd>​ |
 | M105 | Read current temp | <​kbd>​M105</​kbd>​ | | M105 | Read current temp | <​kbd>​M105</​kbd>​ |
Line 69: Line 74:
 | M109 | Set Extruder Temperature and Wait  - S<​temperature>​ | <​kbd>​M109 S190</​kbd>​ | | M109 | Set Extruder Temperature and Wait  - S<​temperature>​ | <​kbd>​M109 S190</​kbd>​ |
 | M110 | Set current line number -N<line number> | <​kbd>​N123 M110</​kbd>​ | | M110 | Set current line number -N<line number> | <​kbd>​N123 M110</​kbd>​ |
-| M112 | Halt all operations, turn off heaters, go into Halt state | |+| M112 | Halt all operations, turn off heaters, go into Halt state | <​kbd>​M112</​kbd> ​|
 | M114 | Show current position of all axes, XYZ will be the last requested position | <​kbd>​M114</​kbd>​ | | M114 | Show current position of all axes, XYZ will be the last requested position | <​kbd>​M114</​kbd>​ |
 | M114.1 | Show current real time position of all axes | <​kbd>​M114.1</​kbd>​ | | M114.1 | Show current real time position of all axes | <​kbd>​M114.1</​kbd>​ |
Line 76: Line 81:
 | M114.4 | Show last milestone | <​kbd>​M114.4</​kbd>​ | | M114.4 | Show last milestone | <​kbd>​M114.4</​kbd>​ |
 | M114.5 | Show last machine position | <​kbd>​M114.5</​kbd>​ | | M114.5 | Show last machine position | <​kbd>​M114.5</​kbd>​ |
-| M117 | Display message on LCD, blank message will clear it | <​kbd>​M117 hello world or M117</​kbd>​ |+| M117 | Display message on LCD, blank message will clear it | <​kbd>​M117 hello world</​kbd>​ <kbd>M117</​kbd>​ |
 | M119 | Show limit switch status | <​kbd>​M119</​kbd>​ | | M119 | Show limit switch status | <​kbd>​M119</​kbd>​ |
 | M120 | "​Push"​ the current feed-rate and seek-rate so that another one can be temporarily used, then the current one can be restored | <​kbd>​M120</​kbd>​ | | M120 | "​Push"​ the current feed-rate and seek-rate so that another one can be temporarily used, then the current one can be restored | <​kbd>​M120</​kbd>​ |
Line 97: Line 102:
 | M303 | Begin PID auto-tune cycle  E<​hotendid>​ S<​temperature> ​ | <​kbd>​M303 E0 S185</​kbd>​ - Tune extruder - <​kbd>​M303 E1 S100</​kbd>​ - Tune printbed - | | M303 | Begin PID auto-tune cycle  E<​hotendid>​ S<​temperature> ​ | <​kbd>​M303 E0 S185</​kbd>​ - Tune extruder - <​kbd>​M303 E1 S100</​kbd>​ - Tune printbed - |
 | M304 | Abort PID auto-tuning | <​kbd>​M304</​kbd>​ | | M304 | Abort PID auto-tuning | <​kbd>​M304</​kbd>​ |
-| M305 | Set parameters for the thermistor, where <​kbd>​B</​kbd>​ is beta, <​kbd>​R</​kbd>​ is r0 and <​kbd>​X</​kbd>​ is t0; <​kbd>​P</​kbd>​ is the ID from the thermistors list (use console command <​kbd>​thermistors</​kbd>​ to get a list). | <​kbd>​M305 B4066</​kbd>​ |+| M305 | Set or get parameters for the thermistor. With no optionsprints the raw analgo values and parameters for each thermistor. Give S (thermistor number) to set parameters ​where <​kbd>​B</​kbd>​ is beta, <​kbd>​R</​kbd>​ is r0 and <​kbd>​X</​kbd>​ is t0; <​kbd>​P</​kbd>​ is the ID from the thermistors list (use console command <​kbd>​thermistors</​kbd>​ to get a list). | <​kbd>​M305 ​S0 B4066</​kbd>​ |
 | M306 | Set homing offsets based on current position, subtracts current position from homing offset for specified axis | <​kbd>​M306 Z0</​kbd>​ | | M306 | Set homing offsets based on current position, subtracts current position from homing offset for specified axis | <​kbd>​M306 Z0</​kbd>​ |
-| M360 | Scara Morgan: Move to Theta 0 degree position. Adding P0 will save the current arm position as the Theta 0 degree position | <​kbd>​M360 ​or M360 P0</​kbd>​ | +| M360 | Scara Morgan: Move to Theta 0 degree position. Adding P0 will save the current arm position as the Theta 0 degree position | <​kbd>​M360</​kbd>​ <kbd>M360 P0</​kbd>​ | 
-| M361 | Scara Morgan: Move to Theta 90 degree position. Adding P0 will save the current arm position as the Theta 90 degree position | <​kbd>​M361 ​or M360 P0</​kbd>​ |  +| M361 | Scara Morgan: Move to Theta 90 degree position. Adding P0 will save the current arm position as the Theta 90 degree position | <​kbd>​M361</​kbd>​ <​kbd>​M361 ​P0</​kbd>​ |  
-| M364 | Scara Morgan: M364: Move to Psi + Theta 90 degree position. Adding P0 will save the current arm position as the Psi + Theta 90 degree position | <​kbd>​M364 ​or M344 P0</​kbd>​ |  +| M364 | Scara Morgan: M364: Move to Psi + Theta 90 degree position. Adding P0 will save the current arm position as the Psi + Theta 90 degree position | <​kbd>​M364</​kbd>​ <​kbd>​M364 ​P0</​kbd>​ |  
-| M370 | Z grid strategy: clears the ZGrid and the bed levelling is disabled until G32 is run again. ​ ​Specify X and Y values to change grid size | <​kbd>​M370 ​ M370 X9 Y11</​kbd>​ | +| M370 | Z grid strategy: clears the ZGrid and the bed levelling is disabled until G32 is run again. | <​kbd>​M370</​kbd>​ | 
-| M371 | Z grid strategy: moves the head to the next calibration position without saving for manual calibration | <​kbd>​M371</​kbd>​ | +| M374 | Z grid strategy: save calibration grid. | <​kbd>​M374</​kbd>​ | 
-| M372 | Z grid strategy: move the head to the next calibration position after saving the current probe point to memory - manual calbration | <​kbd>​M372</​kbd>​ | +| M375 | Z grid strategy: load calibration grid. | <​kbd>​M375</​kbd>​ |
-| M373 | Z grid strategy: completes calibration and enables the Z compensation grid | <​kbd>​M373</​kbd>​ | +
-| M374 | Z grid strategy: save calibration grid.  ​optional S parameter saves a custom file with numerical extention ​| <​kbd>​M374 ​S123</​kbd>​ | +
-| M375 | Z grid strategy: load calibration grid.  ​optional S Parameter loads a pre saved custom grid  ​| <​kbd>​M375 ​S123</​kbd>​ |+
 | M375.1 | display the current grid   | <​kbd>​M375.1</​kbd>​ | | M375.1 | display the current grid   | <​kbd>​M375.1</​kbd>​ |
 | M400 | Wait for the queue to be empty and the motors to stop before the M400 answers ok | <​kbd>​M400</​kbd>​ | | M400 | Wait for the queue to be empty and the motors to stop before the M400 answers ok | <​kbd>​M400</​kbd>​ |
Line 118: Line 120:
 | M557 | Defines probe points | <​kbd>​M557 P1 X30 Y40.5</​kbd>​ | | M557 | Defines probe points | <​kbd>​M557 P1 X30 Y40.5</​kbd>​ |
 | M561 | Clears the plane and the bed leveling is disabled until G32 is run again | <​kbd>​M561</​kbd>​ | | M561 | Clears the plane and the bed leveling is disabled until G32 is run again | <​kbd>​M561</​kbd>​ |
-| M565 | Defines the probe offsets from the nozzle or tool head | <​kbd>​M565 X3 Y4.5 Z-2.37</​kbd>​ | +| M565 | Defines the probe offsets from the nozzle or tool head | <kbd>'M565 X3 Y4.5 Z-2.37'</​kbd>​ | 
-| M600 | Suspend print in progress (use M601 to continue) | | +| M600 | Suspend print in progress (use M601 to continue) | <​kbd>​M600</​kbd> ​
-| M601 | Resume suspended print | |+| M601 | Resume suspended print | <​kbd>​M601</​kbd> ​|
 | M665 | Set arm solution specific settings: Delta - L<arm length> R<arm radius> Z<max height> | <​kbd>​M665 L341.0 R350 Z430</​kbd>​ | | M665 | Set arm solution specific settings: Delta - L<arm length> R<arm radius> Z<max height> | <​kbd>​M665 L341.0 R350 Z430</​kbd>​ |
-| M666 | On a delta sets trim values for the endstops. (Positive values will crash physical endstops.)| <​kbd>​M666 X-0.1 Y-0.2 Z-0.3</​kbd>​ |+| M666 | On a delta sets trim values for the endstops. (Positive values will crash physical endstops.)| <kbd>'M666 X-0.1 Y-0.2 Z-0.3'</​kbd>​ |
 | M670 | ZProbe feedrates Slow/​fast(K)/​Return (mm/sec) max_z (mm) height (mm) | <​kbd>​M670 S5.00 K100.00 R0.00 Z357.55 H5.00</​kbd>​ | | M670 | ZProbe feedrates Slow/​fast(K)/​Return (mm/sec) max_z (mm) height (mm) | <​kbd>​M670 S5.00 K100.00 R0.00 Z357.55 H5.00</​kbd>​ |
 | M906 | Set Current in milliamp for SPI drivers, only if the driver is handled by the motorcontrol module | <​kbd>​M906 A1000 B1100</​kbd>​ | | M906 | Set Current in milliamp for SPI drivers, only if the driver is handled by the motorcontrol module | <​kbd>​M906 A1000 B1100</​kbd>​ |
Line 130: Line 132:
 | M957 | (with Spindle module enabled) Report the current spindle speed and PWM value | <​kbd>​M957</​kbd>​ | | M957 | (with Spindle module enabled) Report the current spindle speed and PWM value | <​kbd>​M957</​kbd>​ |
 | M958 | (with Spindle module enabled) Report the current spindle PID parameters. <​kbd>​M958 Px.xx Ix.xx Dx.xx</​kbd>​ will set them (to save the new values, you need to edit config file manually). | <​kbd>​M958 P0.1</​kbd>​ | | M958 | (with Spindle module enabled) Report the current spindle PID parameters. <​kbd>​M958 Px.xx Ix.xx Dx.xx</​kbd>​ will set them (to save the new values, you need to edit config file manually). | <​kbd>​M958 P0.1</​kbd>​ |
-| M999 | Reset from a halted state caused by limit switch, M112 or kill switch |  |+| M999 | Reset from a halted state caused by limit switch, M112 or kill switch | <​kbd>​M999</​kbd> ​|
  
 <​callout>​ <​callout>​