|
@@ -5961,7 +5961,8 @@ inline void gcode_M206() {
|
5961
|
5961
|
|
5962
|
5962
|
/**
|
5963
|
5963
|
* M209: Enable automatic retract (M209 S1)
|
5964
|
|
- * detect if the slicer did not support G10/11: every normal extrude-only move will be classified as retract depending on the direction.
|
|
5964
|
+ * For slicers that don't support G10/11, reversed extrude-only
|
|
5965
|
+ * moves will be classified as retraction.
|
5965
|
5966
|
*/
|
5966
|
5967
|
inline void gcode_M209() {
|
5967
|
5968
|
if (code_seen('S')) {
|
|
@@ -7597,90 +7598,83 @@ void process_next_command() {
|
7597
|
7598
|
|
7598
|
7599
|
case 'M': switch (codenum) {
|
7599
|
7600
|
#if ENABLED(ULTIPANEL) || ENABLED(EMERGENCY_PARSER)
|
7600
|
|
- case 0: // M0 - Unconditional stop - Wait for user button press on LCD
|
7601
|
|
- case 1: // M1 - Conditional stop - Wait for user button press on LCD
|
|
7601
|
+ case 0: // M0: Unconditional stop - Wait for user button press on LCD
|
|
7602
|
+ case 1: // M1: Conditional stop - Wait for user button press on LCD
|
7602
|
7603
|
gcode_M0_M1();
|
7603
|
7604
|
break;
|
7604
|
7605
|
#endif // ULTIPANEL
|
7605
|
7606
|
|
7606
|
|
- case 17:
|
|
7607
|
+ case 17: // M17: Enable all stepper motors
|
7607
|
7608
|
gcode_M17();
|
7608
|
7609
|
break;
|
7609
|
7610
|
|
7610
|
7611
|
#if ENABLED(SDSUPPORT)
|
7611
|
|
- case 20: // M20 - list SD card
|
|
7612
|
+ case 20: // M20: list SD card
|
7612
|
7613
|
gcode_M20(); break;
|
7613
|
|
- case 21: // M21 - init SD card
|
|
7614
|
+ case 21: // M21: init SD card
|
7614
|
7615
|
gcode_M21(); break;
|
7615
|
|
- case 22: //M22 - release SD card
|
|
7616
|
+ case 22: // M22: release SD card
|
7616
|
7617
|
gcode_M22(); break;
|
7617
|
|
- case 23: //M23 - Select file
|
|
7618
|
+ case 23: // M23: Select file
|
7618
|
7619
|
gcode_M23(); break;
|
7619
|
|
- case 24: //M24 - Start SD print
|
|
7620
|
+ case 24: // M24: Start SD print
|
7620
|
7621
|
gcode_M24(); break;
|
7621
|
|
- case 25: //M25 - Pause SD print
|
|
7622
|
+ case 25: // M25: Pause SD print
|
7622
|
7623
|
gcode_M25(); break;
|
7623
|
|
- case 26: //M26 - Set SD index
|
|
7624
|
+ case 26: // M26: Set SD index
|
7624
|
7625
|
gcode_M26(); break;
|
7625
|
|
- case 27: //M27 - Get SD status
|
|
7626
|
+ case 27: // M27: Get SD status
|
7626
|
7627
|
gcode_M27(); break;
|
7627
|
|
- case 28: //M28 - Start SD write
|
|
7628
|
+ case 28: // M28: Start SD write
|
7628
|
7629
|
gcode_M28(); break;
|
7629
|
|
- case 29: //M29 - Stop SD write
|
|
7630
|
+ case 29: // M29: Stop SD write
|
7630
|
7631
|
gcode_M29(); break;
|
7631
|
|
- case 30: //M30 <filename> Delete File
|
|
7632
|
+ case 30: // M30 <filename> Delete File
|
7632
|
7633
|
gcode_M30(); break;
|
7633
|
|
- case 32: //M32 - Select file and start SD print
|
|
7634
|
+ case 32: // M32: Select file and start SD print
|
7634
|
7635
|
gcode_M32(); break;
|
7635
|
7636
|
|
7636
|
7637
|
#if ENABLED(LONG_FILENAME_HOST_SUPPORT)
|
7637
|
|
- case 33: //M33 - Get the long full path to a file or folder
|
|
7638
|
+ case 33: // M33: Get the long full path to a file or folder
|
7638
|
7639
|
gcode_M33(); break;
|
7639
|
|
- #endif // LONG_FILENAME_HOST_SUPPORT
|
|
7640
|
+ #endif
|
7640
|
7641
|
|
7641
|
|
- case 928: //M928 - Start SD write
|
|
7642
|
+ case 928: // M928: Start SD write
|
7642
|
7643
|
gcode_M928(); break;
|
7643
|
7644
|
#endif //SDSUPPORT
|
7644
|
7645
|
|
7645
|
|
- case 31: //M31 take time since the start of the SD print or an M109 command
|
7646
|
|
- gcode_M31();
|
7647
|
|
- break;
|
|
7646
|
+ case 31: // M31: Report time since the start of SD print or last M109
|
|
7647
|
+ gcode_M31(); break;
|
7648
|
7648
|
|
7649
|
7649
|
case 42: //M42 -Change pin status via gcode
|
7650
|
7650
|
gcode_M42();
|
7651
|
7651
|
break;
|
7652
|
7652
|
|
7653
|
7653
|
#if ENABLED(Z_MIN_PROBE_REPEATABILITY_TEST)
|
7654
|
|
- case 48: // M48 Z probe repeatability
|
|
7654
|
+ case 48: // M48: Z probe repeatability test
|
7655
|
7655
|
gcode_M48();
|
7656
|
7656
|
break;
|
7657
|
7657
|
#endif // Z_MIN_PROBE_REPEATABILITY_TEST
|
7658
|
7658
|
|
7659
|
|
- case 75: // Start print timer
|
7660
|
|
- gcode_M75();
|
7661
|
|
- break;
|
7662
|
|
-
|
7663
|
|
- case 76: // Pause print timer
|
7664
|
|
- gcode_M76();
|
7665
|
|
- break;
|
7666
|
|
-
|
7667
|
|
- case 77: // Stop print timer
|
7668
|
|
- gcode_M77();
|
7669
|
|
- break;
|
|
7659
|
+ case 75: // M75: Start print timer
|
|
7660
|
+ gcode_M75(); break;
|
|
7661
|
+ case 76: // M76: Pause print timer
|
|
7662
|
+ gcode_M76(); break;
|
|
7663
|
+ case 77: // M77: Stop print timer
|
|
7664
|
+ gcode_M77(); break;
|
7670
|
7665
|
|
7671
|
7666
|
#if ENABLED(PRINTCOUNTER)
|
7672
|
|
- case 78: // Show print statistics
|
7673
|
|
- gcode_M78();
|
7674
|
|
- break;
|
|
7667
|
+ case 78: // M78: Show print statistics
|
|
7668
|
+ gcode_M78(); break;
|
7675
|
7669
|
#endif
|
7676
|
7670
|
|
7677
|
7671
|
#if ENABLED(M100_FREE_MEMORY_WATCHER)
|
7678
|
|
- case 100:
|
|
7672
|
+ case 100: // M100: Free Memory Report
|
7679
|
7673
|
gcode_M100();
|
7680
|
7674
|
break;
|
7681
|
7675
|
#endif
|
7682
|
7676
|
|
7683
|
|
- case 104: // M104
|
|
7677
|
+ case 104: // M104: Set hot end temperature
|
7684
|
7678
|
gcode_M104();
|
7685
|
7679
|
break;
|
7686
|
7680
|
|
|
@@ -7714,21 +7708,21 @@ void process_next_command() {
|
7714
|
7708
|
break;
|
7715
|
7709
|
#endif
|
7716
|
7710
|
|
7717
|
|
- case 140: // M140: Set bed temp
|
|
7711
|
+ case 140: // M140: Set bed temperature
|
7718
|
7712
|
gcode_M140();
|
7719
|
7713
|
break;
|
7720
|
7714
|
|
7721
|
|
- case 105: // M105: Read current temperature
|
|
7715
|
+ case 105: // M105: Report current temperature
|
7722
|
7716
|
gcode_M105();
|
7723
|
7717
|
KEEPALIVE_STATE(NOT_BUSY);
|
7724
|
7718
|
return; // "ok" already printed
|
7725
|
7719
|
|
7726
|
|
- case 109: // M109: Wait for temperature
|
|
7720
|
+ case 109: // M109: Wait for hotend temperature to reach target
|
7727
|
7721
|
gcode_M109();
|
7728
|
7722
|
break;
|
7729
|
7723
|
|
7730
|
7724
|
#if HAS_TEMP_BED
|
7731
|
|
- case 190: // M190: Wait for bed heater to reach target
|
|
7725
|
+ case 190: // M190: Wait for bed temperature to reach target
|
7732
|
7726
|
gcode_M190();
|
7733
|
7727
|
break;
|
7734
|
7728
|
#endif // HAS_TEMP_BED
|
|
@@ -7776,17 +7770,17 @@ void process_next_command() {
|
7776
|
7770
|
gcode_M81();
|
7777
|
7771
|
break;
|
7778
|
7772
|
|
7779
|
|
- case 82:
|
|
7773
|
+ case 82: // M83: Set E axis normal mode (same as other axes)
|
7780
|
7774
|
gcode_M82();
|
7781
|
7775
|
break;
|
7782
|
|
- case 83:
|
|
7776
|
+ case 83: // M83: Set E axis relative mode
|
7783
|
7777
|
gcode_M83();
|
7784
|
7778
|
break;
|
7785
|
|
- case 18: // (for compatibility)
|
7786
|
|
- case 84: // M84
|
|
7779
|
+ case 18: // M18 => M84
|
|
7780
|
+ case 84: // M84: Disable all steppers or set timeout
|
7787
|
7781
|
gcode_M18_M84();
|
7788
|
7782
|
break;
|
7789
|
|
- case 85: // M85
|
|
7783
|
+ case 85: // M85: Set inactivity stepper shutdown timeout
|
7790
|
7784
|
gcode_M85();
|
7791
|
7785
|
break;
|
7792
|
7786
|
case 92: // M92: Set the steps-per-unit for one or more axes
|
|
@@ -7820,51 +7814,51 @@ void process_next_command() {
|
7820
|
7814
|
#endif
|
7821
|
7815
|
|
7822
|
7816
|
#if ENABLED(TEMPERATURE_UNITS_SUPPORT)
|
7823
|
|
- case 149:
|
|
7817
|
+ case 149: // M149: Set temperature units
|
7824
|
7818
|
gcode_M149();
|
7825
|
7819
|
break;
|
7826
|
7820
|
#endif
|
7827
|
7821
|
|
7828
|
7822
|
#if ENABLED(BLINKM)
|
7829
|
7823
|
|
7830
|
|
- case 150: // M150
|
|
7824
|
+ case 150: // M150: Set the BlinkM LCD color
|
7831
|
7825
|
gcode_M150();
|
7832
|
7826
|
break;
|
7833
|
7827
|
|
7834
|
|
- #endif //BLINKM
|
|
7828
|
+ #endif // BLINKM
|
7835
|
7829
|
|
7836
|
7830
|
#if ENABLED(EXPERIMENTAL_I2CBUS)
|
7837
|
7831
|
|
7838
|
|
- case 155:
|
|
7832
|
+ case 155: // M155: Send data to an i2c slave
|
7839
|
7833
|
gcode_M155();
|
7840
|
7834
|
break;
|
7841
|
7835
|
|
7842
|
|
- case 156:
|
|
7836
|
+ case 156: // M156: Request data from an i2c slave
|
7843
|
7837
|
gcode_M156();
|
7844
|
7838
|
break;
|
7845
|
7839
|
|
7846
|
7840
|
#endif //EXPERIMENTAL_I2CBUS
|
7847
|
7841
|
|
7848
|
7842
|
#if ENABLED(MIXING_EXTRUDER)
|
7849
|
|
- case 163: // M163 S<int> P<float> set weight for a mixing extruder
|
|
7843
|
+ case 163: // M163: Set a component weight for mixing extruder
|
7850
|
7844
|
gcode_M163();
|
7851
|
7845
|
break;
|
7852
|
7846
|
#if MIXING_VIRTUAL_TOOLS > 1
|
7853
|
|
- case 164: // M164 S<int> save current mix as a virtual extruder
|
|
7847
|
+ case 164: // M164: Save current mix as a virtual extruder
|
7854
|
7848
|
gcode_M164();
|
7855
|
7849
|
break;
|
7856
|
7850
|
#endif
|
7857
|
7851
|
#if ENABLED(DIRECT_MIXING_IN_G1)
|
7858
|
|
- case 165: // M165 [ABCDHI]<float> set multiple mix weights
|
|
7852
|
+ case 165: // M165: Set multiple mix weights
|
7859
|
7853
|
gcode_M165();
|
7860
|
7854
|
break;
|
7861
|
7855
|
#endif
|
7862
|
7856
|
#endif
|
7863
|
7857
|
|
7864
|
|
- case 200: // M200 D<diameter> Set filament diameter and set E axis units to cubic. (Use S0 to revert to linear units.)
|
|
7858
|
+ case 200: // M200: Set filament diameter, E to cubic units
|
7865
|
7859
|
gcode_M200();
|
7866
|
7860
|
break;
|
7867
|
|
- case 201: // M201
|
|
7861
|
+ case 201: // M201: Set max acceleration for print moves (units/s^2)
|
7868
|
7862
|
gcode_M201();
|
7869
|
7863
|
break;
|
7870
|
7864
|
#if 0 // Not used for Sprinter/grbl gen6
|
|
@@ -7872,180 +7866,180 @@ void process_next_command() {
|
7872
|
7866
|
gcode_M202();
|
7873
|
7867
|
break;
|
7874
|
7868
|
#endif
|
7875
|
|
- case 203: // M203 max feedrate units/sec
|
|
7869
|
+ case 203: // M203: Set max feedrate (units/sec)
|
7876
|
7870
|
gcode_M203();
|
7877
|
7871
|
break;
|
7878
|
|
- case 204: // M204 acclereration S normal moves T filmanent only moves
|
|
7872
|
+ case 204: // M204: Set acceleration
|
7879
|
7873
|
gcode_M204();
|
7880
|
7874
|
break;
|
7881
|
|
- case 205: //M205 advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk
|
|
7875
|
+ case 205: //M205: Set advanced settings
|
7882
|
7876
|
gcode_M205();
|
7883
|
7877
|
break;
|
7884
|
|
- case 206: // M206 additional homing offset
|
|
7878
|
+ case 206: // M206: Set home offsets
|
7885
|
7879
|
gcode_M206();
|
7886
|
7880
|
break;
|
7887
|
7881
|
|
7888
|
7882
|
#if ENABLED(DELTA)
|
7889
|
|
- case 665: // M665 set delta configurations L<diagonal_rod> R<delta_radius> S<segments_per_sec>
|
|
7883
|
+ case 665: // M665: Set delta configurations
|
7890
|
7884
|
gcode_M665();
|
7891
|
7885
|
break;
|
7892
|
7886
|
#endif
|
7893
|
7887
|
|
7894
|
7888
|
#if ENABLED(DELTA) || ENABLED(Z_DUAL_ENDSTOPS)
|
7895
|
|
- case 666: // M666 set delta / dual endstop adjustment
|
|
7889
|
+ case 666: // M666: Set delta or dual endstop adjustment
|
7896
|
7890
|
gcode_M666();
|
7897
|
7891
|
break;
|
7898
|
7892
|
#endif
|
7899
|
7893
|
|
7900
|
7894
|
#if ENABLED(FWRETRACT)
|
7901
|
|
- case 207: // M207 - Set Retract Length: S<length>, Feedrate: F<units/min>, and Z lift: Z<distance>
|
|
7895
|
+ case 207: // M207: Set Retract Length, Feedrate, and Z lift
|
7902
|
7896
|
gcode_M207();
|
7903
|
7897
|
break;
|
7904
|
|
- case 208: // M208 - Set Recover (unretract) Additional (!) Length: S<length> and Feedrate: F<units/min>
|
|
7898
|
+ case 208: // M208: Set Recover (unretract) Additional Length and Feedrate
|
7905
|
7899
|
gcode_M208();
|
7906
|
7900
|
break;
|
7907
|
|
- case 209: // M209 - Turn Automatic Retract Detection on/off: S<bool> (For slicers that don't support G10/11). Every normal extrude-only move will be classified as retract depending on the direction.
|
|
7901
|
+ case 209: // M209: Turn Automatic Retract Detection on/off
|
7908
|
7902
|
gcode_M209();
|
7909
|
7903
|
break;
|
7910
|
7904
|
#endif // FWRETRACT
|
7911
|
7905
|
|
7912
|
|
- case 211: // M211 - Enable, Disable, and/or Report software endstops
|
|
7906
|
+ case 211: // M211: Enable, Disable, and/or Report software endstops
|
7913
|
7907
|
gcode_M211();
|
7914
|
7908
|
break;
|
7915
|
7909
|
|
7916
|
7910
|
#if HOTENDS > 1
|
7917
|
|
- case 218: // M218 - Set a tool offset: T<index> X<offset> Y<offset>
|
|
7911
|
+ case 218: // M218: Set a tool offset
|
7918
|
7912
|
gcode_M218();
|
7919
|
7913
|
break;
|
7920
|
7914
|
#endif
|
7921
|
7915
|
|
7922
|
|
- case 220: // M220 - Set Feedrate Percentage: S<percent> ("FR" on your LCD)
|
|
7916
|
+ case 220: // M220: Set Feedrate Percentage: S<percent> ("FR" on your LCD)
|
7923
|
7917
|
gcode_M220();
|
7924
|
7918
|
break;
|
7925
|
7919
|
|
7926
|
|
- case 221: // M221 - Set Flow Percentage: S<percent>
|
|
7920
|
+ case 221: // M221: Set Flow Percentage
|
7927
|
7921
|
gcode_M221();
|
7928
|
7922
|
break;
|
7929
|
7923
|
|
7930
|
|
- case 226: // M226 P<pin number> S<pin state>- Wait until the specified pin reaches the state required
|
|
7924
|
+ case 226: // M226: Wait until a pin reaches a state
|
7931
|
7925
|
gcode_M226();
|
7932
|
7926
|
break;
|
7933
|
7927
|
|
7934
|
7928
|
#if HAS_SERVOS
|
7935
|
|
- case 280: // M280 - set servo position absolute. P: servo index, S: angle or microseconds
|
|
7929
|
+ case 280: // M280: Set servo position absolute
|
7936
|
7930
|
gcode_M280();
|
7937
|
7931
|
break;
|
7938
|
7932
|
#endif // HAS_SERVOS
|
7939
|
7933
|
|
7940
|
7934
|
#if HAS_BUZZER
|
7941
|
|
- case 300: // M300 - Play beep tone
|
|
7935
|
+ case 300: // M300: Play beep tone
|
7942
|
7936
|
gcode_M300();
|
7943
|
7937
|
break;
|
7944
|
7938
|
#endif // HAS_BUZZER
|
7945
|
7939
|
|
7946
|
7940
|
#if ENABLED(PIDTEMP)
|
7947
|
|
- case 301: // M301
|
|
7941
|
+ case 301: // M301: Set hotend PID parameters
|
7948
|
7942
|
gcode_M301();
|
7949
|
7943
|
break;
|
7950
|
7944
|
#endif // PIDTEMP
|
7951
|
7945
|
|
7952
|
7946
|
#if ENABLED(PIDTEMPBED)
|
7953
|
|
- case 304: // M304
|
|
7947
|
+ case 304: // M304: Set bed PID parameters
|
7954
|
7948
|
gcode_M304();
|
7955
|
7949
|
break;
|
7956
|
7950
|
#endif // PIDTEMPBED
|
7957
|
7951
|
|
7958
|
7952
|
#if defined(CHDK) || HAS_PHOTOGRAPH
|
7959
|
|
- case 240: // M240 Triggers a camera by emulating a Canon RC-1 : http://www.doc-diy.net/photo/rc-1_hacked/
|
|
7953
|
+ case 240: // M240: Trigger a camera by emulating a Canon RC-1 : http://www.doc-diy.net/photo/rc-1_hacked/
|
7960
|
7954
|
gcode_M240();
|
7961
|
7955
|
break;
|
7962
|
7956
|
#endif // CHDK || PHOTOGRAPH_PIN
|
7963
|
7957
|
|
7964
|
7958
|
#if HAS_LCD_CONTRAST
|
7965
|
|
- case 250: // M250 Set LCD contrast value: C<value> (value 0..63)
|
|
7959
|
+ case 250: // M250: Set LCD contrast
|
7966
|
7960
|
gcode_M250();
|
7967
|
7961
|
break;
|
7968
|
7962
|
#endif // HAS_LCD_CONTRAST
|
7969
|
7963
|
|
7970
|
7964
|
#if ENABLED(PREVENT_COLD_EXTRUSION)
|
7971
|
|
- case 302: // allow cold extrudes, or set the minimum extrude temperature
|
|
7965
|
+ case 302: // M302: Allow cold extrudes (set the minimum extrude temperature)
|
7972
|
7966
|
gcode_M302();
|
7973
|
7967
|
break;
|
7974
|
7968
|
#endif // PREVENT_COLD_EXTRUSION
|
7975
|
7969
|
|
7976
|
|
- case 303: // M303 PID autotune
|
|
7970
|
+ case 303: // M303: PID autotune
|
7977
|
7971
|
gcode_M303();
|
7978
|
7972
|
break;
|
7979
|
7973
|
|
7980
|
7974
|
#if ENABLED(MORGAN_SCARA)
|
7981
|
|
- case 360: // M360 SCARA Theta pos1
|
|
7975
|
+ case 360: // M360: SCARA Theta pos1
|
7982
|
7976
|
if (gcode_M360()) return;
|
7983
|
7977
|
break;
|
7984
|
|
- case 361: // M361 SCARA Theta pos2
|
|
7978
|
+ case 361: // M361: SCARA Theta pos2
|
7985
|
7979
|
if (gcode_M361()) return;
|
7986
|
7980
|
break;
|
7987
|
|
- case 362: // M362 SCARA Psi pos1
|
|
7981
|
+ case 362: // M362: SCARA Psi pos1
|
7988
|
7982
|
if (gcode_M362()) return;
|
7989
|
7983
|
break;
|
7990
|
|
- case 363: // M363 SCARA Psi pos2
|
|
7984
|
+ case 363: // M363: SCARA Psi pos2
|
7991
|
7985
|
if (gcode_M363()) return;
|
7992
|
7986
|
break;
|
7993
|
|
- case 364: // M364 SCARA Psi pos3 (90 deg to Theta)
|
|
7987
|
+ case 364: // M364: SCARA Psi pos3 (90 deg to Theta)
|
7994
|
7988
|
if (gcode_M364()) return;
|
7995
|
7989
|
break;
|
7996
|
7990
|
#endif // SCARA
|
7997
|
7991
|
|
7998
|
|
- case 400: // M400 finish all moves
|
|
7992
|
+ case 400: // M400: Finish all moves
|
7999
|
7993
|
gcode_M400();
|
8000
|
7994
|
break;
|
8001
|
7995
|
|
8002
|
7996
|
#if HAS_BED_PROBE
|
8003
|
|
- case 401:
|
|
7997
|
+ case 401: // M401: Deploy probe
|
8004
|
7998
|
gcode_M401();
|
8005
|
7999
|
break;
|
8006
|
|
- case 402:
|
|
8000
|
+ case 402: // M402: Stow probe
|
8007
|
8001
|
gcode_M402();
|
8008
|
8002
|
break;
|
8009
|
8003
|
#endif // HAS_BED_PROBE
|
8010
|
8004
|
|
8011
|
8005
|
#if ENABLED(FILAMENT_WIDTH_SENSOR)
|
8012
|
|
- case 404: //M404 Enter the nominal filament width (3mm, 1.75mm ) N<3.0> or display nominal filament width
|
|
8006
|
+ case 404: // M404: Enter the nominal filament width (3mm, 1.75mm ) N<3.0> or display nominal filament width
|
8013
|
8007
|
gcode_M404();
|
8014
|
8008
|
break;
|
8015
|
|
- case 405: //M405 Turn on filament sensor for control
|
|
8009
|
+ case 405: // M405: Turn on filament sensor for control
|
8016
|
8010
|
gcode_M405();
|
8017
|
8011
|
break;
|
8018
|
|
- case 406: //M406 Turn off filament sensor for control
|
|
8012
|
+ case 406: // M406: Turn off filament sensor for control
|
8019
|
8013
|
gcode_M406();
|
8020
|
8014
|
break;
|
8021
|
|
- case 407: //M407 Display measured filament diameter
|
|
8015
|
+ case 407: // M407: Display measured filament diameter
|
8022
|
8016
|
gcode_M407();
|
8023
|
8017
|
break;
|
8024
|
8018
|
#endif // ENABLED(FILAMENT_WIDTH_SENSOR)
|
8025
|
8019
|
|
8026
|
8020
|
#if ENABLED(MESH_BED_LEVELING)
|
8027
|
|
- case 420: // M420 Enable/Disable Mesh Bed Leveling
|
|
8021
|
+ case 420: // M420: Enable/Disable Mesh Bed Leveling
|
8028
|
8022
|
gcode_M420();
|
8029
|
8023
|
break;
|
8030
|
|
- case 421: // M421 Set a Mesh Bed Leveling Z coordinate
|
|
8024
|
+ case 421: // M421: Set a Mesh Bed Leveling Z coordinate
|
8031
|
8025
|
gcode_M421();
|
8032
|
8026
|
break;
|
8033
|
8027
|
#endif
|
8034
|
8028
|
|
8035
|
|
- case 428: // M428 Apply current_position to home_offset
|
|
8029
|
+ case 428: // M428: Apply current_position to home_offset
|
8036
|
8030
|
gcode_M428();
|
8037
|
8031
|
break;
|
8038
|
8032
|
|
8039
|
|
- case 500: // M500 Store settings in EEPROM
|
|
8033
|
+ case 500: // M500: Store settings in EEPROM
|
8040
|
8034
|
gcode_M500();
|
8041
|
8035
|
break;
|
8042
|
|
- case 501: // M501 Read settings from EEPROM
|
|
8036
|
+ case 501: // M501: Read settings from EEPROM
|
8043
|
8037
|
gcode_M501();
|
8044
|
8038
|
break;
|
8045
|
|
- case 502: // M502 Revert to default settings
|
|
8039
|
+ case 502: // M502: Revert to default settings
|
8046
|
8040
|
gcode_M502();
|
8047
|
8041
|
break;
|
8048
|
|
- case 503: // M503 print settings currently in memory
|
|
8042
|
+ case 503: // M503: print settings currently in memory
|
8049
|
8043
|
gcode_M503();
|
8050
|
8044
|
break;
|
8051
|
8045
|
|
|
@@ -8056,46 +8050,46 @@ void process_next_command() {
|
8056
|
8050
|
#endif
|
8057
|
8051
|
|
8058
|
8052
|
#if HAS_BED_PROBE
|
8059
|
|
- case 851: // Set Z Probe Z Offset
|
|
8053
|
+ case 851: // M851: Set Z Probe Z Offset
|
8060
|
8054
|
gcode_M851();
|
8061
|
8055
|
break;
|
8062
|
8056
|
#endif // HAS_BED_PROBE
|
8063
|
8057
|
|
8064
|
8058
|
#if ENABLED(FILAMENT_CHANGE_FEATURE)
|
8065
|
|
- case 600: //Pause for filament change X[pos] Y[pos] Z[relative lift] E[initial retract] L[later retract distance for removal]
|
|
8059
|
+ case 600: // M600: Pause for filament change
|
8066
|
8060
|
gcode_M600();
|
8067
|
8061
|
break;
|
8068
|
8062
|
#endif // FILAMENT_CHANGE_FEATURE
|
8069
|
8063
|
|
8070
|
8064
|
#if ENABLED(DUAL_X_CARRIAGE)
|
8071
|
|
- case 605:
|
|
8065
|
+ case 605: // M605: Set Dual X Carriage movement mode
|
8072
|
8066
|
gcode_M605();
|
8073
|
8067
|
break;
|
8074
|
8068
|
#endif // DUAL_X_CARRIAGE
|
8075
|
8069
|
|
8076
|
8070
|
#if ENABLED(LIN_ADVANCE)
|
8077
|
|
- case 905: // M905 Set advance factor.
|
|
8071
|
+ case 905: // M905: Set advance K factor.
|
8078
|
8072
|
gcode_M905();
|
8079
|
8073
|
break;
|
8080
|
8074
|
#endif
|
8081
|
8075
|
|
8082
|
|
- case 907: // M907 Set digital trimpot motor current using axis codes.
|
|
8076
|
+ case 907: // M907: Set digital trimpot motor current using axis codes.
|
8083
|
8077
|
gcode_M907();
|
8084
|
8078
|
break;
|
8085
|
8079
|
|
8086
|
8080
|
#if HAS_DIGIPOTSS || ENABLED(DAC_STEPPER_CURRENT)
|
8087
|
8081
|
|
8088
|
|
- case 908: // M908 Control digital trimpot directly.
|
|
8082
|
+ case 908: // M908: Control digital trimpot directly.
|
8089
|
8083
|
gcode_M908();
|
8090
|
8084
|
break;
|
8091
|
8085
|
|
8092
|
8086
|
#if ENABLED(DAC_STEPPER_CURRENT) // As with Printrbot RevF
|
8093
|
8087
|
|
8094
|
|
- case 909: // M909 Print digipot/DAC current value
|
|
8088
|
+ case 909: // M909: Print digipot/DAC current value
|
8095
|
8089
|
gcode_M909();
|
8096
|
8090
|
break;
|
8097
|
8091
|
|
8098
|
|
- case 910: // M910 Commit digipot/DAC value to external EEPROM
|
|
8092
|
+ case 910: // M910: Commit digipot/DAC value to external EEPROM
|
8099
|
8093
|
gcode_M910();
|
8100
|
8094
|
break;
|
8101
|
8095
|
|
|
@@ -8105,11 +8099,11 @@ void process_next_command() {
|
8105
|
8099
|
|
8106
|
8100
|
#if HAS_MICROSTEPS
|
8107
|
8101
|
|
8108
|
|
- case 350: // M350 Set microstepping mode. Warning: Steps per unit remains unchanged. S code sets stepping mode for all drivers.
|
|
8102
|
+ case 350: // M350: Set microstepping mode. Warning: Steps per unit remains unchanged. S code sets stepping mode for all drivers.
|
8109
|
8103
|
gcode_M350();
|
8110
|
8104
|
break;
|
8111
|
8105
|
|
8112
|
|
- case 351: // M351 Toggle MS1 MS2 pins directly, S# determines MS1 or MS2, X# sets the pin high/low.
|
|
8106
|
+ case 351: // M351: Toggle MS1 MS2 pins directly, S# determines MS1 or MS2, X# sets the pin high/low.
|
8113
|
8107
|
gcode_M351();
|
8114
|
8108
|
break;
|
8115
|
8109
|
|