|
|
@ -123,8 +123,8 @@
|
|
|
|
#define AUTOTEMP_OLDWEIGHT 0.98
|
|
|
|
#define AUTOTEMP_OLDWEIGHT 0.98
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
//Show Temperature ADC value
|
|
|
|
// Show Temperature ADC value
|
|
|
|
//The M105 command return, besides traditional information, the ADC value read from temperature sensors.
|
|
|
|
// Enable for M105 to include ADC values read from temperature sensors.
|
|
|
|
//#define SHOW_TEMP_ADC_VALUES
|
|
|
|
//#define SHOW_TEMP_ADC_VALUES
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
@ -220,12 +220,16 @@
|
|
|
|
#define EXTRUDER_AUTO_FAN_TEMPERATURE 50
|
|
|
|
#define EXTRUDER_AUTO_FAN_TEMPERATURE 50
|
|
|
|
#define EXTRUDER_AUTO_FAN_SPEED 255 // == full speed
|
|
|
|
#define EXTRUDER_AUTO_FAN_SPEED 255 // == full speed
|
|
|
|
|
|
|
|
|
|
|
|
// Define a pin to turn case light on/off
|
|
|
|
/**
|
|
|
|
//#define CASE_LIGHT_PIN 4
|
|
|
|
* M355 Case Light on-off / brightness
|
|
|
|
#if PIN_EXISTS(CASE_LIGHT)
|
|
|
|
*/
|
|
|
|
#define INVERT_CASE_LIGHT false // Set to true if HIGH is the OFF state (active low)
|
|
|
|
//#define CASE_LIGHT_ENABLE
|
|
|
|
//#define CASE_LIGHT_DEFAULT_ON // Uncomment to set default state to on
|
|
|
|
#if ENABLED(CASE_LIGHT_ENABLE)
|
|
|
|
//#define MENU_ITEM_CASE_LIGHT // Uncomment to have a Case Light On / Off entry in main menu
|
|
|
|
//#define CASE_LIGHT_PIN 4 // Override the default pin if needed
|
|
|
|
|
|
|
|
#define INVERT_CASE_LIGHT false // Set true if Case Light is ON when pin is LOW
|
|
|
|
|
|
|
|
#define CASE_LIGHT_DEFAULT_ON true // Set default power-up state on
|
|
|
|
|
|
|
|
#define CASE_LIGHT_DEFAULT_BRIGHTNESS 105 // Set default power-up brightness (0-255, requires PWM pin)
|
|
|
|
|
|
|
|
//#define MENU_ITEM_CASE_LIGHT // Add a Case Light option to the LCD main menu
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
//===========================================================================
|
|
|
|
//===========================================================================
|
|
|
@ -280,7 +284,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
#if ENABLED(Z_DUAL_ENDSTOPS)
|
|
|
|
#if ENABLED(Z_DUAL_ENDSTOPS)
|
|
|
|
#define Z2_USE_ENDSTOP _XMAX_
|
|
|
|
#define Z2_USE_ENDSTOP _XMAX_
|
|
|
|
#define Z_DUAL_ENDSTOPS_ADJUSTMENT 0 // use M666 command to determine/test this value
|
|
|
|
#define Z_DUAL_ENDSTOPS_ADJUSTMENT 0 // Use M666 to determine/test this value
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#endif // Z_DUAL_STEPPER_DRIVERS
|
|
|
|
#endif // Z_DUAL_STEPPER_DRIVERS
|
|
|
@ -390,7 +394,7 @@
|
|
|
|
// Minimum planner junction speed. Sets the default minimum speed the planner plans for at the end
|
|
|
|
// Minimum planner junction speed. Sets the default minimum speed the planner plans for at the end
|
|
|
|
// of the buffer and all stops. This should not be much greater than zero and should only be changed
|
|
|
|
// of the buffer and all stops. This should not be much greater than zero and should only be changed
|
|
|
|
// if unwanted behavior is observed on a user's machine when running at very slow speeds.
|
|
|
|
// if unwanted behavior is observed on a user's machine when running at very slow speeds.
|
|
|
|
#define MINIMUM_PLANNER_SPEED 0.05// (mm/sec)
|
|
|
|
#define MINIMUM_PLANNER_SPEED 0.05 // (mm/sec)
|
|
|
|
|
|
|
|
|
|
|
|
// Microstep setting (Only functional when stepper driver microstep pins are connected to MCU.
|
|
|
|
// Microstep setting (Only functional when stepper driver microstep pins are connected to MCU.
|
|
|
|
#define MICROSTEP_MODES {16,16,16,16,16} // [1,2,4,8,16]
|
|
|
|
#define MICROSTEP_MODES {16,16,16,16,16} // [1,2,4,8,16]
|
|
|
@ -415,16 +419,16 @@
|
|
|
|
* M908 - BQ_ZUM_MEGA_3D, RAMBO, PRINTRBOARD_REVF, RIGIDBOARD_V2 & SCOOVO_X9H
|
|
|
|
* M908 - BQ_ZUM_MEGA_3D, RAMBO, PRINTRBOARD_REVF, RIGIDBOARD_V2 & SCOOVO_X9H
|
|
|
|
* M909, M910 & LCD - only PRINTRBOARD_REVF & RIGIDBOARD_V2
|
|
|
|
* M909, M910 & LCD - only PRINTRBOARD_REVF & RIGIDBOARD_V2
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
//#define PWM_MOTOR_CURRENT {1300, 1300, 1250} // Values in milliamps
|
|
|
|
//#define PWM_MOTOR_CURRENT { 1300, 1300, 1250 } // Values in milliamps
|
|
|
|
#define DIGIPOT_MOTOR_CURRENT {135,135,135,135,135} // Values 0-255 (RAMBO 135 = ~0.75A, 185 = ~1A)
|
|
|
|
#define DIGIPOT_MOTOR_CURRENT { 135,135,135,135,135 } // Values 0-255 (RAMBO 135 = ~0.75A, 185 = ~1A)
|
|
|
|
//#define DAC_MOTOR_CURRENT_DEFAULT { 70, 80, 90, 80 } // Default drive percent - X, Y, Z, E axis
|
|
|
|
//#define DAC_MOTOR_CURRENT_DEFAULT { 70, 80, 90, 80 } // Default drive percent - X, Y, Z, E axis
|
|
|
|
|
|
|
|
|
|
|
|
// Uncomment to enable an I2C based DIGIPOT like on the Azteeg X3 Pro
|
|
|
|
// Uncomment to enable an I2C based DIGIPOT like on the Azteeg X3 Pro
|
|
|
|
//#define DIGIPOT_I2C
|
|
|
|
//#define DIGIPOT_I2C
|
|
|
|
//#define DIGIPOT_MCP4018
|
|
|
|
//#define DIGIPOT_MCP4018 // Requires library from https://github.com/stawel/SlowSoftI2CMaster
|
|
|
|
#define DIGIPOT_I2C_NUM_CHANNELS 8 // 5DPRINT: 4 AZTEEG_X3_PRO: 8
|
|
|
|
#define DIGIPOT_I2C_NUM_CHANNELS 8 // 5DPRINT: 4 AZTEEG_X3_PRO: 8
|
|
|
|
// Actual motor currents in Amps, need as many here as DIGIPOT_I2C_NUM_CHANNELS
|
|
|
|
// Actual motor currents in Amps, need as many here as DIGIPOT_I2C_NUM_CHANNELS
|
|
|
|
#define DIGIPOT_I2C_MOTOR_CURRENTS {1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0} // AZTEEG_X3_PRO
|
|
|
|
#define DIGIPOT_I2C_MOTOR_CURRENTS { 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 } // AZTEEG_X3_PRO
|
|
|
|
|
|
|
|
|
|
|
|
//===========================================================================
|
|
|
|
//===========================================================================
|
|
|
|
//=============================Additional Features===========================
|
|
|
|
//=============================Additional Features===========================
|
|
|
@ -644,7 +648,7 @@
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* Set to 0 to auto-detect the ratio based on given Gcode G1 print moves.
|
|
|
|
* Set to 0 to auto-detect the ratio based on given Gcode G1 print moves.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* Slic3r (including Prusa Slic3r) produces Gcode compatible with the automatic mode.
|
|
|
|
* Slic3r (including Průša Control) produces Gcode compatible with the automatic mode.
|
|
|
|
* Cura (as of this writing) may produce Gcode incompatible with the automatic mode.
|
|
|
|
* Cura (as of this writing) may produce Gcode incompatible with the automatic mode.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
#define LIN_ADVANCE_E_D_RATIO 0 // The calculated ratio (or 0) according to the formula W * H / ((D / 2) ^ 2 * PI)
|
|
|
|
#define LIN_ADVANCE_E_D_RATIO 0 // The calculated ratio (or 0) according to the formula W * H / ((D / 2) ^ 2 * PI)
|
|
|
@ -674,10 +678,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
// @section extras
|
|
|
|
// @section extras
|
|
|
|
|
|
|
|
|
|
|
|
// Arc interpretation settings:
|
|
|
|
//
|
|
|
|
#define ARC_SUPPORT // Disabling this saves ~2738 bytes
|
|
|
|
// G2/G3 Arc Support
|
|
|
|
#define MM_PER_ARC_SEGMENT 1
|
|
|
|
//
|
|
|
|
#define N_ARC_CORRECTION 25
|
|
|
|
#define ARC_SUPPORT // Disable this feature to save ~3226 bytes
|
|
|
|
|
|
|
|
#if ENABLED(ARC_SUPPORT)
|
|
|
|
|
|
|
|
#define MM_PER_ARC_SEGMENT 1 // Length of each arc segment
|
|
|
|
|
|
|
|
#define N_ARC_CORRECTION 25 // Number of intertpolated segments between corrections
|
|
|
|
|
|
|
|
//#define ARC_P_CIRCLES // Enable the 'P' parameter to specify complete circles
|
|
|
|
|
|
|
|
//#define CNC_WORKSPACE_PLANES // Allow G2/G3 to operate in XY, ZX, or YZ planes
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
// Support for G5 with XYZE destination and IJPQ offsets. Requires ~2666 bytes.
|
|
|
|
// Support for G5 with XYZE destination and IJPQ offsets. Requires ~2666 bytes.
|
|
|
|
//#define BEZIER_CURVE_SUPPORT
|
|
|
|
//#define BEZIER_CURVE_SUPPORT
|
|
|
@ -814,6 +824,7 @@
|
|
|
|
#define PAUSE_PARK_NO_STEPPER_TIMEOUT // Enable to have stepper motors hold position during filament change
|
|
|
|
#define PAUSE_PARK_NO_STEPPER_TIMEOUT // Enable to have stepper motors hold position during filament change
|
|
|
|
// even if it takes longer than DEFAULT_STEPPER_DEACTIVE_TIME.
|
|
|
|
// even if it takes longer than DEFAULT_STEPPER_DEACTIVE_TIME.
|
|
|
|
//#define PARK_HEAD_ON_PAUSE // Go to filament change position on pause, return to print position on resume
|
|
|
|
//#define PARK_HEAD_ON_PAUSE // Go to filament change position on pause, return to print position on resume
|
|
|
|
|
|
|
|
//#define HOME_BEFORE_FILAMENT_CHANGE // Ensure homing has been completed prior to parking for filament change
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
// @section tmc
|
|
|
|
// @section tmc
|
|
|
@ -1034,7 +1045,7 @@
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
#define TMC2130_ADV() { }
|
|
|
|
#define TMC2130_ADV() { }
|
|
|
|
|
|
|
|
|
|
|
|
#endif // ENABLED(HAVE_TMC2130)
|
|
|
|
#endif // HAVE_TMC2130
|
|
|
|
|
|
|
|
|
|
|
|
// @section L6470
|
|
|
|
// @section L6470
|
|
|
|
|
|
|
|
|
|
|
@ -1269,4 +1280,95 @@
|
|
|
|
#define USER_GCODE_5 "G28\nM503"
|
|
|
|
#define USER_GCODE_5 "G28\nM503"
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* Specify an action command to send to the host when the printer is killed.
|
|
|
|
|
|
|
|
* Will be sent in the form '//action:ACTION_ON_KILL', e.g. '//action:poweroff'.
|
|
|
|
|
|
|
|
* The host must be configured to handle the action command.
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
//#define ACTION_ON_KILL "poweroff"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//===========================================================================
|
|
|
|
|
|
|
|
//====================== I2C Position Encoder Settings ======================
|
|
|
|
|
|
|
|
//===========================================================================
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* I2C position encoders for closed loop control.
|
|
|
|
|
|
|
|
* Developed by Chris Barr at Aus3D.
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* Wiki: http://wiki.aus3d.com.au/Magnetic_Encoder
|
|
|
|
|
|
|
|
* Github: https://github.com/Aus3D/MagneticEncoder
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* Supplier: http://aus3d.com.au/magnetic-encoder-module
|
|
|
|
|
|
|
|
* Alternative Supplier: http://reliabuild3d.com/
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* Reilabuild encoders have been modified to improve reliability.
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//#define I2C_POSITION_ENCODERS
|
|
|
|
|
|
|
|
#if ENABLED(I2C_POSITION_ENCODERS)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define I2CPE_ENCODER_CNT 1 // The number of encoders installed; max of 5
|
|
|
|
|
|
|
|
// encoders supported currently.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define I2CPE_ENC_1_ADDR I2CPE_PRESET_ADDR_X // I2C address of the encoder. 30-200.
|
|
|
|
|
|
|
|
#define I2CPE_ENC_1_AXIS X_AXIS // Axis the encoder module is installed on. <X|Y|Z|E>_AXIS.
|
|
|
|
|
|
|
|
#define I2CPE_ENC_1_TYPE I2CPE_ENC_TYPE_LINEAR // Type of encoder: I2CPE_ENC_TYPE_LINEAR -or-
|
|
|
|
|
|
|
|
// I2CPE_ENC_TYPE_ROTARY.
|
|
|
|
|
|
|
|
#define I2CPE_ENC_1_TICKS_UNIT 2048 // 1024 for magnetic strips with 2mm poles; 2048 for
|
|
|
|
|
|
|
|
// 1mm poles. For linear encoders this is ticks / mm,
|
|
|
|
|
|
|
|
// for rotary encoders this is ticks / revolution.
|
|
|
|
|
|
|
|
//#define I2CPE_ENC_1_TICKS_REV (16 * 200) // Only needed for rotary encoders; number of stepper
|
|
|
|
|
|
|
|
// steps per full revolution (motor steps/rev * microstepping)
|
|
|
|
|
|
|
|
//#define I2CPE_ENC_1_INVERT // Invert the direction of axis travel.
|
|
|
|
|
|
|
|
#define I2CPE_ENC_1_EC_METHOD I2CPE_ECM_NONE // Type of error error correction.
|
|
|
|
|
|
|
|
#define I2CPE_ENC_1_EC_THRESH 0.10 // Threshold size for error (in mm) above which the
|
|
|
|
|
|
|
|
// printer will attempt to correct the error; errors
|
|
|
|
|
|
|
|
// smaller than this are ignored to minimize effects of
|
|
|
|
|
|
|
|
// measurement noise / latency (filter).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define I2CPE_ENC_2_ADDR I2CPE_PRESET_ADDR_Y // Same as above, but for encoder 2.
|
|
|
|
|
|
|
|
#define I2CPE_ENC_2_AXIS Y_AXIS
|
|
|
|
|
|
|
|
#define I2CPE_ENC_2_TYPE I2CPE_ENC_TYPE_LINEAR
|
|
|
|
|
|
|
|
#define I2CPE_ENC_2_TICKS_UNIT 2048
|
|
|
|
|
|
|
|
//#define I2CPE_ENC_2_TICKS_REV (16 * 200)
|
|
|
|
|
|
|
|
//#define I2CPE_ENC_2_INVERT
|
|
|
|
|
|
|
|
#define I2CPE_ENC_2_EC_METHOD I2CPE_ECM_NONE
|
|
|
|
|
|
|
|
#define I2CPE_ENC_2_EC_THRESH 0.10
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define I2CPE_ENC_3_ADDR I2CPE_PRESET_ADDR_Z // Encoder 3. Add additional configuration options
|
|
|
|
|
|
|
|
#define I2CPE_ENC_3_AXIS Z_AXIS // as above, or use defaults below.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define I2CPE_ENC_4_ADDR I2CPE_PRESET_ADDR_E // Encoder 4.
|
|
|
|
|
|
|
|
#define I2CPE_ENC_4_AXIS E_AXIS
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define I2CPE_ENC_5_ADDR 34 // Encoder 5.
|
|
|
|
|
|
|
|
#define I2CPE_ENC_5_AXIS E_AXIS
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Default settings for encoders which are enabled, but without settings configured above.
|
|
|
|
|
|
|
|
#define I2CPE_DEF_TYPE I2CPE_ENC_TYPE_LINEAR
|
|
|
|
|
|
|
|
#define I2CPE_DEF_ENC_TICKS_UNIT 2048
|
|
|
|
|
|
|
|
#define I2CPE_DEF_TICKS_REV (16 * 200)
|
|
|
|
|
|
|
|
#define I2CPE_DEF_EC_METHOD I2CPE_ECM_NONE
|
|
|
|
|
|
|
|
#define I2CPE_DEF_EC_THRESH 0.1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//#define I2CPE_ERR_THRESH_ABORT 100.0 // Threshold size for error (in mm) error on any given
|
|
|
|
|
|
|
|
// axis after which the printer will abort. Comment out to
|
|
|
|
|
|
|
|
// disable abort behaviour.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define I2CPE_TIME_TRUSTED 10000 // After an encoder fault, there must be no further fault
|
|
|
|
|
|
|
|
// for this amount of time (in ms) before the encoder
|
|
|
|
|
|
|
|
// is trusted again.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* Position is checked every time a new command is executed from the buffer but during long moves,
|
|
|
|
|
|
|
|
* this setting determines the minimum update time between checks. A value of 100 works well with
|
|
|
|
|
|
|
|
* error rolling average when attempting to correct only for skips and not for vibration.
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
#define I2CPE_MIN_UPD_TIME_MS 100 // Minimum time in miliseconds between encoder checks.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Use a rolling average to identify persistant errors that indicate skips, as opposed to vibration and noise.
|
|
|
|
|
|
|
|
#define I2CPE_ERR_ROLLING_AVERAGE
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#endif // I2C_POSITION_ENCODERS
|
|
|
|
|
|
|
|
|
|
|
|
#endif // CONFIGURATION_ADV_H
|
|
|
|
#endif // CONFIGURATION_ADV_H
|
|
|
|