diff --git a/grbl/defaults.h b/grbl/defaults.h
index 41bcf0f..e66b170 100644
--- a/grbl/defaults.h
+++ b/grbl/defaults.h
@@ -18,318 +18,60 @@
along with Grbl. If not, see .
*/
-/* The defaults.h file serves as a central default settings file for different machine
- types, from DIY CNC mills to CNC conversions of off-the-shelf machines. The settings
- here are supplied by users, so your results may vary. However, this should give you
- a good starting point as you get to know your machine and tweak the settings for your
- our nefarious needs. */
+/* The defaults.h file serves as a central default settings selector for different machine
+ types, from DIY CNC mills to CNC conversions of off-the-shelf machines. The settings
+ files listed here are supplied by users, so your results may vary. However, this should
+ give you a good starting point as you get to know your machine and tweak the settings for
+ your nefarious needs.
+ Ensure one and only one of these DEFAULTS_XXX values is defined in config.h */
#ifndef defaults_h
-#define defaults_h
+// Don't #define defaults_h here, let the selected file do it. Prevents incuding more than one.
#ifdef DEFAULTS_GENERIC
// Grbl generic default settings. Should work across different machines.
- #define DEFAULT_X_STEPS_PER_MM 250.0
- #define DEFAULT_Y_STEPS_PER_MM 250.0
- #define DEFAULT_Z_STEPS_PER_MM 250.0
- #define DEFAULT_X_MAX_RATE 500.0 // mm/min
- #define DEFAULT_Y_MAX_RATE 500.0 // mm/min
- #define DEFAULT_Z_MAX_RATE 500.0 // mm/min
- #define DEFAULT_X_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
- #define DEFAULT_Y_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
- #define DEFAULT_Z_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
- #define DEFAULT_X_MAX_TRAVEL 200.0 // mm
- #define DEFAULT_Y_MAX_TRAVEL 200.0 // mm
- #define DEFAULT_Z_MAX_TRAVEL 200.0 // mm
- #define DEFAULT_STEP_PULSE_MICROSECONDS 10
- #define DEFAULT_STEPPING_INVERT_MASK 0
- #define DEFAULT_DIRECTION_INVERT_MASK 0
- #define DEFAULT_STEPPER_IDLE_LOCK_TIME 25 // msec (0-254, 255 keeps steppers enabled)
- #define DEFAULT_STATUS_REPORT_MASK ((BITFLAG_RT_STATUS_MACHINE_POSITION)|(BITFLAG_RT_STATUS_WORK_POSITION))
- #define DEFAULT_JUNCTION_DEVIATION 0.02 // mm
- #define DEFAULT_ARC_TOLERANCE 0.002 // mm
- #define DEFAULT_REPORT_INCHES 0 // false
- #define DEFAULT_INVERT_ST_ENABLE 0 // false
- #define DEFAULT_INVERT_LIMIT_PINS 0 // false
- #define DEFAULT_SOFT_LIMIT_ENABLE 0 // false
- #define DEFAULT_HARD_LIMIT_ENABLE 0 // false
- #define DEFAULT_HOMING_ENABLE 0 // false
- #define DEFAULT_HOMING_DIR_MASK 0 // move positive dir
- #define DEFAULT_HOMING_FEED_RATE 25.0 // mm/min
- #define DEFAULT_HOMING_SEEK_RATE 500.0 // mm/min
- #define DEFAULT_HOMING_DEBOUNCE_DELAY 250 // msec (0-65k)
- #define DEFAULT_HOMING_PULLOFF 1.0 // mm
+ #include "defaults/defaults_generic.h"
#endif
-
-
#ifdef DEFAULTS_SHERLINE_5400
// Description: Sherline 5400 mill with three NEMA 23 Keling KL23H256-21-8B 185 oz-in stepper motors,
// driven by three Pololu A4988 stepper drivers with a 30V, 6A power supply at 1.5A per winding.
- #define MICROSTEPS 2
- #define STEPS_PER_REV 200.0
- #define MM_PER_REV (0.050*MM_PER_INCH) // 0.050 inch/rev leadscrew
- #define DEFAULT_X_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/MM_PER_REV)
- #define DEFAULT_Y_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/MM_PER_REV)
- #define DEFAULT_Z_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/MM_PER_REV)
- #define DEFAULT_X_MAX_RATE 635.0 // mm/min (25 ipm)
- #define DEFAULT_Y_MAX_RATE 635.0 // mm/min
- #define DEFAULT_Z_MAX_RATE 635.0 // mm/min
- #define DEFAULT_X_ACCELERATION (50.0*60*60) // 50*60*60 mm/min^2 = 50 mm/sec^2
- #define DEFAULT_Y_ACCELERATION (50.0*60*60) // 50*60*60 mm/min^2 = 50 mm/sec^2
- #define DEFAULT_Z_ACCELERATION (50.0*60*60) // 50*60*60 mm/min^2 = 50 mm/sec^2
- #define DEFAULT_X_MAX_TRAVEL 225.0 // mm
- #define DEFAULT_Y_MAX_TRAVEL 125.0 // mm
- #define DEFAULT_Z_MAX_TRAVEL 170.0 // mm
- #define DEFAULT_STEP_PULSE_MICROSECONDS 10
- #define DEFAULT_STEPPING_INVERT_MASK 0
- #define DEFAULT_DIRECTION_INVERT_MASK ((1<.
+*/
+
+/* The defaults.h file serves as a central default settings file for different machine
+ types, from DIY CNC mills to CNC conversions of off-the-shelf machines. The settings
+ here are supplied by users, so your results may vary. However, this should give you
+ a good starting point as you get to know your machine and tweak the settings for your
+ nefarious needs. */
+
+#ifndef defaults_h
+#define defaults_h
+
+ // Grbl generic default settings. Should work across different machines.
+ #define DEFAULT_X_STEPS_PER_MM 250.0
+ #define DEFAULT_Y_STEPS_PER_MM 250.0
+ #define DEFAULT_Z_STEPS_PER_MM 250.0
+ #define DEFAULT_X_MAX_RATE 500.0 // mm/min
+ #define DEFAULT_Y_MAX_RATE 500.0 // mm/min
+ #define DEFAULT_Z_MAX_RATE 500.0 // mm/min
+ #define DEFAULT_X_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
+ #define DEFAULT_Y_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
+ #define DEFAULT_Z_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
+ #define DEFAULT_X_MAX_TRAVEL 200.0 // mm
+ #define DEFAULT_Y_MAX_TRAVEL 200.0 // mm
+ #define DEFAULT_Z_MAX_TRAVEL 200.0 // mm
+ #define DEFAULT_STEP_PULSE_MICROSECONDS 10
+ #define DEFAULT_STEPPING_INVERT_MASK 0
+ #define DEFAULT_DIRECTION_INVERT_MASK 0
+ #define DEFAULT_STEPPER_IDLE_LOCK_TIME 25 // msec (0-254, 255 keeps steppers enabled)
+ #define DEFAULT_STATUS_REPORT_MASK ((BITFLAG_RT_STATUS_MACHINE_POSITION)|(BITFLAG_RT_STATUS_WORK_POSITION))
+ #define DEFAULT_JUNCTION_DEVIATION 0.02 // mm
+ #define DEFAULT_ARC_TOLERANCE 0.002 // mm
+ #define DEFAULT_REPORT_INCHES 0 // false
+ #define DEFAULT_AUTO_START 1 // true
+ #define DEFAULT_INVERT_ST_ENABLE 0 // false
+ #define DEFAULT_INVERT_LIMIT_PINS 0 // false
+ #define DEFAULT_SOFT_LIMIT_ENABLE 0 // false
+ #define DEFAULT_HARD_LIMIT_ENABLE 0 // false
+ #define DEFAULT_HOMING_ENABLE 0 // false
+ #define DEFAULT_HOMING_DIR_MASK 0 // move positive dir
+ #define DEFAULT_HOMING_FEED_RATE 25.0 // mm/min
+ #define DEFAULT_HOMING_SEEK_RATE 500.0 // mm/min
+ #define DEFAULT_HOMING_DEBOUNCE_DELAY 250 // msec (0-65k)
+ #define DEFAULT_HOMING_PULLOFF 1.0 // mm
+
+#endif
diff --git a/grbl/defaults/defaults_oxcnc.h b/grbl/defaults/defaults_oxcnc.h
new file mode 100644
index 0000000..4e7d56f
--- /dev/null
+++ b/grbl/defaults/defaults_oxcnc.h
@@ -0,0 +1,64 @@
+/*
+ defaults_oxcnc.h - defaults settings configuration file
+ Part of Grbl
+
+ Copyright (c) 2012-2015 Sungeun K. Jeon
+
+ Grbl is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Grbl is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Grbl. If not, see .
+*/
+
+/* The defaults.h file serves as a central default settings file for different machine
+ types, from DIY CNC mills to CNC conversions of off-the-shelf machines. The settings
+ here are supplied by users, so your results may vary. However, this should give you
+ a good starting point as you get to know your machine and tweak the settings for your
+ nefarious needs. */
+
+#ifndef defaults_h
+#define defaults_h
+
+ // Grbl settings for OpenBuilds OX CNC Machine
+ // http://www.openbuilds.com/builds/openbuilds-ox-cnc-machine.341/
+ #define DEFAULT_X_STEPS_PER_MM 26.670
+ #define DEFAULT_Y_STEPS_PER_MM 26.670
+ #define DEFAULT_Z_STEPS_PER_MM 50
+ #define DEFAULT_X_MAX_RATE 500.0 // mm/min
+ #define DEFAULT_Y_MAX_RATE 500.0 // mm/min
+ #define DEFAULT_Z_MAX_RATE 500.0 // mm/min
+ #define DEFAULT_X_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
+ #define DEFAULT_Y_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
+ #define DEFAULT_Z_ACCELERATION (10.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
+ #define DEFAULT_X_MAX_TRAVEL 500.0 // mm
+ #define DEFAULT_Y_MAX_TRAVEL 750.0 // mm
+ #define DEFAULT_Z_MAX_TRAVEL 80.0 // mm
+ #define DEFAULT_STEP_PULSE_MICROSECONDS 10
+ #define DEFAULT_STEPPING_INVERT_MASK 0
+ #define DEFAULT_DIRECTION_INVERT_MASK 0
+ #define DEFAULT_STEPPER_IDLE_LOCK_TIME 25 // msec (0-254, 255 keeps steppers enabled)
+ #define DEFAULT_STATUS_REPORT_MASK ((BITFLAG_RT_STATUS_MACHINE_POSITION)|(BITFLAG_RT_STATUS_WORK_POSITION))
+ #define DEFAULT_JUNCTION_DEVIATION 0.02 // mm
+ #define DEFAULT_ARC_TOLERANCE 0.002 // mm
+ #define DEFAULT_REPORT_INCHES 0 // false
+ #define DEFAULT_AUTO_START 1 // true
+ #define DEFAULT_INVERT_ST_ENABLE 0 // false
+ #define DEFAULT_INVERT_LIMIT_PINS 0 // false
+ #define DEFAULT_SOFT_LIMIT_ENABLE 0 // false
+ #define DEFAULT_HARD_LIMIT_ENABLE 0 // false
+ #define DEFAULT_HOMING_ENABLE 0 // false
+ #define DEFAULT_HOMING_DIR_MASK 0 // move positive dir
+ #define DEFAULT_HOMING_FEED_RATE 25.0 // mm/min
+ #define DEFAULT_HOMING_SEEK_RATE 500.0 // mm/min
+ #define DEFAULT_HOMING_DEBOUNCE_DELAY 250 // msec (0-65k)
+ #define DEFAULT_HOMING_PULLOFF 1.0 // mm
+
+#endif
diff --git a/grbl/defaults/defaults_shapeoko.h b/grbl/defaults/defaults_shapeoko.h
new file mode 100644
index 0000000..aaa9834
--- /dev/null
+++ b/grbl/defaults/defaults_shapeoko.h
@@ -0,0 +1,71 @@
+/*
+ defaults_shapeoko.h - defaults settings configuration file
+ Part of Grbl
+
+ Copyright (c) 2012-2015 Sungeun K. Jeon
+
+ Grbl is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Grbl is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Grbl. If not, see .
+*/
+
+/* The defaults.h file serves as a central default settings file for different machine
+ types, from DIY CNC mills to CNC conversions of off-the-shelf machines. The settings
+ here are supplied by users, so your results may vary. However, this should give you
+ a good starting point as you get to know your machine and tweak the settings for your
+ nefarious needs. */
+
+#ifndef defaults_h
+#define defaults_h
+
+
+ // Description: Shapeoko CNC mill with three NEMA 17 stepper motors, driven by Synthetos
+ // grblShield with a 24V, 4.2A power supply.
+ #define MICROSTEPS_XY 8
+ #define STEP_REVS_XY 400
+ #define MM_PER_REV_XY (0.08*18*MM_PER_INCH) // 0.08 in belt pitch, 18 pulley teeth
+ #define MICROSTEPS_Z 2
+ #define STEP_REVS_Z 400
+ #define MM_PER_REV_Z 1.250 // 1.25 mm/rev leadscrew
+ #define DEFAULT_X_STEPS_PER_MM (MICROSTEPS_XY*STEP_REVS_XY/MM_PER_REV_XY)
+ #define DEFAULT_Y_STEPS_PER_MM (MICROSTEPS_XY*STEP_REVS_XY/MM_PER_REV_XY)
+ #define DEFAULT_Z_STEPS_PER_MM (MICROSTEPS_Z*STEP_REVS_Z/MM_PER_REV_Z)
+ #define DEFAULT_X_MAX_RATE 1000.0 // mm/min
+ #define DEFAULT_Y_MAX_RATE 1000.0 // mm/min
+ #define DEFAULT_Z_MAX_RATE 1000.0 // mm/min
+ #define DEFAULT_X_ACCELERATION (15.0*60*60) // 15*60*60 mm/min^2 = 15 mm/sec^2
+ #define DEFAULT_Y_ACCELERATION (15.0*60*60) // 15*60*60 mm/min^2 = 15 mm/sec^2
+ #define DEFAULT_Z_ACCELERATION (15.0*60*60) // 15*60*60 mm/min^2 = 15 mm/sec^2
+ #define DEFAULT_X_MAX_TRAVEL 200.0 // mm
+ #define DEFAULT_Y_MAX_TRAVEL 200.0 // mm
+ #define DEFAULT_Z_MAX_TRAVEL 200.0 // mm
+ #define DEFAULT_STEP_PULSE_MICROSECONDS 10
+ #define DEFAULT_STEPPING_INVERT_MASK 0
+ #define DEFAULT_DIRECTION_INVERT_MASK ((1<.
+*/
+
+/* The defaults.h file serves as a central default settings file for different machine
+ types, from DIY CNC mills to CNC conversions of off-the-shelf machines. The settings
+ here are supplied by users, so your results may vary. However, this should give you
+ a good starting point as you get to know your machine and tweak the settings for your
+ nefarious needs. */
+
+#ifndef defaults_h
+#define defaults_h
+
+ // Description: Shapeoko CNC mill with three NEMA 17 stepper motors, driven by Synthetos
+ // grblShield at 28V.
+ #define MICROSTEPS_XY 8
+ #define STEP_REVS_XY 200
+ #define MM_PER_REV_XY (2.0*20) // 2mm belt pitch, 20 pulley teeth
+ #define MICROSTEPS_Z 2
+ #define STEP_REVS_Z 200
+ #define MM_PER_REV_Z 1.250 // 1.25 mm/rev leadscrew
+ #define DEFAULT_X_STEPS_PER_MM (MICROSTEPS_XY*STEP_REVS_XY/MM_PER_REV_XY)
+ #define DEFAULT_Y_STEPS_PER_MM (MICROSTEPS_XY*STEP_REVS_XY/MM_PER_REV_XY)
+ #define DEFAULT_Z_STEPS_PER_MM (MICROSTEPS_Z*STEP_REVS_Z/MM_PER_REV_Z)
+ #define DEFAULT_X_MAX_RATE 5000.0 // mm/min
+ #define DEFAULT_Y_MAX_RATE 5000.0 // mm/min
+ #define DEFAULT_Z_MAX_RATE 500.0 // mm/min
+ #define DEFAULT_X_ACCELERATION (250.0*60*60) // 25*60*60 mm/min^2 = 25 mm/sec^2
+ #define DEFAULT_Y_ACCELERATION (250.0*60*60) // 25*60*60 mm/min^2 = 25 mm/sec^2
+ #define DEFAULT_Z_ACCELERATION (50.0*60*60) // 25*60*60 mm/min^2 = 25 mm/sec^2
+ #define DEFAULT_X_MAX_TRAVEL 290.0 // mm
+ #define DEFAULT_Y_MAX_TRAVEL 290.0 // mm
+ #define DEFAULT_Z_MAX_TRAVEL 100.0 // mm
+ #define DEFAULT_STEP_PULSE_MICROSECONDS 10
+ #define DEFAULT_STEPPING_INVERT_MASK 0
+ #define DEFAULT_DIRECTION_INVERT_MASK ((1<.
+*/
+
+/* The defaults.h file serves as a central default settings file for different machine
+ types, from DIY CNC mills to CNC conversions of off-the-shelf machines. The settings
+ here are supplied by users, so your results may vary. However, this should give you
+ a good starting point as you get to know your machine and tweak the settings for your
+ nefarious needs. */
+
+#ifndef defaults_h
+#define defaults_h
+
+ // Description: Shapeoko CNC mill with three NEMA 23 stepper motors, driven by CarbideMotion
+ #define MICROSTEPS_XY 8
+ #define STEP_REVS_XY 200
+ #define MM_PER_REV_XY (2.0*20) // 2mm belt pitch, 20 pulley teeth
+ #define MICROSTEPS_Z 8
+ #define STEP_REVS_Z 200
+ #define MM_PER_REV_Z (2.0*20) // 2mm belt pitch, 20 pulley teeth
+ #define DEFAULT_X_STEPS_PER_MM (MICROSTEPS_XY*STEP_REVS_XY/MM_PER_REV_XY)
+ #define DEFAULT_Y_STEPS_PER_MM (MICROSTEPS_XY*STEP_REVS_XY/MM_PER_REV_XY)
+ #define DEFAULT_Z_STEPS_PER_MM (MICROSTEPS_Z*STEP_REVS_Z/MM_PER_REV_Z)
+ #define DEFAULT_X_MAX_RATE 5000.0 // mm/min
+ #define DEFAULT_Y_MAX_RATE 5000.0 // mm/min
+ #define DEFAULT_Z_MAX_RATE 5000.0 // mm/min
+ #define DEFAULT_X_ACCELERATION (400.0*60*60) // 400*60*60 mm/min^2 = 400 mm/sec^2
+ #define DEFAULT_Y_ACCELERATION (400.0*60*60) // 400*60*60 mm/min^2 = 400 mm/sec^2
+ #define DEFAULT_Z_ACCELERATION (400.0*60*60) // 400*60*60 mm/min^2 = 400 mm/sec^2
+ #define DEFAULT_X_MAX_TRAVEL 425.0 // mm
+ #define DEFAULT_Y_MAX_TRAVEL 465.0 // mm
+ #define DEFAULT_Z_MAX_TRAVEL 80.0 // mm
+ #define DEFAULT_STEP_PULSE_MICROSECONDS 10
+ #define DEFAULT_STEPPING_INVERT_MASK 0
+ #define DEFAULT_DIRECTION_INVERT_MASK ((1<.
+*/
+
+/* The defaults.h file serves as a central default settings file for different machine
+ types, from DIY CNC mills to CNC conversions of off-the-shelf machines. The settings
+ here are supplied by users, so your results may vary. However, this should give you
+ a good starting point as you get to know your machine and tweak the settings for your
+ nefarious needs. */
+
+#ifndef defaults_h
+#define defaults_h
+
+ // Description: Sherline 5400 mill with three NEMA 23 Keling KL23H256-21-8B 185 oz-in stepper motors,
+ // driven by three Pololu A4988 stepper drivers with a 30V, 6A power supply at 1.5A per winding.
+ #define MICROSTEPS 2
+ #define STEPS_PER_REV 200.0
+ #define MM_PER_REV (0.050*MM_PER_INCH) // 0.050 inch/rev leadscrew
+ #define DEFAULT_X_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/MM_PER_REV)
+ #define DEFAULT_Y_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/MM_PER_REV)
+ #define DEFAULT_Z_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/MM_PER_REV)
+ #define DEFAULT_X_MAX_RATE 635.0 // mm/min (25 ipm)
+ #define DEFAULT_Y_MAX_RATE 635.0 // mm/min
+ #define DEFAULT_Z_MAX_RATE 635.0 // mm/min
+ #define DEFAULT_X_ACCELERATION (50.0*60*60) // 50*60*60 mm/min^2 = 50 mm/sec^2
+ #define DEFAULT_Y_ACCELERATION (50.0*60*60) // 50*60*60 mm/min^2 = 50 mm/sec^2
+ #define DEFAULT_Z_ACCELERATION (50.0*60*60) // 50*60*60 mm/min^2 = 50 mm/sec^2
+ #define DEFAULT_X_MAX_TRAVEL 225.0 // mm
+ #define DEFAULT_Y_MAX_TRAVEL 125.0 // mm
+ #define DEFAULT_Z_MAX_TRAVEL 170.0 // mm
+ #define DEFAULT_STEP_PULSE_MICROSECONDS 10
+ #define DEFAULT_STEPPING_INVERT_MASK 0
+ #define DEFAULT_DIRECTION_INVERT_MASK ((1<.
+*/
+
+/* The defaults.h file serves as a central default settings file for different machine
+ types, from DIY CNC mills to CNC conversions of off-the-shelf machines. The settings
+ here are supplied by users, so your results may vary. However, this should give you
+ a good starting point as you get to know your machine and tweak the settings for your
+ nefarious needs. */
+
+#ifndef defaults_h
+#define defaults_h
+
+ // Settings only for Grbl Simulator (www.github.com/grbl/grbl-sim)
+ // Grbl generic default settings. Should work across different machines.
+ #define DEFAULT_X_STEPS_PER_MM 1000.0
+ #define DEFAULT_Y_STEPS_PER_MM 1000.0
+ #define DEFAULT_Z_STEPS_PER_MM 1000.0
+ #define DEFAULT_X_MAX_RATE 1000.0 // mm/min
+ #define DEFAULT_Y_MAX_RATE 1000.0 // mm/min
+ #define DEFAULT_Z_MAX_RATE 1000.0 // mm/min
+ #define DEFAULT_X_ACCELERATION (100.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
+ #define DEFAULT_Y_ACCELERATION (100.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
+ #define DEFAULT_Z_ACCELERATION (100.0*60*60) // 10*60*60 mm/min^2 = 10 mm/sec^2
+ #define DEFAULT_X_MAX_TRAVEL 1000.0 // mm
+ #define DEFAULT_Y_MAX_TRAVEL 1000.0 // mm
+ #define DEFAULT_Z_MAX_TRAVEL 1000.0 // mm
+ #define DEFAULT_STEP_PULSE_MICROSECONDS 10
+ #define DEFAULT_STEPPING_INVERT_MASK 0
+ #define DEFAULT_DIRECTION_INVERT_MASK 0
+ #define DEFAULT_STEPPER_IDLE_LOCK_TIME 25 // msec (0-254, 255 keeps steppers enabled)
+ #define DEFAULT_STATUS_REPORT_MASK ((BITFLAG_RT_STATUS_MACHINE_POSITION)|(BITFLAG_RT_STATUS_WORK_POSITION))
+ #define DEFAULT_JUNCTION_DEVIATION 0.02 // mm
+ #define DEFAULT_ARC_TOLERANCE 0.002 // mm
+ #define DEFAULT_REPORT_INCHES 0 // false
+ #define DEFAULT_AUTO_START 1 // true
+ #define DEFAULT_INVERT_ST_ENABLE 0 // false
+ #define DEFAULT_INVERT_LIMIT_PINS 0 // false
+ #define DEFAULT_SOFT_LIMIT_ENABLE 0 // false
+ #define DEFAULT_HARD_LIMIT_ENABLE 0 // false
+ #define DEFAULT_HOMING_ENABLE 0 // false
+ #define DEFAULT_HOMING_DIR_MASK 0 // move positive dir
+ #define DEFAULT_HOMING_FEED_RATE 25.0 // mm/min
+ #define DEFAULT_HOMING_SEEK_RATE 500.0 // mm/min
+ #define DEFAULT_HOMING_DEBOUNCE_DELAY 250 // msec (0-65k)
+ #define DEFAULT_HOMING_PULLOFF 1.0 // mm
+
+#endif
diff --git a/grbl/defaults/defaults_zen_toolworks_7x7.h b/grbl/defaults/defaults_zen_toolworks_7x7.h
new file mode 100644
index 0000000..a6e8787
--- /dev/null
+++ b/grbl/defaults/defaults_zen_toolworks_7x7.h
@@ -0,0 +1,69 @@
+/*
+ defaults_zen_toolworks_7x7.h - defaults settings configuration file
+ Part of Grbl
+
+ Copyright (c) 2012-2015 Sungeun K. Jeon
+
+ Grbl is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Grbl is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Grbl. If not, see .
+*/
+
+/* The defaults.h file serves as a central default settings file for different machine
+ types, from DIY CNC mills to CNC conversions of off-the-shelf machines. The settings
+ here are supplied by users, so your results may vary. However, this should give you
+ a good starting point as you get to know your machine and tweak the settings for your
+ nefarious needs. */
+
+#ifndef defaults_h
+#define defaults_h
+
+ // Description: Zen Toolworks 7x7 mill with three Shinano SST43D2121 65oz-in NEMA 17 stepper motors.
+ // Leadscrew is different from some ZTW kits, where most are 1.25mm/rev rather than 8.0mm/rev here.
+ // Driven by 30V, 6A power supply and TI DRV8811 stepper motor drivers.
+ #define MICROSTEPS 8
+ #define STEPS_PER_REV 200.0
+ #define MM_PER_REV 8.0 // 8 mm/rev leadscrew
+ #define DEFAULT_X_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/MM_PER_REV)
+ #define DEFAULT_Y_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/MM_PER_REV)
+ #define DEFAULT_Z_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/MM_PER_REV)
+ #define DEFAULT_X_MAX_RATE 6000.0 // mm/min
+ #define DEFAULT_Y_MAX_RATE 6000.0 // mm/min
+ #define DEFAULT_Z_MAX_RATE 6000.0 // mm/min
+ #define DEFAULT_X_ACCELERATION (600.0*60*60) // 600*60*60 mm/min^2 = 600 mm/sec^2
+ #define DEFAULT_Y_ACCELERATION (600.0*60*60) // 600*60*60 mm/min^2 = 600 mm/sec^2
+ #define DEFAULT_Z_ACCELERATION (600.0*60*60) // 600*60*60 mm/min^2 = 600 mm/sec^2
+ #define DEFAULT_X_MAX_TRAVEL 190.0 // mm
+ #define DEFAULT_Y_MAX_TRAVEL 180.0 // mm
+ #define DEFAULT_Z_MAX_TRAVEL 150.0 // mm
+ #define DEFAULT_STEP_PULSE_MICROSECONDS 10
+ #define DEFAULT_STEPPING_INVERT_MASK 0
+ #define DEFAULT_DIRECTION_INVERT_MASK ((1<