|
|
|
@ -596,6 +596,10 @@
|
|
|
|
|
* point in the file.
|
|
|
|
|
*/
|
|
|
|
|
//#define POWER_LOSS_RECOVERY
|
|
|
|
|
#if ENABLED(POWER_LOSS_RECOVERY)
|
|
|
|
|
//#define POWER_LOSS_PIN 44 // Pin to detect power loss
|
|
|
|
|
//#define POWER_LOSS_STATE HIGH // State of pin indicating power loss
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Sort SD file listings in alphabetical order.
|
|
|
|
@ -840,13 +844,16 @@
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Minimum delay after setting the stepper DIR (in ns)
|
|
|
|
|
* 0 : No delay (Expect at least 10µS since one Stepper ISR must transpire)
|
|
|
|
|
* 20 : Minimum for TMC2xxx drivers
|
|
|
|
|
* 200 : Minimum for A4988 drivers
|
|
|
|
|
* 500 : Minimum for LV8729 drivers (guess, no info in datasheet)
|
|
|
|
|
* 650 : Minimum for DRV8825 drivers
|
|
|
|
|
* 1500 : Minimum for TB6600 drivers (guess, no info in datasheet)
|
|
|
|
|
*15000 : Minimum for TB6560 drivers (guess, no info in datasheet)
|
|
|
|
|
* 0 : No delay (Expect at least 10µS since one Stepper ISR must transpire)
|
|
|
|
|
* 20 : Minimum for TMC2xxx drivers
|
|
|
|
|
* 200 : Minimum for A4988 drivers
|
|
|
|
|
* 400 : Minimum for A5984 drivers
|
|
|
|
|
* 500 : Minimum for LV8729 drivers (guess, no info in datasheet)
|
|
|
|
|
* 650 : Minimum for DRV8825 drivers
|
|
|
|
|
* 1500 : Minimum for TB6600 drivers (guess, no info in datasheet)
|
|
|
|
|
* 15000 : Minimum for TB6560 drivers (guess, no info in datasheet)
|
|
|
|
|
*
|
|
|
|
|
* Override the default value based on the driver type set in Configuration.h.
|
|
|
|
|
*/
|
|
|
|
|
#define MINIMUM_STEPPER_DIR_DELAY 0
|
|
|
|
|
|
|
|
|
@ -857,6 +864,8 @@
|
|
|
|
|
* 2 : Minimum for DRV8825 stepper drivers
|
|
|
|
|
* 3 : Minimum for TB6600 stepper drivers
|
|
|
|
|
* 30 : Minimum for TB6560 stepper drivers
|
|
|
|
|
*
|
|
|
|
|
* Override the default value based on the driver type set in Configuration.h.
|
|
|
|
|
*/
|
|
|
|
|
#define MINIMUM_STEPPER_PULSE 2
|
|
|
|
|
|
|
|
|
@ -869,6 +878,8 @@
|
|
|
|
|
* 150000 : Maximum for TB6600 stepper driver
|
|
|
|
|
* 130000 : Maximum for LV8729 stepper driver
|
|
|
|
|
* 15000 : Maximum for TB6560 stepper driver
|
|
|
|
|
*
|
|
|
|
|
* Override the default value based on the driver type set in Configuration.h.
|
|
|
|
|
*/
|
|
|
|
|
#define MAXIMUM_STEPPER_RATE 250000
|
|
|
|
|
|
|
|
|
@ -1038,23 +1049,12 @@
|
|
|
|
|
// @section tmc
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Enable this section if you have TMC26X motor drivers.
|
|
|
|
|
* You will need to import the TMC26XStepper library into the Arduino IDE for this
|
|
|
|
|
* (https://github.com/trinamic/TMC26XStepper.git)
|
|
|
|
|
* TMC26X Stepper Driver options
|
|
|
|
|
*
|
|
|
|
|
* The TMC26XStepper library is required for this stepper driver.
|
|
|
|
|
* https://github.com/trinamic/TMC26XStepper
|
|
|
|
|
*/
|
|
|
|
|
//#define HAVE_TMC26X
|
|
|
|
|
#if ENABLED(HAVE_TMC26X) // Choose your axes here. This is mandatory!
|
|
|
|
|
//#define X_IS_TMC26X
|
|
|
|
|
//#define X2_IS_TMC26X
|
|
|
|
|
//#define Y_IS_TMC26X
|
|
|
|
|
//#define Y2_IS_TMC26X
|
|
|
|
|
//#define Z_IS_TMC26X
|
|
|
|
|
//#define Z2_IS_TMC26X
|
|
|
|
|
//#define E0_IS_TMC26X
|
|
|
|
|
//#define E1_IS_TMC26X
|
|
|
|
|
//#define E2_IS_TMC26X
|
|
|
|
|
//#define E3_IS_TMC26X
|
|
|
|
|
//#define E4_IS_TMC26X
|
|
|
|
|
#if HAS_DRIVER(TMC26X)
|
|
|
|
|
|
|
|
|
|
#define X_MAX_CURRENT 1000 // in mA
|
|
|
|
|
#define X_SENSE_RESISTOR 91 // in mOhms
|
|
|
|
@ -1100,62 +1100,29 @@
|
|
|
|
|
#define E4_SENSE_RESISTOR 91
|
|
|
|
|
#define E4_MICROSTEPS 16
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
#endif // TMC26X
|
|
|
|
|
|
|
|
|
|
// @section tmc_smart
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Enable this for SilentStepStick Trinamic TMC2130 SPI-configurable stepper drivers.
|
|
|
|
|
*
|
|
|
|
|
* You'll also need the TMC2130Stepper Arduino library
|
|
|
|
|
* (https://github.com/teemuatlut/TMC2130Stepper).
|
|
|
|
|
*
|
|
|
|
|
* To use TMC2130 stepper drivers in SPI mode connect your SPI pins to
|
|
|
|
|
* the hardware SPI interface on your board and define the required CS pins
|
|
|
|
|
* in your `pins_MYBOARD.h` file. (e.g., RAMPS 1.4 uses AUX3 pins `X_CS_PIN 53`, `Y_CS_PIN 49`, etc.).
|
|
|
|
|
* You may also use software SPI if you wish to use general purpose IO pins.
|
|
|
|
|
*/
|
|
|
|
|
//#define HAVE_TMC2130
|
|
|
|
|
#if ENABLED(HAVE_TMC2130) // Choose your axes here. This is mandatory!
|
|
|
|
|
//#define X_IS_TMC2130
|
|
|
|
|
//#define X2_IS_TMC2130
|
|
|
|
|
//#define Y_IS_TMC2130
|
|
|
|
|
//#define Y2_IS_TMC2130
|
|
|
|
|
//#define Z_IS_TMC2130
|
|
|
|
|
//#define Z2_IS_TMC2130
|
|
|
|
|
//#define E0_IS_TMC2130
|
|
|
|
|
//#define E1_IS_TMC2130
|
|
|
|
|
//#define E2_IS_TMC2130
|
|
|
|
|
//#define E3_IS_TMC2130
|
|
|
|
|
//#define E4_IS_TMC2130
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Enable this for SilentStepStick Trinamic TMC2208 UART-configurable stepper drivers.
|
|
|
|
|
* Connect #_SERIAL_TX_PIN to the driver side PDN_UART pin with a 1K resistor.
|
|
|
|
|
*
|
|
|
|
|
* The TMC2130Stepper library is required for this stepper driver.
|
|
|
|
|
* https://github.com/teemuatlut/TMC2130Stepper
|
|
|
|
|
*
|
|
|
|
|
* To use TMC2208 stepper UART-configurable stepper drivers
|
|
|
|
|
* connect #_SERIAL_TX_PIN to the driver side PDN_UART pin with a 1K resistor.
|
|
|
|
|
* To use the reading capabilities, also connect #_SERIAL_RX_PIN
|
|
|
|
|
* to PDN_UART without a resistor.
|
|
|
|
|
* The drivers can also be used with hardware serial.
|
|
|
|
|
*
|
|
|
|
|
* You'll also need the TMC2208Stepper Arduino library
|
|
|
|
|
* (https://github.com/teemuatlut/TMC2208Stepper).
|
|
|
|
|
* The TMC2208Stepper library is required for this stepper driver.
|
|
|
|
|
* https://github.com/teemuatlut/TMC2208Stepper
|
|
|
|
|
*/
|
|
|
|
|
//#define HAVE_TMC2208
|
|
|
|
|
#if ENABLED(HAVE_TMC2208) // Choose your axes here. This is mandatory!
|
|
|
|
|
//#define X_IS_TMC2208
|
|
|
|
|
//#define X2_IS_TMC2208
|
|
|
|
|
//#define Y_IS_TMC2208
|
|
|
|
|
//#define Y2_IS_TMC2208
|
|
|
|
|
//#define Z_IS_TMC2208
|
|
|
|
|
//#define Z2_IS_TMC2208
|
|
|
|
|
//#define E0_IS_TMC2208
|
|
|
|
|
//#define E1_IS_TMC2208
|
|
|
|
|
//#define E2_IS_TMC2208
|
|
|
|
|
//#define E3_IS_TMC2208
|
|
|
|
|
//#define E4_IS_TMC2208
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if ENABLED(HAVE_TMC2130) || ENABLED(HAVE_TMC2208)
|
|
|
|
|
#if HAS_TRINAMIC
|
|
|
|
|
|
|
|
|
|
#define R_SENSE 0.11 // R_sense resistor for SilentStepStick2130
|
|
|
|
|
#define HOLD_MULTIPLIER 0.5 // Scales down the holding current from run current
|
|
|
|
@ -1310,25 +1277,12 @@
|
|
|
|
|
// @section L6470
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Enable this section if you have L6470 motor drivers.
|
|
|
|
|
* You need to import the L6470 library into the Arduino IDE for this.
|
|
|
|
|
* (https://github.com/ameyer/Arduino-L6470)
|
|
|
|
|
* L6470 Stepper Driver options
|
|
|
|
|
*
|
|
|
|
|
* The Arduino-L6470 library is required for this stepper driver.
|
|
|
|
|
* https://github.com/ameyer/Arduino-L6470
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
//#define HAVE_L6470DRIVER
|
|
|
|
|
#if ENABLED(HAVE_L6470DRIVER)
|
|
|
|
|
|
|
|
|
|
//#define X_IS_L6470
|
|
|
|
|
//#define X2_IS_L6470
|
|
|
|
|
//#define Y_IS_L6470
|
|
|
|
|
//#define Y2_IS_L6470
|
|
|
|
|
//#define Z_IS_L6470
|
|
|
|
|
//#define Z2_IS_L6470
|
|
|
|
|
//#define E0_IS_L6470
|
|
|
|
|
//#define E1_IS_L6470
|
|
|
|
|
//#define E2_IS_L6470
|
|
|
|
|
//#define E3_IS_L6470
|
|
|
|
|
//#define E4_IS_L6470
|
|
|
|
|
#if HAS_DRIVER(L6470)
|
|
|
|
|
|
|
|
|
|
#define X_MICROSTEPS 16 // number of microsteps
|
|
|
|
|
#define X_OVERCURRENT 2000 // maxc current in mA. If the current goes over this value, the driver will switch off
|
|
|
|
@ -1374,7 +1328,7 @@
|
|
|
|
|
#define E4_OVERCURRENT 2000
|
|
|
|
|
#define E4_STALLCURRENT 1500
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
#endif // L6470
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* TWI/I2C BUS
|
|
|
|
|