Add Dual Steppers / Endstops to configs
This commit is contained in:
		@@ -280,25 +280,49 @@
 | 
			
		||||
// The next unused E driver will be assigned to the second Z stepper.
 | 
			
		||||
#define Z_DUAL_STEPPER_DRIVERS
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Dual Steppers / Dual Endstops
 | 
			
		||||
 *
 | 
			
		||||
 * This section will allow you to use extra E drivers to drive a second motor for X, Y, or Z axes.
 | 
			
		||||
 *
 | 
			
		||||
 * For example, set X_DUAL_STEPPER_DRIVERS setting to use a second motor. If the motors need to
 | 
			
		||||
 * spin in opposite directions set INVERT_X2_VS_X_DIR. If the second motor needs its own endstop
 | 
			
		||||
 * set X_DUAL_ENDSTOPS. This can adjust for "racking." Use X2_USE_ENDSTOP to set the endstop plug
 | 
			
		||||
 * that should be used for the second endstop. Extra endstops will appear in the output of 'M119'.
 | 
			
		||||
 *
 | 
			
		||||
 * Use X_DUAL_ENDSTOP_ADJUSTMENT to adjust for mechanical imperfection. After homing both motors
 | 
			
		||||
 * this offset is applied to the X2 motor. To find the offset home the X axis, and measure the error
 | 
			
		||||
 * in X2. Dual endstop offsets can be set at runtime with 'M666 X<offset> Y<offset> Z<offset>'.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
//#define X_DUAL_STEPPER_DRIVERS
 | 
			
		||||
#if ENABLED(X_DUAL_STEPPER_DRIVERS)
 | 
			
		||||
  #define INVERT_X2_VS_X_DIR true   // Set 'true' if X motors should rotate in opposite directions
 | 
			
		||||
  //#define X_DUAL_ENDSTOPS
 | 
			
		||||
  #if ENABLED(X_DUAL_ENDSTOPS)
 | 
			
		||||
    #define X2_USE_ENDSTOP _XMAX_
 | 
			
		||||
    #define X_DUAL_ENDSTOPS_ADJUSTMENT  0
 | 
			
		||||
  #endif
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
//#define Y_DUAL_STEPPER_DRIVERS
 | 
			
		||||
#if ENABLED(Y_DUAL_STEPPER_DRIVERS)
 | 
			
		||||
  #define INVERT_Y2_VS_Y_DIR true   // Set 'true' if Y motors should rotate in opposite directions
 | 
			
		||||
  //#define Y_DUAL_ENDSTOPS
 | 
			
		||||
  #if ENABLED(Y_DUAL_ENDSTOPS)
 | 
			
		||||
    #define Y2_USE_ENDSTOP _YMAX_
 | 
			
		||||
    #define Y_DUAL_ENDSTOPS_ADJUSTMENT  0
 | 
			
		||||
  #endif
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
//#define Z_DUAL_STEPPER_DRIVERS
 | 
			
		||||
#if ENABLED(Z_DUAL_STEPPER_DRIVERS)
 | 
			
		||||
 | 
			
		||||
  // Z_DUAL_ENDSTOPS is a feature to enable the use of 2 endstops for both Z steppers - Let's call them Z stepper and Z2 stepper.
 | 
			
		||||
  // That way the machine is capable to align the bed during home, since both Z steppers are homed.
 | 
			
		||||
  // There is also an implementation of M666 (software endstops adjustment) to this feature.
 | 
			
		||||
  // After Z homing, this adjustment is applied to just one of the steppers in order to align the bed.
 | 
			
		||||
  // One just need to home the Z axis and measure the distance difference between both Z axis and apply the math: Z adjust = Z - Z2.
 | 
			
		||||
  // If the Z stepper axis is closer to the bed, the measure Z > Z2 (yes, it is.. think about it) and the Z adjust would be positive.
 | 
			
		||||
  // Play a little bit with small adjustments (0.5mm) and check the behaviour.
 | 
			
		||||
  // The M119 (endstops report) will start reporting the Z2 Endstop as well.
 | 
			
		||||
 | 
			
		||||
  //#define Z_DUAL_ENDSTOPS
 | 
			
		||||
 | 
			
		||||
  #if ENABLED(Z_DUAL_ENDSTOPS)
 | 
			
		||||
    #define Z2_USE_ENDSTOP _XMAX_
 | 
			
		||||
    #define Z_DUAL_ENDSTOPS_ADJUSTMENT  0  // Use M666 to determine/test this value
 | 
			
		||||
    #define Z_DUAL_ENDSTOPS_ADJUSTMENT  0
 | 
			
		||||
  #endif
 | 
			
		||||
 | 
			
		||||
#endif // Z_DUAL_STEPPER_DRIVERS
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
// Enable this for dual x-carriage printers.
 | 
			
		||||
// A dual x-carriage design has the advantage that the inactive extruder can be parked which
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user