@ -74,7 +74,7 @@
//============================== Delta Settings =============================
//============================== Delta Settings =============================
//===========================================================================
//===========================================================================
// Enable DELTA kinematics
// Enable DELTA kinematics
//#define DELTA
# define DELTA
// Make delta curves from many straight lines (linear interpolation).
// Make delta curves from many straight lines (linear interpolation).
// This is a trade-off between visible corners (not enough segments)
// This is a trade-off between visible corners (not enough segments)
@ -277,11 +277,26 @@
# endif
# endif
// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
# ifdef DELTA
const bool X_ENDSTOPS_INVERTING = false ; // set to true to invert the logic of the endstops.
const bool Y_ENDSTOPS_INVERTING = false ; // set to true to invert the logic of the endstops.
const bool Z_ENDSTOPS_INVERTING = false ; // set to true to invert the logic of the endstops.
# else
const bool X_ENDSTOPS_INVERTING = true ; // set to true to invert the logic of the endstops.
const bool X_ENDSTOPS_INVERTING = true ; // set to true to invert the logic of the endstops.
const bool Y_ENDSTOPS_INVERTING = true ; // set to true to invert the logic of the endstops.
const bool Y_ENDSTOPS_INVERTING = true ; // set to true to invert the logic of the endstops.
const bool Z_ENDSTOPS_INVERTING = true ; // set to true to invert the logic of the endstops.
const bool Z_ENDSTOPS_INVERTING = true ; // set to true to invert the logic of the endstops.
# endif // DELTA
# ifdef DELTA
// deltas never have min endstops
# define DISABLE_MIN_ENDSTOPS
# else
//#define DISABLE_MAX_ENDSTOPS
//#define DISABLE_MAX_ENDSTOPS
//#define DISABLE_MIN_ENDSTOPS
//#define DISABLE_MIN_ENDSTOPS
# endif // delta
// Disable max endstops for compatibility with endstop checking routine
// Disable max endstops for compatibility with endstop checking routine
# if defined(COREXY) && !defined(DISABLE_MAX_ENDSTOPS)
# if defined(COREXY) && !defined(DISABLE_MAX_ENDSTOPS)
@ -300,21 +315,41 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th
# define DISABLE_Z false
# define DISABLE_Z false
# define DISABLE_E false // For all extruders
# define DISABLE_E false // For all extruders
# define INVERT_X_DIR true // for Mendel set to false, for Orca set to true
# ifdef DELTA
# define INVERT_X_DIR false // DELTA does not invert
# define INVERT_Y_DIR false
# define INVERT_Z_DIR false
# else
# define INVERT_X_DIR true // for Mendel set to false, for Orca set to true
# define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false
# define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false
# define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true
# define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true
# endif // DELTA
# define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false
# define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false
# define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false
# define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false
# define INVERT_E2_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false
# define INVERT_E2_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false
// ENDSTOP SETTINGS:
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
// Sets direction of endstops when homing; 1=MAX, -1=MIN
# ifdef DELTA
// deltas always home to max
# define X_HOME_DIR 1
# define Y_HOME_DIR 1
# define Z_HOME_DIR 1
# define min_software_endstops false // If true, axis won't move to coordinates less than HOME_POS.
# define max_software_endstops false // If true, axis won't move to coordinates greater than the defined lengths below.
# else
# define X_HOME_DIR -1
# define X_HOME_DIR -1
# define Y_HOME_DIR -1
# define Y_HOME_DIR -1
# define Z_HOME_DIR -1
# define Z_HOME_DIR -1
# define min_software_endstops true // If true, axis won't move to coordinates less than HOME_POS.
# define min_software_endstops true // If true, axis won't move to coordinates less than HOME_POS.
# define max_software_endstops true // If true, axis won't move to coordinates greater than the defined lengths below.
# define max_software_endstops true // If true, axis won't move to coordinates greater than the defined lengths below.
# endif // delta
// Travel limits after homing
// Travel limits after homing
# define X_MAX_POS 205
# define X_MAX_POS 205
# define X_MIN_POS 0
# define X_MIN_POS 0
@ -332,22 +367,48 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th
//#define BED_CENTER_AT_0_0 // If defined, the center of the bed is at (X=0, Y=0)
//#define BED_CENTER_AT_0_0 // If defined, the center of the bed is at (X=0, Y=0)
//Manual homing switch locations:
//Manual homing switch locations:
# ifdef DELTA
# define MANUAL_HOME_POSITIONS // MANUAL_*_HOME_POS below will be used
// For deltabots this means top and center of the cartesian print volume.
// For deltabots this means top and center of the cartesian print volume.
# define MANUAL_X_HOME_POS 0
# define MANUAL_Y_HOME_POS 0
# define MANUAL_Z_HOME_POS 250 // For delta: Distance between nozzle and print surface after homing.
# else
# define MANUAL_X_HOME_POS 0
# define MANUAL_X_HOME_POS 0
# define MANUAL_Y_HOME_POS 0
# define MANUAL_Y_HOME_POS 0
# define MANUAL_Z_HOME_POS 0
# define MANUAL_Z_HOME_POS 0
//#define MANUAL_Z_HOME_POS 402 // For delta: Distance between nozzle and print surface after homing.
# endif // DELTA
//// MOVEMENT SETTINGS
//// MOVEMENT SETTINGS
# define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E
# define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E
# ifdef DELTA
// delta homing speeds must be the same on xyz
# define HOMING_FEEDRATE {200*60, 200*60, 200*60, 0} // set the homing speeds (mm/min)
# else
# define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min)
# define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min)
# endif // DELTA
// default settings
// default settings
# ifdef DELTA
// delta speeds must be the same on xyz
# define DEFAULT_AXIS_STEPS_PER_UNIT {80, 80, 80, 760*1.1} // default steps per unit for Kossel (GT2, 20 tooth)
# define DEFAULT_MAX_FEEDRATE {500, 500, 500, 25} // (mm/sec)
# define DEFAULT_MAX_ACCELERATION {9000,9000,9000,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot.
# else
# define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200.0*8 / 3,760*1.1} // default steps per unit for Ultimaker
# define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200.0*8 / 3,760*1.1} // default steps per unit for Ultimaker
# define DEFAULT_MAX_FEEDRATE {500, 500, 5, 25} // (mm/sec)
# define DEFAULT_MAX_FEEDRATE {500, 500, 5, 25} // (mm/sec)
# define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot.
# define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot.
# endif // DELTA
# define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves
# define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves
# define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for retracts
# define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for retracts