Option for G0 to have a separate feedrate (#12089)

2.0.x
TheSFReader 6 years ago committed by Scott Lahteine
parent 3d5be2ea4b
commit af939c158a

@ -1613,9 +1613,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1613,9 +1613,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1620,9 +1620,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1615,9 +1615,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1614,9 +1614,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1616,9 +1616,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1617,9 +1617,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1620,9 +1620,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1625,9 +1625,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1614,9 +1614,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1614,9 +1614,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1614,9 +1614,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1614,9 +1614,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1614,9 +1614,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1614,9 +1614,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1614,9 +1614,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1614,9 +1614,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1612,9 +1612,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -1613,9 +1613,15 @@
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
* Note that G0 feedrates should be used with care for 3D printing (if used at all).
* High feedrates may cause ringing and harm print quality.
*/
//#define PAREN_COMMENTS // Support for parentheses-delimited comments
//#define GCODE_MOTION_MODES // Remember the motion mode (G0 G1 G2 G3 G5 G38.X) and apply for X Y Z E F, etc.
//#define G0_FEEDRATE // Add a G0-specific sticky feedrate, applied to all subsequent G0 moves.
#if ENABLED(G0_FEEDRATE)
#define DEFAULT_G0_FEEDRATE 3000 // (mm/m)
#endif
/**
* User-defined menu items that execute custom GCode

@ -188,7 +188,7 @@ void GcodeSuite::process_parsed_command(
case 'G': switch (parser.codenum) {
case 0: case 1: G0_G1( // G0: Fast Move, G1: Linear Move
#if IS_SCARA
#if IS_SCARA || ENABLED(G0_FEEDRATE)
parser.codenum == 0
#endif
);

@ -341,7 +341,7 @@ public:
private:
static void G0_G1(
#if IS_SCARA
#if IS_SCARA || ENABLED(G0_FEEDRATE)
bool fast_move=false
#endif
);

@ -37,6 +37,10 @@
extern float destination[XYZE];
#if ENABLED(G0_FEEDRATE)
float saved_g0_feedrate_mm_s = MMM_TO_MMS(DEFAULT_G0_FEEDRATE);
#endif
#if ENABLED(NO_MOTION_BEFORE_HOMING)
#define G0_G1_CONDITION !axis_unhomed_error(parser.seen('X'), parser.seen('Y'), parser.seen('Z'))
#else
@ -47,11 +51,24 @@ extern float destination[XYZE];
* G0, G1: Coordinated movement of X Y Z E axes
*/
void GcodeSuite::G0_G1(
#if IS_SCARA
#if IS_SCARA || ENABLED(G0_FEEDRATE)
bool fast_move/*=false*/
#endif
) {
#if ENABLED(G0_FEEDRATE)
float saved_g1_feedrate_mm_s;
#endif
if (IsRunning() && G0_G1_CONDITION) {
#if ENABLED(G0_FEEDRATE)
if (fast_move) {
// Save standard feedrate before setting feedrate to fast/g0
saved_g1_feedrate_mm_s = feedrate_mm_s;
feedrate_mm_s = saved_g0_feedrate_mm_s;
}
#endif
get_destination_from_command(); // For X Y Z E F
#if ENABLED(FWRETRACT) && ENABLED(FWRETRACT_AUTORETRACT)
@ -77,6 +94,14 @@ void GcodeSuite::G0_G1(
prepare_move_to_destination();
#endif
#if ENABLED(G0_FEEDRATE)
// save G0 feedrate, and restore standard feedrate as soon as possible
if (fast_move) {
saved_g0_feedrate_mm_s = feedrate_mm_s;
feedrate_mm_s = saved_g1_feedrate_mm_s;
}
#endif
#if ENABLED(NANODLP_Z_SYNC)
#if ENABLED(NANODLP_ALL_AXIS)
#define _MOVE_SYNC parser.seenval('X') || parser.seenval('Y') || parser.seenval('Z') // For any move wait and output sync message

Loading…
Cancel
Save