Merge pull request #11361 from thinkyhead/bf1_define_drivers_th
[1.1.x] Configure stepper drivers per axis
This commit is contained in:
10
.travis.yml
10
.travis.yml
@@ -359,14 +359,20 @@ script:
|
||||
#
|
||||
- use_example_configs SCARA
|
||||
- opt_enable AUTO_BED_LEVELING_BILINEAR FIX_MOUNTED_PROBE USE_ZMIN_PLUG EEPROM_SETTINGS EEPROM_CHITCHAT ULTIMAKERCONTROLLER
|
||||
- opt_enable_adv HAVE_TMC2130 X_IS_TMC2130 Y_IS_TMC2130 Z_IS_TMC2130
|
||||
- opt_set X_DRIVER_TYPE TMC2130
|
||||
- opt_set Y_DRIVER_TYPE TMC2130
|
||||
- opt_set Z_DRIVER_TYPE TMC2130
|
||||
- opt_set E0_DRIVER_TYPE TMC2130
|
||||
- opt_enable_adv MONITOR_DRIVER_STATUS STEALTHCHOP HYBRID_THRESHOLD SENSORLESS_HOMING
|
||||
- build_marlin
|
||||
#
|
||||
# TMC2208 Config
|
||||
#
|
||||
- restore_configs
|
||||
- opt_enable_adv HAVE_TMC2208 X_IS_TMC2208 Y_IS_TMC2208 Z_IS_TMC2208
|
||||
- opt_set X_DRIVER_TYPE TMC2208
|
||||
- opt_set Y_DRIVER_TYPE TMC2208
|
||||
- opt_set Z_DRIVER_TYPE TMC2208
|
||||
- opt_set E0_DRIVER_TYPE TMC2208
|
||||
- opt_enable_adv MONITOR_DRIVER_STATUS STEALTHCHOP HYBRID_THRESHOLD TMC_DEBUG
|
||||
- build_marlin
|
||||
#
|
||||
|
@@ -400,6 +400,63 @@
|
||||
#define ARRAY_BY_HOTENDS(...) ARRAY_N(HOTENDS, __VA_ARGS__)
|
||||
#define ARRAY_BY_HOTENDS1(v1) ARRAY_BY_HOTENDS(v1, v1, v1, v1, v1, v1)
|
||||
|
||||
/**
|
||||
* Driver Timings
|
||||
* NOTE: Driver timing order is longest-to-shortest duration.
|
||||
* Preserve this ordering when adding new drivers.
|
||||
*/
|
||||
#ifndef MINIMUM_STEPPER_DIR_DELAY
|
||||
#if HAS_DRIVER(TB6560)
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 15000
|
||||
#elif HAS_DRIVER(TB6600)
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 1500
|
||||
#elif HAS_DRIVER(DRV8825)
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
#elif HAS_DRIVER(LV8729)
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 500
|
||||
#elif HAS_DRIVER(A4988)
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 200
|
||||
#elif HAS_TRINAMIC || HAS_DRIVER(TMC2130_STANDALONE) || HAS_DRIVER(TMC2208_STANDALONE) || HAS_DRIVER(TMC26X_STANDALONE) || HAS_DRIVER(TMC2660_STANDALONE)
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 20
|
||||
#else
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0 // Expect at least 10µS since one Stepper ISR must transpire
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef MINIMUM_STEPPER_PULSE
|
||||
#if HAS_DRIVER(TB6560)
|
||||
#define MINIMUM_STEPPER_PULSE 30
|
||||
#elif HAS_DRIVER(TB6600)
|
||||
#define MINIMUM_STEPPER_PULSE 3
|
||||
#elif HAS_DRIVER(DRV8825)
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
#elif HAS_DRIVER(A4988) || HAS_DRIVER(LV8729)
|
||||
#define MINIMUM_STEPPER_PULSE 1
|
||||
#elif HAS_TRINAMIC || HAS_DRIVER(TMC2130_STANDALONE) || HAS_DRIVER(TMC2208_STANDALONE) || HAS_DRIVER(TMC26X_STANDALONE) || HAS_DRIVER(TMC2660_STANDALONE)
|
||||
#define MINIMUM_STEPPER_PULSE 0
|
||||
#else
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef MAXIMUM_STEPPER_RATE
|
||||
#if HAS_DRIVER(TB6560)
|
||||
#define MAXIMUM_STEPPER_RATE 15000
|
||||
#elif HAS_DRIVER(LV8729)
|
||||
#define MAXIMUM_STEPPER_RATE 130000
|
||||
#elif HAS_DRIVER(TB6600)
|
||||
#define MAXIMUM_STEPPER_RATE 150000
|
||||
#elif HAS_DRIVER(DRV8825)
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
#elif HAS_TRINAMIC || HAS_DRIVER(TMC2130_STANDALONE) || HAS_DRIVER(TMC2208_STANDALONE) || HAS_DRIVER(TMC26X_STANDALONE) || HAS_DRIVER(TMC2660_STANDALONE)
|
||||
#define MAXIMUM_STEPPER_RATE 400000
|
||||
#elif HAS_DRIVER(A4988)
|
||||
#define MAXIMUM_STEPPER_RATE 500000
|
||||
#else
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/**
|
||||
* X_DUAL_ENDSTOPS endstop reassignment
|
||||
*/
|
||||
@@ -661,27 +718,19 @@
|
||||
#define HAS_SOLENOID_4 (PIN_EXISTS(SOL4))
|
||||
|
||||
// Trinamic Stepper Drivers
|
||||
#define HAS_TRINAMIC (ENABLED(HAVE_TMC2130) || ENABLED(HAVE_TMC2208) || ENABLED(IS_TRAMS))
|
||||
#define X_IS_TRINAMIC (ENABLED( X_IS_TMC2130) || ENABLED( X_IS_TMC2208) || ENABLED(IS_TRAMS))
|
||||
#define X2_IS_TRINAMIC (ENABLED(X2_IS_TMC2130) || ENABLED(X2_IS_TMC2208))
|
||||
#define Y_IS_TRINAMIC (ENABLED( Y_IS_TMC2130) || ENABLED( Y_IS_TMC2208) || ENABLED(IS_TRAMS))
|
||||
#define Y2_IS_TRINAMIC (ENABLED(Y2_IS_TMC2130) || ENABLED(Y2_IS_TMC2208))
|
||||
#define Z_IS_TRINAMIC (ENABLED( Z_IS_TMC2130) || ENABLED( Z_IS_TMC2208) || ENABLED(IS_TRAMS))
|
||||
#define Z2_IS_TRINAMIC (ENABLED(Z2_IS_TMC2130) || ENABLED(Z2_IS_TMC2208))
|
||||
#define E0_IS_TRINAMIC (ENABLED(E0_IS_TMC2130) || ENABLED(E0_IS_TMC2208) || ENABLED(IS_TRAMS))
|
||||
#define E1_IS_TRINAMIC (ENABLED(E1_IS_TMC2130) || ENABLED(E1_IS_TMC2208))
|
||||
#define E2_IS_TRINAMIC (ENABLED(E2_IS_TMC2130) || ENABLED(E2_IS_TMC2208))
|
||||
#define E3_IS_TRINAMIC (ENABLED(E3_IS_TMC2130) || ENABLED(E3_IS_TMC2208))
|
||||
#define E4_IS_TRINAMIC (ENABLED(E4_IS_TMC2130) || ENABLED(E4_IS_TMC2208))
|
||||
#define HAS_STEALTHCHOP (HAS_DRIVER(TMC2130) || HAS_DRIVER(TMC2208))
|
||||
#define HAS_STALLGUARD (HAS_DRIVER(TMC2130) || HAS_DRIVER(TMC2660))
|
||||
#define AXIS_HAS_STEALTHCHOP(ST) ( AXIS_DRIVER_TYPE(ST, TMC2130) || AXIS_DRIVER_TYPE(ST, TMC2208) )
|
||||
#define AXIS_HAS_STALLGUARD(ST) ( AXIS_DRIVER_TYPE(ST, TMC2130) || AXIS_DRIVER_TYPE(ST, TMC2660) )
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
// Disable Z axis sensorless homing if a probe is used to home the Z axis
|
||||
#if HOMING_Z_WITH_PROBE
|
||||
#undef Z_HOMING_SENSITIVITY
|
||||
#endif
|
||||
#define X_SENSORLESS (ENABLED(X_IS_TMC2130) && defined(X_HOMING_SENSITIVITY))
|
||||
#define Y_SENSORLESS (ENABLED(Y_IS_TMC2130) && defined(Y_HOMING_SENSITIVITY))
|
||||
#define Z_SENSORLESS (ENABLED(Z_IS_TMC2130) && defined(Z_HOMING_SENSITIVITY))
|
||||
#define X_SENSORLESS (AXIS_HAS_STALLGUARD(X) && defined(X_HOMING_SENSITIVITY))
|
||||
#define Y_SENSORLESS (AXIS_HAS_STALLGUARD(Y) && defined(Y_HOMING_SENSITIVITY))
|
||||
#define Z_SENSORLESS (AXIS_HAS_STALLGUARD(Z) && defined(Z_HOMING_SENSITIVITY))
|
||||
#endif
|
||||
|
||||
// Endstops and bed probe
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,17 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -831,8 +833,10 @@
|
||||
* 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
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -843,8 +847,10 @@
|
||||
* 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
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1018,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
|
||||
@@ -1074,39 +1069,21 @@
|
||||
#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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1091,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1246,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
|
||||
@@ -1348,7 +1297,7 @@
|
||||
#define E4_OVERCURRENT 2000
|
||||
#define E4_STALLCURRENT 1500
|
||||
|
||||
#endif
|
||||
#endif // L6470
|
||||
|
||||
/**
|
||||
* TWI/I2C BUS
|
||||
|
@@ -25,6 +25,7 @@
|
||||
|
||||
#include "boards.h"
|
||||
#include "macros.h"
|
||||
#include "drivers.h"
|
||||
#include "Version.h"
|
||||
#include "Configuration.h"
|
||||
#include "Conditionals_LCD.h"
|
||||
|
@@ -136,7 +136,7 @@
|
||||
* M119 - Report endstops status.
|
||||
* M120 - Enable endstops detection.
|
||||
* M121 - Disable endstops detection.
|
||||
* M122 - Debug stepper (Requires HAVE_TMC2130 or HAVE_TMC2208)
|
||||
* M122 - Debug stepper (Requires at least one _DRIVER_TYPE defined as TMC2130/TMC2208/TMC2660)
|
||||
* M125 - Save current position and move to filament change position. (Requires PARK_HEAD_ON_PAUSE)
|
||||
* M126 - Solenoid Air Valve Open. (Requires BARICUDA)
|
||||
* M127 - Solenoid Air Valve Closed. (Requires BARICUDA)
|
||||
@@ -223,13 +223,13 @@
|
||||
* M868 - Report or set position encoder module error correction threshold.
|
||||
* M869 - Report position encoder module error.
|
||||
* M900 - Get or Set Linear Advance K-factor. (Requires LIN_ADVANCE)
|
||||
* M906 - Set or get motor current in milliamps using axis codes X, Y, Z, E. Report values if no axis codes given. (Requires HAVE_TMC2130 or HAVE_TMC2208)
|
||||
* M906 - Set or get motor current in milliamps using axis codes X, Y, Z, E. Report values if no axis codes given. (Requires at least one _DRIVER_TYPE defined as TMC2130/TMC2208/TMC2660)
|
||||
* M907 - Set digital trimpot motor current using axis codes. (Requires a board with digital trimpots)
|
||||
* M908 - Control digital trimpot directly. (Requires DAC_STEPPER_CURRENT or DIGIPOTSS_PIN)
|
||||
* M909 - Print digipot/DAC current value. (Requires DAC_STEPPER_CURRENT)
|
||||
* M910 - Commit digipot/DAC value to external EEPROM via I2C. (Requires DAC_STEPPER_CURRENT)
|
||||
* M911 - Report stepper driver overtemperature pre-warn condition. (Requires HAVE_TMC2130 or HAVE_TMC2208)
|
||||
* M912 - Clear stepper driver overtemperature pre-warn condition flag. (Requires HAVE_TMC2130 or HAVE_TMC2208)
|
||||
* M911 - Report stepper driver overtemperature pre-warn condition. (Requires at least one _DRIVER_TYPE defined as TMC2130/TMC2208/TMC2660)
|
||||
* M912 - Clear stepper driver overtemperature pre-warn condition flag. (Requires at least one _DRIVER_TYPE defined as TMC2130/TMC2208/TMC2660)
|
||||
* M913 - Set HYBRID_THRESHOLD speed. (Requires HYBRID_THRESHOLD)
|
||||
* M914 - Set SENSORLESS_HOMING sensitivity. (Requires SENSORLESS_HOMING)
|
||||
*
|
||||
@@ -10988,45 +10988,45 @@ inline void gcode_M502() {
|
||||
report = false;
|
||||
switch (i) {
|
||||
case X_AXIS:
|
||||
#if X_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X)
|
||||
if (index < 2) TMC_SET_CURRENT(X);
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X2)
|
||||
if (!(index & 1)) TMC_SET_CURRENT(X2);
|
||||
#endif
|
||||
break;
|
||||
case Y_AXIS:
|
||||
#if Y_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Y)
|
||||
if (index < 2) TMC_SET_CURRENT(Y);
|
||||
#endif
|
||||
#if Y2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Y2)
|
||||
if (!(index & 1)) TMC_SET_CURRENT(Y2);
|
||||
#endif
|
||||
break;
|
||||
case Z_AXIS:
|
||||
#if Z_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z)
|
||||
if (index < 2) TMC_SET_CURRENT(Z);
|
||||
#endif
|
||||
#if Z2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z2)
|
||||
if (!(index & 1)) TMC_SET_CURRENT(Z2);
|
||||
#endif
|
||||
break;
|
||||
case E_AXIS: {
|
||||
if (get_target_extruder_from_command(906)) return;
|
||||
switch (target_extruder) {
|
||||
#if E0_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E0)
|
||||
case 0: TMC_SET_CURRENT(E0); break;
|
||||
#endif
|
||||
#if E1_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E1)
|
||||
case 1: TMC_SET_CURRENT(E1); break;
|
||||
#endif
|
||||
#if E2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E2)
|
||||
case 2: TMC_SET_CURRENT(E2); break;
|
||||
#endif
|
||||
#if E3_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E3)
|
||||
case 3: TMC_SET_CURRENT(E3); break;
|
||||
#endif
|
||||
#if E4_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E4)
|
||||
case 4: TMC_SET_CURRENT(E4); break;
|
||||
#endif
|
||||
}
|
||||
@@ -11035,73 +11035,69 @@ inline void gcode_M502() {
|
||||
}
|
||||
|
||||
if (report) {
|
||||
#if X_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X)
|
||||
TMC_SAY_CURRENT(X);
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X2)
|
||||
TMC_SAY_CURRENT(X2);
|
||||
#endif
|
||||
#if Y_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Y)
|
||||
TMC_SAY_CURRENT(Y);
|
||||
#endif
|
||||
#if Y2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Y2)
|
||||
TMC_SAY_CURRENT(Y2);
|
||||
#endif
|
||||
#if Z_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z)
|
||||
TMC_SAY_CURRENT(Z);
|
||||
#endif
|
||||
#if Z2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z2)
|
||||
TMC_SAY_CURRENT(Z2);
|
||||
#endif
|
||||
#if E0_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E0)
|
||||
TMC_SAY_CURRENT(E0);
|
||||
#endif
|
||||
#if E1_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E1)
|
||||
TMC_SAY_CURRENT(E1);
|
||||
#endif
|
||||
#if E2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E2)
|
||||
TMC_SAY_CURRENT(E2);
|
||||
#endif
|
||||
#if E3_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E3)
|
||||
TMC_SAY_CURRENT(E3);
|
||||
#endif
|
||||
#if E4_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E4)
|
||||
TMC_SAY_CURRENT(E4);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
#define M91x_USE(A) (ENABLED(A##_IS_TMC2130) || (ENABLED(A##_IS_TMC2208) && PIN_EXISTS(A##_SERIAL_RX)))
|
||||
#define M91x_USE(ST) (AXIS_DRIVER_TYPE(ST, TMC2130) || (AXIS_DRIVER_TYPE(ST, TMC2208) && PIN_EXISTS(ST##_SERIAL_RX)))
|
||||
#define M91x_USE_E(N) (E_STEPPERS > N && M91x_USE(E##N))
|
||||
#define M91x_USE_X (ENABLED(IS_TRAMS) || M91x_USE(X))
|
||||
#define M91x_USE_Y (ENABLED(IS_TRAMS) || M91x_USE(Y))
|
||||
#define M91x_USE_Z (ENABLED(IS_TRAMS) || M91x_USE(Z))
|
||||
#define M91x_USE_E0 (ENABLED(IS_TRAMS) || M91x_USE_E(0))
|
||||
|
||||
/**
|
||||
* M911: Report TMC stepper driver overtemperature pre-warn flag
|
||||
* This flag is held by the library, persisting until cleared by M912
|
||||
*/
|
||||
inline void gcode_M911() {
|
||||
#if M91x_USE_X
|
||||
#if M91x_USE(X)
|
||||
tmc_report_otpw(stepperX, TMC_X);
|
||||
#endif
|
||||
#if M91x_USE(X2)
|
||||
tmc_report_otpw(stepperX2, TMC_X2);
|
||||
#endif
|
||||
#if M91x_USE_Y
|
||||
#if M91x_USE(Y)
|
||||
tmc_report_otpw(stepperY, TMC_Y);
|
||||
#endif
|
||||
#if M91x_USE(Y2)
|
||||
tmc_report_otpw(stepperY2, TMC_Y2);
|
||||
#endif
|
||||
#if M91x_USE_Z
|
||||
#if M91x_USE(Z)
|
||||
tmc_report_otpw(stepperZ, TMC_Z);
|
||||
#endif
|
||||
#if M91x_USE(Z2)
|
||||
tmc_report_otpw(stepperZ2, TMC_Z2);
|
||||
#endif
|
||||
#if M91x_USE_E0
|
||||
#if M91x_USE_E(0)
|
||||
tmc_report_otpw(stepperE0, TMC_E0);
|
||||
#endif
|
||||
#if M91x_USE_E(1)
|
||||
@@ -11137,9 +11133,9 @@ inline void gcode_M502() {
|
||||
hasE = parser.seen(axis_codes[E_AXIS]),
|
||||
hasNone = !hasX && !hasY && !hasZ && !hasE;
|
||||
|
||||
#if M91x_USE_X || M91x_USE(X2)
|
||||
#if M91x_USE(X) || M91x_USE(X2)
|
||||
const uint8_t xval = parser.byteval(axis_codes[X_AXIS], 10);
|
||||
#if M91x_USE_X
|
||||
#if M91x_USE(X)
|
||||
if (hasNone || xval == 1 || (hasX && xval == 10)) tmc_clear_otpw(stepperX, TMC_X);
|
||||
#endif
|
||||
#if M91x_USE(X2)
|
||||
@@ -11147,9 +11143,9 @@ inline void gcode_M502() {
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if M91x_USE_Y || M91x_USE(Y2)
|
||||
#if M91x_USE(Y) || M91x_USE(Y2)
|
||||
const uint8_t yval = parser.byteval(axis_codes[Y_AXIS], 10);
|
||||
#if M91x_USE_Y
|
||||
#if M91x_USE(Y)
|
||||
if (hasNone || yval == 1 || (hasY && yval == 10)) tmc_clear_otpw(stepperY, TMC_Y);
|
||||
#endif
|
||||
#if M91x_USE(Y2)
|
||||
@@ -11157,9 +11153,9 @@ inline void gcode_M502() {
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if M91x_USE_Z || M91x_USE(Z2)
|
||||
#if M91x_USE(Z) || M91x_USE(Z2)
|
||||
const uint8_t zval = parser.byteval(axis_codes[Z_AXIS], 10);
|
||||
#if M91x_USE_Z
|
||||
#if M91x_USE(Z)
|
||||
if (hasNone || zval == 1 || (hasZ && zval == 10)) tmc_clear_otpw(stepperZ, TMC_Z);
|
||||
#endif
|
||||
#if M91x_USE(Z2)
|
||||
@@ -11167,9 +11163,9 @@ inline void gcode_M502() {
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if M91x_USE_E0 || M91x_USE_E(1) || M91x_USE_E(2) || M91x_USE_E(3) || M91x_USE_E(4)
|
||||
#if M91x_USE_E(0) || M91x_USE_E(1) || M91x_USE_E(2) || M91x_USE_E(3) || M91x_USE_E(4)
|
||||
const uint8_t eval = parser.byteval(axis_codes[E_AXIS], 10);
|
||||
#if M91x_USE_E0
|
||||
#if M91x_USE_E(0)
|
||||
if (hasNone || eval == 0 || (hasE && eval == 10)) tmc_clear_otpw(stepperE0, TMC_E0);
|
||||
#endif
|
||||
#if M91x_USE_E(1)
|
||||
@@ -11203,45 +11199,45 @@ inline void gcode_M502() {
|
||||
report = false;
|
||||
switch (i) {
|
||||
case X_AXIS:
|
||||
#if X_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(X)
|
||||
if (index < 2) TMC_SET_PWMTHRS(X,X);
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(X2)
|
||||
if (!(index & 1)) TMC_SET_PWMTHRS(X,X2);
|
||||
#endif
|
||||
break;
|
||||
case Y_AXIS:
|
||||
#if Y_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Y)
|
||||
if (index < 2) TMC_SET_PWMTHRS(Y,Y);
|
||||
#endif
|
||||
#if Y2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Y2)
|
||||
if (!(index & 1)) TMC_SET_PWMTHRS(Y,Y2);
|
||||
#endif
|
||||
break;
|
||||
case Z_AXIS:
|
||||
#if Z_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Z)
|
||||
if (index < 2) TMC_SET_PWMTHRS(Z,Z);
|
||||
#endif
|
||||
#if Z2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Z2)
|
||||
if (!(index & 1)) TMC_SET_PWMTHRS(Z,Z2);
|
||||
#endif
|
||||
break;
|
||||
case E_AXIS: {
|
||||
if (get_target_extruder_from_command(913)) return;
|
||||
switch (target_extruder) {
|
||||
#if E0_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(E0)
|
||||
case 0: TMC_SET_PWMTHRS_E(0); break;
|
||||
#endif
|
||||
#if E_STEPPERS > 1 && E1_IS_TRINAMIC
|
||||
#if E_STEPPERS > 1 && AXIS_HAS_STEALTHCHOP(E1)
|
||||
case 1: TMC_SET_PWMTHRS_E(1); break;
|
||||
#endif
|
||||
#if E_STEPPERS > 2 && E2_IS_TRINAMIC
|
||||
#if E_STEPPERS > 2 && AXIS_HAS_STEALTHCHOP(E2)
|
||||
case 2: TMC_SET_PWMTHRS_E(2); break;
|
||||
#endif
|
||||
#if E_STEPPERS > 3 && E3_IS_TRINAMIC
|
||||
#if E_STEPPERS > 3 && AXIS_HAS_STEALTHCHOP(E3)
|
||||
case 3: TMC_SET_PWMTHRS_E(3); break;
|
||||
#endif
|
||||
#if E_STEPPERS > 4 && E4_IS_TRINAMIC
|
||||
#if E_STEPPERS > 4 && AXIS_HAS_STEALTHCHOP(E4)
|
||||
case 4: TMC_SET_PWMTHRS_E(4); break;
|
||||
#endif
|
||||
}
|
||||
@@ -11250,37 +11246,37 @@ inline void gcode_M502() {
|
||||
}
|
||||
|
||||
if (report) {
|
||||
#if X_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(X)
|
||||
TMC_SAY_PWMTHRS(X,X);
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(X2)
|
||||
TMC_SAY_PWMTHRS(X,X2);
|
||||
#endif
|
||||
#if Y_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Y)
|
||||
TMC_SAY_PWMTHRS(Y,Y);
|
||||
#endif
|
||||
#if Y2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Y2)
|
||||
TMC_SAY_PWMTHRS(Y,Y2);
|
||||
#endif
|
||||
#if Z_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Z)
|
||||
TMC_SAY_PWMTHRS(Z,Z);
|
||||
#endif
|
||||
#if Z2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Z2)
|
||||
TMC_SAY_PWMTHRS(Z,Z2);
|
||||
#endif
|
||||
#if E0_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(E0)
|
||||
TMC_SAY_PWMTHRS_E(0);
|
||||
#endif
|
||||
#if E_STEPPERS > 1 && E1_IS_TRINAMIC
|
||||
#if E_STEPPERS > 1 && AXIS_HAS_STEALTHCHOP(E1)
|
||||
TMC_SAY_PWMTHRS_E(1);
|
||||
#endif
|
||||
#if E_STEPPERS > 2 && E2_IS_TRINAMIC
|
||||
#if E_STEPPERS > 2 && AXIS_HAS_STEALTHCHOP(E2)
|
||||
TMC_SAY_PWMTHRS_E(2);
|
||||
#endif
|
||||
#if E_STEPPERS > 3 && E3_IS_TRINAMIC
|
||||
#if E_STEPPERS > 3 && AXIS_HAS_STEALTHCHOP(E3)
|
||||
TMC_SAY_PWMTHRS_E(3);
|
||||
#endif
|
||||
#if E_STEPPERS > 4 && E4_IS_TRINAMIC
|
||||
#if E_STEPPERS > 4 && AXIS_HAS_STEALTHCHOP(E4)
|
||||
TMC_SAY_PWMTHRS_E(4);
|
||||
#endif
|
||||
}
|
||||
@@ -11303,30 +11299,30 @@ inline void gcode_M502() {
|
||||
switch (i) {
|
||||
#if X_SENSORLESS
|
||||
case X_AXIS:
|
||||
#if ENABLED(X_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
#if AXIS_HAS_STALLGUARD(X)
|
||||
if (index < 2) TMC_SET_SGT(X);
|
||||
#endif
|
||||
#if ENABLED(X2_IS_TMC2130)
|
||||
#if AXIS_HAS_STALLGUARD(X2)
|
||||
if (!(index & 1)) TMC_SET_SGT(X2);
|
||||
#endif
|
||||
break;
|
||||
#endif
|
||||
#if Y_SENSORLESS
|
||||
case Y_AXIS:
|
||||
#if ENABLED(Y_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
#if AXIS_HAS_STALLGUARD(Y)
|
||||
if (index < 2) TMC_SET_SGT(Y);
|
||||
#endif
|
||||
#if ENABLED(Y2_IS_TMC2130)
|
||||
#if AXIS_HAS_STALLGUARD(Y2)
|
||||
if (!(index & 1)) TMC_SET_SGT(Y2);
|
||||
#endif
|
||||
break;
|
||||
#endif
|
||||
#if Z_SENSORLESS
|
||||
case Z_AXIS:
|
||||
#if ENABLED(Z_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
#if AXIS_HAS_STALLGUARD(Z)
|
||||
if (index < 2) TMC_SET_SGT(Z);
|
||||
#endif
|
||||
#if ENABLED(Z2_IS_TMC2130)
|
||||
#if AXIS_HAS_STALLGUARD(Z2)
|
||||
if (!(index & 1)) TMC_SET_SGT(Z2);
|
||||
#endif
|
||||
break;
|
||||
@@ -11336,26 +11332,26 @@ inline void gcode_M502() {
|
||||
|
||||
if (report) {
|
||||
#if X_SENSORLESS
|
||||
#if ENABLED(X_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
#if AXIS_HAS_STALLGUARD(X)
|
||||
TMC_SAY_SGT(X);
|
||||
#endif
|
||||
#if ENABLED(X2_IS_TMC2130)
|
||||
#if AXIS_HAS_STALLGUARD(X2)
|
||||
TMC_SAY_SGT(X2);
|
||||
#endif
|
||||
#endif
|
||||
#if Y_SENSORLESS
|
||||
#if ENABLED(Y_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
#if AXIS_HAS_STALLGUARD(Y)
|
||||
TMC_SAY_SGT(Y);
|
||||
#endif
|
||||
#if ENABLED(Y2_IS_TMC2130)
|
||||
#if AXIS_HAS_STALLGUARD(Y2)
|
||||
TMC_SAY_SGT(Y2);
|
||||
#endif
|
||||
#endif
|
||||
#if Z_SENSORLESS
|
||||
#if ENABLED(Z_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
#if AXIS_HAS_STALLGUARD(Z)
|
||||
TMC_SAY_SGT(Z);
|
||||
#endif
|
||||
#if ENABLED(Z2_IS_TMC2130)
|
||||
#if AXIS_HAS_STALLGUARD(Z2)
|
||||
TMC_SAY_SGT(Z2);
|
||||
#endif
|
||||
#endif
|
||||
@@ -11376,11 +11372,11 @@ inline void gcode_M502() {
|
||||
return;
|
||||
}
|
||||
|
||||
#if Z_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z)
|
||||
const uint16_t Z_current_1 = stepperZ.getCurrent();
|
||||
stepperZ.setCurrent(_rms, R_SENSE, HOLD_MULTIPLIER);
|
||||
#endif
|
||||
#if Z2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z2)
|
||||
const uint16_t Z2_current_1 = stepperZ2.getCurrent();
|
||||
stepperZ2.setCurrent(_rms, R_SENSE, HOLD_MULTIPLIER);
|
||||
#endif
|
||||
@@ -11391,10 +11387,10 @@ inline void gcode_M502() {
|
||||
|
||||
do_blocking_move_to_z(Z_MAX_POS+_z);
|
||||
|
||||
#if Z_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z)
|
||||
stepperZ.setCurrent(Z_current_1, R_SENSE, HOLD_MULTIPLIER);
|
||||
#endif
|
||||
#if Z2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z2)
|
||||
stepperZ2.setCurrent(Z2_current_1, R_SENSE, HOLD_MULTIPLIER);
|
||||
#endif
|
||||
|
||||
@@ -12619,7 +12615,7 @@ void process_parsed_command() {
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if ENABLED(HAVE_TMC2130) || ENABLED(HAVE_TMC2208)
|
||||
#if HAS_DRIVER(TMC2130) || HAS_DRIVER(TMC2208)
|
||||
#if ENABLED(TMC_DEBUG)
|
||||
case 122: gcode_M122(); break; // M122: Debug TMC steppers
|
||||
#endif
|
||||
@@ -14445,10 +14441,10 @@ void setup() {
|
||||
SERIAL_ECHO_START();
|
||||
|
||||
// Prepare communication for TMC drivers
|
||||
#if ENABLED(HAVE_TMC2130)
|
||||
#if HAS_DRIVER(TMC2130)
|
||||
tmc_init_cs_pins();
|
||||
#endif
|
||||
#if ENABLED(HAVE_TMC2208)
|
||||
#if HAS_DRIVER(TMC2208)
|
||||
tmc2208_serial_begin();
|
||||
#endif
|
||||
|
||||
|
@@ -265,10 +265,28 @@
|
||||
#elif defined(MEASURED_LOWER_LIMIT) || defined(MEASURED_UPPER_LIMIT)
|
||||
#error "MEASURED_(UPPER|LOWER)_LIMIT is now FILWIDTH_ERROR_MARGIN. Please update your configuration."
|
||||
#elif defined(HAVE_TMCDRIVER)
|
||||
#error "HAVE_TMCDRIVER is now HAVE_TMC26X. Please update your Configuration_adv.h."
|
||||
#error "HAVE_TMCDRIVER is now [AXIS]_DRIVER_TYPE TMC26X. Please update your Configuration.h."
|
||||
#elif defined(HAVE_TMC26X)
|
||||
#error "HAVE_TMC26X is now [AXIS]_DRIVER_TYPE TMC26X. Please update your Configuration.h."
|
||||
#elif defined(HAVE_TMC2130)
|
||||
#error "HAVE_TMC2130 is now [AXIS]_DRIVER_TYPE TMC2130. Please update your Configuration.h."
|
||||
#elif defined(HAVE_L6470DRIVER)
|
||||
#error "HAVE_L6470DRIVER is now [AXIS]_DRIVER_TYPE L6470. Please update your Configuration.h."
|
||||
#elif defined(X_IS_TMC) || defined(X2_IS_TMC) || defined(Y_IS_TMC) || defined(Y2_IS_TMC) || defined(Z_IS_TMC) || defined(Z2_IS_TMC) \
|
||||
|| defined(E0_IS_TMC) || defined(E1_IS_TMC) || defined(E2_IS_TMC) || defined(E3_IS_TMC) || defined(E4_IS_TMC)
|
||||
#error "[AXIS]_IS_TMC is now [AXIS]_IS_TMC26X. Please update your Configuration_adv.h."
|
||||
#error "[AXIS]_IS_TMC is now [AXIS]_DRIVER_TYPE TMC26X. Please update your Configuration.h."
|
||||
#elif defined(X_IS_TMC26X) || defined(X2_IS_TMC26X) || defined(Y_IS_TMC26X) || defined(Y2_IS_TMC26X) || defined(Z_IS_TMC26X) || defined(Z2_IS_TMC26X) \
|
||||
|| defined(E0_IS_TMC26X) || defined(E1_IS_TMC26X) || defined(E2_IS_TMC26X) || defined(E3_IS_TMC26X) || defined(E4_IS_TMC26X)
|
||||
#error "[AXIS]_IS_TMC26X is now [AXIS]_DRIVER_TYPE TMC26X. Please update your Configuration.h."
|
||||
#elif defined(X_IS_TMC2130) || defined(X2_IS_TMC2130) || defined(Y_IS_TMC2130) || defined(Y2_IS_TMC2130) || defined(Z_IS_TMC2130) || defined(Z2_IS_TMC2130) \
|
||||
|| defined(E0_IS_TMC2130) || defined(E1_IS_TMC2130) || defined(E2_IS_TMC2130) || defined(E3_IS_TMC2130) || defined(E4_IS_TMC2130)
|
||||
#error "[AXIS]_IS_TMC2130 is now [AXIS]_DRIVER_TYPE TMC2130. Please update your Configuration.h."
|
||||
#elif defined(X_IS_TMC2208) || defined(X2_IS_TMC2208) || defined(Y_IS_TMC2208) || defined(Y2_IS_TMC2208) || defined(Z_IS_TMC2208) || defined(Z2_IS_TMC2208) \
|
||||
|| defined(E0_IS_TMC2208) || defined(E1_IS_TMC2208) || defined(E2_IS_TMC2208) || defined(E3_IS_TMC2208) || defined(E4_IS_TMC2208)
|
||||
#error "[AXIS]_IS_TMC2208 is now [AXIS]_DRIVER_TYPE TMC2208. Please update your Configuration.h."
|
||||
#elif defined(X_IS_L6470) || defined(X2_IS_L6470) || defined(Y_IS_L6470) || defined(Y2_IS_L6470) || defined(Z_IS_L6470) || defined(Z2_IS_L6470) \
|
||||
|| defined(E0_IS_L6470) || defined(E1_IS_L6470) || defined(E2_IS_L6470) || defined(E3_IS_L6470) || defined(E4_IS_L6470)
|
||||
#error "[AXIS]_IS_L6470 is now [AXIS]_DRIVER_TYPE L6470. Please update your Configuration.h."
|
||||
#elif defined(AUTOMATIC_CURRENT_CONTROL)
|
||||
#error "AUTOMATIC_CURRENT_CONTROL is now MONITOR_DRIVER_STATUS. Please update your configuration."
|
||||
#elif defined(FILAMENT_CHANGE_LOAD_LENGTH)
|
||||
@@ -1416,247 +1434,96 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE && Y_MAX_LENGTH >= Y_BED_SIZE,
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Make sure HAVE_TMC26X is warranted
|
||||
* Check existing CS pins against enabled TMC SPI drivers.
|
||||
*/
|
||||
#if ENABLED(HAVE_TMC26X) && !( \
|
||||
ENABLED( X_IS_TMC26X) \
|
||||
|| ENABLED(X2_IS_TMC26X) \
|
||||
|| ENABLED( Y_IS_TMC26X) \
|
||||
|| ENABLED(Y2_IS_TMC26X) \
|
||||
|| ENABLED( Z_IS_TMC26X) \
|
||||
|| ENABLED(Z2_IS_TMC26X) \
|
||||
|| ENABLED(E0_IS_TMC26X) \
|
||||
|| ENABLED(E1_IS_TMC26X) \
|
||||
|| ENABLED(E2_IS_TMC26X) \
|
||||
|| ENABLED(E3_IS_TMC26X) \
|
||||
|| ENABLED(E4_IS_TMC26X) \
|
||||
)
|
||||
#error "HAVE_TMC26X requires at least one TMC26X stepper to be set."
|
||||
#if AXIS_DRIVER_TYPE(X, TMC2130) && !PIN_EXISTS(X_CS)
|
||||
#error "X_CS_PIN is required for TMC2130. Define X_CS_PIN in Configuration_adv.h."
|
||||
#elif AXIS_DRIVER_TYPE(X2, TMC2130) && !PIN_EXISTS(X2_CS)
|
||||
#error "X2_CS_PIN is required for X2. Define X2_CS_PIN in Configuration_adv.h."
|
||||
#elif AXIS_DRIVER_TYPE(Y, TMC2130) && !PIN_EXISTS(Y_CS)
|
||||
#error "Y_CS_PIN is required for TMC2130. Define Y_CS_PIN in Configuration_adv.h."
|
||||
#elif AXIS_DRIVER_TYPE(Y2, TMC2130) && !PIN_EXISTS(Y2_CS)
|
||||
#error "Y2_CS_PIN is required for TMC2130. Define Y2_CS_PIN in Configuration_adv.h."
|
||||
#elif AXIS_DRIVER_TYPE(Z, TMC2130) && !PIN_EXISTS(Z_CS)
|
||||
#error "Z_CS_PIN is required for TMC2130. Define Z_CS_PIN in Configuration_adv.h."
|
||||
#elif AXIS_DRIVER_TYPE(Z2, TMC2130) && !PIN_EXISTS(Z2_CS)
|
||||
#error "Z2_CS_PIN is required for TMC2130. Define Z2_CS_PIN in Configuration_adv.h."
|
||||
#elif AXIS_DRIVER_TYPE(E0, TMC2130) && !PIN_EXISTS(E0_CS)
|
||||
#error "E0_CS_PIN is required for TMC2130. Define E0_CS_PIN in Configuration_adv.h."
|
||||
#elif AXIS_DRIVER_TYPE(E1, TMC2130) && !PIN_EXISTS(E1_CS)
|
||||
#error "E1_CS_PIN is required for TMC2130. Define E1_CS_PIN in Configuration_adv.h."
|
||||
#elif AXIS_DRIVER_TYPE(E2, TMC2130) && !PIN_EXISTS(E2_CS)
|
||||
#error "E2_CS_PIN is required for TMC2130. Define E2_CS_PIN in Configuration_adv.h."
|
||||
#elif AXIS_DRIVER_TYPE(E3, TMC2130) && !PIN_EXISTS(E3_CS)
|
||||
#error "E3_CS_PIN is required for TMC2130. Define E3_CS_PIN in Configuration_adv.h."
|
||||
#elif AXIS_DRIVER_TYPE(E4, TMC2130) && !PIN_EXISTS(E4_CS)
|
||||
#error "E4_CS_PIN is required for TMC2130. Define E4_CS_PIN in Configuration_adv.h."
|
||||
#endif
|
||||
|
||||
/**
|
||||
* TMC2130 Requirements
|
||||
* TMC2208 software UART and ENDSTOP_INTERRUPTS both use pin change interrupts (PCI)
|
||||
*/
|
||||
#if ENABLED(HAVE_TMC2130)
|
||||
#if !( ENABLED( X_IS_TMC2130) \
|
||||
|| ENABLED(X2_IS_TMC2130) \
|
||||
|| ENABLED( Y_IS_TMC2130) \
|
||||
|| ENABLED(Y2_IS_TMC2130) \
|
||||
|| ENABLED( Z_IS_TMC2130) \
|
||||
|| ENABLED(Z2_IS_TMC2130) \
|
||||
|| ENABLED(E0_IS_TMC2130) \
|
||||
|| ENABLED(E1_IS_TMC2130) \
|
||||
|| ENABLED(E2_IS_TMC2130) \
|
||||
|| ENABLED(E3_IS_TMC2130) \
|
||||
|| ENABLED(E4_IS_TMC2130) )
|
||||
#error "HAVE_TMC2130 requires at least one TMC2130 stepper to be set."
|
||||
#elif ENABLED(HYBRID_THRESHOLD) && DISABLED(STEALTHCHOP)
|
||||
#error "Enable STEALTHCHOP to use HYBRID_THRESHOLD."
|
||||
#endif
|
||||
|
||||
#if ENABLED(X_IS_TMC2130) && !PIN_EXISTS(X_CS)
|
||||
#error "X_CS_PIN is required for X_IS_TMC2130. Define X_CS_PIN in Configuration_adv.h."
|
||||
#elif ENABLED(X2_IS_TMC2130) && !PIN_EXISTS(X2_CS)
|
||||
#error "X2_CS_PIN is required for X2_IS_TMC2130. Define X2_CS_PIN in Configuration_adv.h."
|
||||
#elif ENABLED(Y_IS_TMC2130) && !PIN_EXISTS(Y_CS)
|
||||
#error "Y_CS_PIN is required for Y_IS_TMC2130. Define Y_CS_PIN in Configuration_adv.h."
|
||||
#elif ENABLED(Y2_IS_TMC2130) && !PIN_EXISTS(Y2_CS)
|
||||
#error "Y2_CS_PIN is required for Y2_IS_TMC2130. Define Y2_CS_PIN in Configuration_adv.h."
|
||||
#elif ENABLED(Z_IS_TMC2130) && !PIN_EXISTS(Z_CS)
|
||||
#error "Z_CS_PIN is required for Z_IS_TMC2130. Define Z_CS_PIN in Configuration_adv.h."
|
||||
#elif ENABLED(Z2_IS_TMC2130) && !PIN_EXISTS(Z2_CS)
|
||||
#error "Z2_CS_PIN is required for Z2_IS_TMC2130. Define Z2_CS_PIN in Configuration_adv.h."
|
||||
#elif ENABLED(E0_IS_TMC2130) && !PIN_EXISTS(E0_CS)
|
||||
#error "E0_CS_PIN is required for E0_IS_TMC2130. Define E0_CS_PIN in Configuration_adv.h."
|
||||
#elif ENABLED(E1_IS_TMC2130) && !PIN_EXISTS(E1_CS)
|
||||
#error "E1_CS_PIN is required for E1_IS_TMC2130. Define E1_CS_PIN in Configuration_adv.h."
|
||||
#elif ENABLED(E2_IS_TMC2130) && !PIN_EXISTS(E2_CS)
|
||||
#error "E2_CS_PIN is required for E2_IS_TMC2130. Define E2_CS_PIN in Configuration_adv.h."
|
||||
#elif ENABLED(E3_IS_TMC2130) && !PIN_EXISTS(E3_CS)
|
||||
#error "E3_CS_PIN is required for E3_IS_TMC2130. Define E3_CS_PIN in Configuration_adv.h."
|
||||
#elif ENABLED(E4_IS_TMC2130) && !PIN_EXISTS(E4_CS)
|
||||
#error "E4_CS_PIN is required for E4_IS_TMC2130. Define E4_CS_PIN in Configuration_adv.h."
|
||||
#endif
|
||||
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
// Require STEALTHCHOP for SENSORLESS_HOMING on DELTA as the transition from spreadCycle to stealthChop
|
||||
// is necessary in order to reset the stallGuard indication between the initial movement of all three
|
||||
// towers to +Z and the individual homing of each tower. This restriction can be removed once a means of
|
||||
// clearing the stallGuard activated status is found.
|
||||
#if ENABLED(DELTA) && !ENABLED(STEALTHCHOP)
|
||||
#error "SENSORLESS_HOMING on DELTA currently requires STEALTHCHOP."
|
||||
#elif X_SENSORLESS && X_HOME_DIR == -1 && (DISABLED(X_MIN_ENDSTOP_INVERTING) || DISABLED(ENDSTOPPULLUP_XMIN))
|
||||
#error "SENSORLESS_HOMING requires X_MIN_ENDSTOP_INVERTING and ENDSTOPPULLUP_XMIN when homing to X_MIN."
|
||||
#elif X_SENSORLESS && X_HOME_DIR == 1 && (DISABLED(X_MAX_ENDSTOP_INVERTING) || DISABLED(ENDSTOPPULLUP_XMAX))
|
||||
#error "SENSORLESS_HOMING requires X_MAX_ENDSTOP_INVERTING and ENDSTOPPULLUP_XMAX when homing to X_MAX."
|
||||
#elif Y_SENSORLESS && Y_HOME_DIR == -1 && (DISABLED(Y_MIN_ENDSTOP_INVERTING) || DISABLED(ENDSTOPPULLUP_YMIN))
|
||||
#error "SENSORLESS_HOMING requires Y_MIN_ENDSTOP_INVERTING and ENDSTOPPULLUP_YMIN when homing to Y_MIN."
|
||||
#elif Y_SENSORLESS && Y_HOME_DIR == 1 && (DISABLED(Y_MAX_ENDSTOP_INVERTING) || DISABLED(ENDSTOPPULLUP_YMAX))
|
||||
#error "SENSORLESS_HOMING requires Y_MAX_ENDSTOP_INVERTING and ENDSTOPPULLUP_YMAX when homing to Y_MAX."
|
||||
#elif Z_SENSORLESS && Z_HOME_DIR == -1 && (DISABLED(Z_MIN_ENDSTOP_INVERTING) || DISABLED(ENDSTOPPULLUP_ZMIN))
|
||||
#error "SENSORLESS_HOMING requires Z_MIN_ENDSTOP_INVERTING and ENDSTOPPULLUP_ZMIN when homing to Z_MIN."
|
||||
#elif Z_SENSORLESS && Z_HOME_DIR == 1 && (DISABLED(Z_MAX_ENDSTOP_INVERTING) || DISABLED(ENDSTOPPULLUP_ZMAX))
|
||||
#error "SENSORLESS_HOMING requires Z_MAX_ENDSTOP_INVERTING and ENDSTOPPULLUP_ZMAX when homing to Z_MAX."
|
||||
#elif ENABLED(ENDSTOP_NOISE_FILTER)
|
||||
#error "SENSORLESS_HOMING is incompatible with ENDSTOP_NOISE_FILTER."
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// Sensorless homing is required for both combined steppers in an H-bot
|
||||
#if CORE_IS_XY && X_SENSORLESS != Y_SENSORLESS
|
||||
#error "CoreXY requires both X and Y to use sensorless homing if either does."
|
||||
#elif CORE_IS_XZ && X_SENSORLESS != Z_SENSORLESS
|
||||
#error "CoreXZ requires both X and Z to use sensorless homing if either does."
|
||||
#elif CORE_IS_YZ && Y_SENSORLESS != Z_SENSORLESS
|
||||
#error "CoreYZ requires both Y and Z to use sensorless homing if either does."
|
||||
#endif
|
||||
|
||||
#elif ENABLED(SENSORLESS_HOMING)
|
||||
|
||||
#error "SENSORLESS_HOMING requires TMC2130 stepper drivers."
|
||||
|
||||
#if HAS_DRIVER(TMC2208) && ENABLED(ENDSTOP_INTERRUPTS_FEATURE) && !( \
|
||||
defined(X_HARDWARE_SERIAL ) \
|
||||
|| defined(X2_HARDWARE_SERIAL) \
|
||||
|| defined(Y_HARDWARE_SERIAL ) \
|
||||
|| defined(Y2_HARDWARE_SERIAL) \
|
||||
|| defined(Z_HARDWARE_SERIAL ) \
|
||||
|| defined(Z2_HARDWARE_SERIAL) \
|
||||
|| defined(E0_HARDWARE_SERIAL) \
|
||||
|| defined(E1_HARDWARE_SERIAL) \
|
||||
|| defined(E2_HARDWARE_SERIAL) \
|
||||
|| defined(E3_HARDWARE_SERIAL) \
|
||||
|| defined(E4_HARDWARE_SERIAL) )
|
||||
#error "select hardware UART for TMC2208 to use both TMC2208 and ENDSTOP_INTERRUPTS_FEATURE."
|
||||
#endif
|
||||
|
||||
/**
|
||||
* TMC2208 Requirements
|
||||
*/
|
||||
#if ENABLED(HAVE_TMC2208)
|
||||
#if !( ENABLED( X_IS_TMC2208) \
|
||||
|| ENABLED(X2_IS_TMC2208) \
|
||||
|| ENABLED( Y_IS_TMC2208) \
|
||||
|| ENABLED(Y2_IS_TMC2208) \
|
||||
|| ENABLED( Z_IS_TMC2208) \
|
||||
|| ENABLED(Z2_IS_TMC2208) \
|
||||
|| ENABLED(E0_IS_TMC2208) \
|
||||
|| ENABLED(E1_IS_TMC2208) \
|
||||
|| ENABLED(E2_IS_TMC2208) \
|
||||
|| ENABLED(E3_IS_TMC2208) \
|
||||
|| ENABLED(E4_IS_TMC2208 ) )
|
||||
#error "HAVE_TMC2208 requires at least one TMC2208 stepper to be set."
|
||||
// Software UART and ENDSTOP_INTERRUPTS both use Pin Change interrupts (PCI)
|
||||
#elif ENABLED(ENDSTOP_INTERRUPTS_FEATURE) && \
|
||||
!( defined( X_HARDWARE_SERIAL) \
|
||||
|| defined(X2_HARDWARE_SERIAL) \
|
||||
|| defined( Y_HARDWARE_SERIAL) \
|
||||
|| defined(Y2_HARDWARE_SERIAL) \
|
||||
|| defined( Z_HARDWARE_SERIAL) \
|
||||
|| defined(Z2_HARDWARE_SERIAL) \
|
||||
|| defined(E0_HARDWARE_SERIAL) \
|
||||
|| defined(E1_HARDWARE_SERIAL) \
|
||||
|| defined(E2_HARDWARE_SERIAL) \
|
||||
|| defined(E3_HARDWARE_SERIAL) \
|
||||
|| defined(E4_HARDWARE_SERIAL) )
|
||||
#error "Select *_HARDWARE_SERIAL to use both TMC2208 and ENDSTOP_INTERRUPTS_FEATURE."
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
// Require STEALTHCHOP for SENSORLESS_HOMING on DELTA as the transition from spreadCycle to stealthChop
|
||||
// is necessary in order to reset the stallGuard indication between the initial movement of all three
|
||||
// towers to +Z and the individual homing of each tower. This restriction can be removed once a means of
|
||||
// clearing the stallGuard activated status is found.
|
||||
#if ENABLED(DELTA) && !ENABLED(STEALTHCHOP)
|
||||
#error "SENSORLESS_HOMING on DELTA currently requires STEALTHCHOP."
|
||||
#elif X_SENSORLESS && X_HOME_DIR == -1 && (DISABLED(X_MIN_ENDSTOP_INVERTING) || DISABLED(ENDSTOPPULLUP_XMIN))
|
||||
#error "SENSORLESS_HOMING requires X_MIN_ENDSTOP_INVERTING and ENDSTOPPULLUP_XMIN when homing to X_MIN."
|
||||
#elif X_SENSORLESS && X_HOME_DIR == 1 && (DISABLED(X_MAX_ENDSTOP_INVERTING) || DISABLED(ENDSTOPPULLUP_XMAX))
|
||||
#error "SENSORLESS_HOMING requires X_MAX_ENDSTOP_INVERTING and ENDSTOPPULLUP_XMAX when homing to X_MAX."
|
||||
#elif Y_SENSORLESS && Y_HOME_DIR == -1 && (DISABLED(Y_MIN_ENDSTOP_INVERTING) || DISABLED(ENDSTOPPULLUP_YMIN))
|
||||
#error "SENSORLESS_HOMING requires Y_MIN_ENDSTOP_INVERTING and ENDSTOPPULLUP_YMIN when homing to Y_MIN."
|
||||
#elif Y_SENSORLESS && Y_HOME_DIR == 1 && (DISABLED(Y_MAX_ENDSTOP_INVERTING) || DISABLED(ENDSTOPPULLUP_YMAX))
|
||||
#error "SENSORLESS_HOMING requires Y_MAX_ENDSTOP_INVERTING and ENDSTOPPULLUP_YMAX when homing to Y_MAX."
|
||||
#elif Z_SENSORLESS && Z_HOME_DIR == -1 && (DISABLED(Z_MIN_ENDSTOP_INVERTING) || DISABLED(ENDSTOPPULLUP_ZMIN))
|
||||
#error "SENSORLESS_HOMING requires Z_MIN_ENDSTOP_INVERTING and ENDSTOPPULLUP_ZMIN when homing to Z_MIN."
|
||||
#elif Z_SENSORLESS && Z_HOME_DIR == 1 && (DISABLED(Z_MAX_ENDSTOP_INVERTING) || DISABLED(ENDSTOPPULLUP_ZMAX))
|
||||
#error "SENSORLESS_HOMING requires Z_MAX_ENDSTOP_INVERTING and ENDSTOPPULLUP_ZMAX when homing to Z_MAX."
|
||||
#elif ENABLED(ENDSTOP_NOISE_FILTER)
|
||||
#error "SENSORLESS_HOMING is incompatible with ENDSTOP_NOISE_FILTER."
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// Sensorless homing is required for both combined steppers in an H-bot
|
||||
#if CORE_IS_XY && X_SENSORLESS != Y_SENSORLESS
|
||||
#error "CoreXY requires both X and Y to use sensorless homing if either does."
|
||||
#elif CORE_IS_XZ && X_SENSORLESS != Z_SENSORLESS
|
||||
#error "CoreXZ requires both X and Z to use sensorless homing if either does."
|
||||
#elif CORE_IS_YZ && Y_SENSORLESS != Z_SENSORLESS
|
||||
#error "CoreYZ requires both Y and Z to use sensorless homing if either does."
|
||||
#endif
|
||||
|
||||
#if ENABLED(HYBRID_THRESHOLD) && DISABLED(STEALTHCHOP)
|
||||
#error "Enable STEALTHCHOP to use HYBRID_THRESHOLD."
|
||||
#endif
|
||||
|
||||
#if ENABLED(TMC_Z_CALIBRATION) && !Z_IS_TRINAMIC && !Z2_IS_TRINAMIC
|
||||
#if ENABLED(TMC_Z_CALIBRATION) && !AXIS_IS_TMC(Z) && !AXIS_IS_TMC(Z2)
|
||||
#error "TMC_Z_CALIBRATION requires at least one TMC driver on Z axis"
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Make sure HAVE_L6470DRIVER is warranted
|
||||
*/
|
||||
#if ENABLED(HAVE_L6470DRIVER) && !( \
|
||||
ENABLED( X_IS_L6470) \
|
||||
|| ENABLED(X2_IS_L6470) \
|
||||
|| ENABLED( Y_IS_L6470) \
|
||||
|| ENABLED(Y2_IS_L6470) \
|
||||
|| ENABLED( Z_IS_L6470) \
|
||||
|| ENABLED(Z2_IS_L6470) \
|
||||
|| ENABLED(E0_IS_L6470) \
|
||||
|| ENABLED(E1_IS_L6470) \
|
||||
|| ENABLED(E2_IS_L6470) \
|
||||
|| ENABLED(E3_IS_L6470) \
|
||||
|| ENABLED(E4_IS_L6470) \
|
||||
)
|
||||
#error "HAVE_L6470DRIVER requires at least one L6470 stepper to be set."
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Check that each axis has only one driver selected
|
||||
*/
|
||||
#if 1 < 0 \
|
||||
+ ENABLED(X_IS_TMC26X) \
|
||||
+ ENABLED(X_IS_TMC2130) \
|
||||
+ ENABLED(X_IS_TMC2208) \
|
||||
+ ENABLED(X_IS_L6470)
|
||||
#error "Please enable only one stepper driver for the X axis."
|
||||
#endif
|
||||
#if 1 < 0 \
|
||||
+ ENABLED(X2_IS_TMC26X) \
|
||||
+ ENABLED(X2_IS_TMC2130) \
|
||||
+ ENABLED(X2_IS_TMC2208) \
|
||||
+ ENABLED(X2_IS_L6470)
|
||||
#error "Please enable only one stepper driver for the X2 axis."
|
||||
#endif
|
||||
#if 1 < 0 \
|
||||
+ ENABLED(Y_IS_TMC26X) \
|
||||
+ ENABLED(Y_IS_TMC2130) \
|
||||
+ ENABLED(Y_IS_TMC2208) \
|
||||
+ ENABLED(Y_IS_L6470)
|
||||
#error "Please enable only one stepper driver for the Y axis."
|
||||
#endif
|
||||
#if 1 < 0 \
|
||||
+ ENABLED(Y2_IS_TMC26X) \
|
||||
+ ENABLED(Y2_IS_TMC2130) \
|
||||
+ ENABLED(Y2_IS_TMC2208) \
|
||||
+ ENABLED(Y2_IS_L6470)
|
||||
#error "Please enable only one stepper driver for the Y2 axis."
|
||||
#endif
|
||||
#if 1 < 0 \
|
||||
+ ENABLED(Z_IS_TMC26X) \
|
||||
+ ENABLED(Z_IS_TMC2130) \
|
||||
+ ENABLED(Z_IS_TMC2208) \
|
||||
+ ENABLED(Z_IS_L6470)
|
||||
#error "Please enable only one stepper driver for the Z axis."
|
||||
#endif
|
||||
#if 1 < 0 \
|
||||
+ ENABLED(Z2_IS_TMC26X) \
|
||||
+ ENABLED(Z2_IS_TMC2130) \
|
||||
+ ENABLED(Z2_IS_TMC2208) \
|
||||
+ ENABLED(Z2_IS_L6470)
|
||||
#error "Please enable only one stepper driver for the Z2 axis."
|
||||
#endif
|
||||
#if 1 < 0 \
|
||||
+ ENABLED(E0_IS_TMC26X) \
|
||||
+ ENABLED(E0_IS_TMC2130) \
|
||||
+ ENABLED(E0_IS_TMC2208) \
|
||||
+ ENABLED(E0_IS_L6470)
|
||||
#error "Please enable only one stepper driver for the E0 axis."
|
||||
#endif
|
||||
#if 1 < 0 \
|
||||
+ ENABLED(E1_IS_TMC26X) \
|
||||
+ ENABLED(E1_IS_TMC2130) \
|
||||
+ ENABLED(E1_IS_TMC2208) \
|
||||
+ ENABLED(E1_IS_L6470)
|
||||
#error "Please enable only one stepper driver for the E1 axis."
|
||||
#endif
|
||||
#if 1 < 0 \
|
||||
+ ENABLED(E2_IS_TMC26X) \
|
||||
+ ENABLED(E2_IS_TMC2130) \
|
||||
+ ENABLED(E2_IS_TMC2208) \
|
||||
+ ENABLED(E2_IS_L6470)
|
||||
#error "Please enable only one stepper driver for the E2 axis."
|
||||
#endif
|
||||
#if 1 < 0 \
|
||||
+ ENABLED(E3_IS_TMC26X) \
|
||||
+ ENABLED(E3_IS_TMC2130) \
|
||||
+ ENABLED(E3_IS_TMC2208) \
|
||||
+ ENABLED(E3_IS_L6470)
|
||||
#error "Please enable only one stepper driver for the E3 axis."
|
||||
#endif
|
||||
#if 1 < 0 \
|
||||
+ ENABLED(E4_IS_TMC26X) \
|
||||
+ ENABLED(E4_IS_TMC2130) \
|
||||
+ ENABLED(E4_IS_TMC2208) \
|
||||
+ ENABLED(E4_IS_L6470)
|
||||
#error "Please enable only one stepper driver for the E4 axis."
|
||||
#if ENABLED(SENSORLESS_HOMING) && !HAS_STALLGUARD
|
||||
#error "SENSORLESS_HOMING requires TMC2130 or TMC2660 stepper drivers."
|
||||
#endif
|
||||
#if ENABLED(STEALTHCHOP) && !HAS_STEALTHCHOP
|
||||
#error "STEALTHCHOP requires TMC2130 or TMC2208 stepper drivers."
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Digipot requirement
|
||||
|
@@ -696,57 +696,57 @@ void MarlinSettings::postprocess() {
|
||||
|
||||
uint16_t tmc_stepper_current[TMC_AXES] = {
|
||||
#if HAS_TRINAMIC
|
||||
#if X_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X)
|
||||
stepperX.getCurrent(),
|
||||
#else
|
||||
0,
|
||||
#endif
|
||||
#if Y_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Y)
|
||||
stepperY.getCurrent(),
|
||||
#else
|
||||
0,
|
||||
#endif
|
||||
#if Z_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z)
|
||||
stepperZ.getCurrent(),
|
||||
#else
|
||||
0,
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X2)
|
||||
stepperX2.getCurrent(),
|
||||
#else
|
||||
0,
|
||||
#endif
|
||||
#if Y2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Y2)
|
||||
stepperY2.getCurrent(),
|
||||
#else
|
||||
0,
|
||||
#endif
|
||||
#if Z2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z2)
|
||||
stepperZ2.getCurrent(),
|
||||
#else
|
||||
0,
|
||||
#endif
|
||||
#if E0_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E0)
|
||||
stepperE0.getCurrent(),
|
||||
#else
|
||||
0,
|
||||
#endif
|
||||
#if E1_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E1)
|
||||
stepperE1.getCurrent(),
|
||||
#else
|
||||
0,
|
||||
#endif
|
||||
#if E2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E2)
|
||||
stepperE2.getCurrent(),
|
||||
#else
|
||||
0,
|
||||
#endif
|
||||
#if E3_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E3)
|
||||
stepperE3.getCurrent(),
|
||||
#else
|
||||
0,
|
||||
#endif
|
||||
#if E4_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E4)
|
||||
stepperE4.getCurrent()
|
||||
#else
|
||||
0
|
||||
@@ -765,57 +765,57 @@ void MarlinSettings::postprocess() {
|
||||
|
||||
uint32_t tmc_hybrid_threshold[TMC_AXES] = {
|
||||
#if ENABLED(HYBRID_THRESHOLD)
|
||||
#if X_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(X)
|
||||
TMC_GET_PWMTHRS(X, X),
|
||||
#else
|
||||
X_HYBRID_THRESHOLD,
|
||||
#endif
|
||||
#if Y_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Y)
|
||||
TMC_GET_PWMTHRS(Y, Y),
|
||||
#else
|
||||
Y_HYBRID_THRESHOLD,
|
||||
#endif
|
||||
#if Z_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Z)
|
||||
TMC_GET_PWMTHRS(Z, Z),
|
||||
#else
|
||||
Z_HYBRID_THRESHOLD,
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(X2)
|
||||
TMC_GET_PWMTHRS(X, X2),
|
||||
#else
|
||||
X2_HYBRID_THRESHOLD,
|
||||
#endif
|
||||
#if Y2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Y2)
|
||||
TMC_GET_PWMTHRS(Y, Y2),
|
||||
#else
|
||||
Y2_HYBRID_THRESHOLD,
|
||||
#endif
|
||||
#if Z2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Z2)
|
||||
TMC_GET_PWMTHRS(Z, Z2),
|
||||
#else
|
||||
Z2_HYBRID_THRESHOLD,
|
||||
#endif
|
||||
#if E0_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(E0)
|
||||
TMC_GET_PWMTHRS(E, E0),
|
||||
#else
|
||||
E0_HYBRID_THRESHOLD,
|
||||
#endif
|
||||
#if E1_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(E1)
|
||||
TMC_GET_PWMTHRS(E, E1),
|
||||
#else
|
||||
E1_HYBRID_THRESHOLD,
|
||||
#endif
|
||||
#if E2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(E2)
|
||||
TMC_GET_PWMTHRS(E, E2),
|
||||
#else
|
||||
E2_HYBRID_THRESHOLD,
|
||||
#endif
|
||||
#if E3_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(E3)
|
||||
TMC_GET_PWMTHRS(E, E3),
|
||||
#else
|
||||
E3_HYBRID_THRESHOLD,
|
||||
#endif
|
||||
#if E4_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(E4)
|
||||
TMC_GET_PWMTHRS(E, E4)
|
||||
#else
|
||||
E4_HYBRID_THRESHOLD
|
||||
@@ -833,17 +833,17 @@ void MarlinSettings::postprocess() {
|
||||
//
|
||||
int16_t tmc_sgt[XYZ] = {
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
#if defined(X_HOMING_SENSITIVITY) && (ENABLED(X_IS_TMC2130) || ENABLED(IS_TRAMS))
|
||||
#if X_SENSORLESS
|
||||
stepperX.sgt(),
|
||||
#else
|
||||
0,
|
||||
#endif
|
||||
#if defined(Y_HOMING_SENSITIVITY) && (ENABLED(Y_IS_TMC2130) || ENABLED(IS_TRAMS))
|
||||
#if Y_SENSORLESS
|
||||
stepperY.sgt(),
|
||||
#else
|
||||
0,
|
||||
#endif
|
||||
#if defined(Z_HOMING_SENSITIVITY) && (ENABLED(Z_IS_TMC2130) || ENABLED(IS_TRAMS))
|
||||
#if Z_SENSORLESS
|
||||
stepperZ.sgt()
|
||||
#else
|
||||
0
|
||||
@@ -1325,37 +1325,37 @@ void MarlinSettings::postprocess() {
|
||||
uint16_t currents[TMC_AXES];
|
||||
EEPROM_READ(currents);
|
||||
if (!validating) {
|
||||
#if X_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X)
|
||||
SET_CURR(X);
|
||||
#endif
|
||||
#if Y_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Y)
|
||||
SET_CURR(Y);
|
||||
#endif
|
||||
#if Z_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z)
|
||||
SET_CURR(Z);
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X2)
|
||||
SET_CURR(X2);
|
||||
#endif
|
||||
#if Y2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Y2)
|
||||
SET_CURR(Y2);
|
||||
#endif
|
||||
#if Z2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z2)
|
||||
SET_CURR(Z2);
|
||||
#endif
|
||||
#if E0_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E0)
|
||||
SET_CURR(E0);
|
||||
#endif
|
||||
#if E1_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E1)
|
||||
SET_CURR(E1);
|
||||
#endif
|
||||
#if E2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E2)
|
||||
SET_CURR(E2);
|
||||
#endif
|
||||
#if E3_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E3)
|
||||
SET_CURR(E3);
|
||||
#endif
|
||||
#if E4_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E4)
|
||||
SET_CURR(E4);
|
||||
#endif
|
||||
}
|
||||
@@ -1369,37 +1369,37 @@ void MarlinSettings::postprocess() {
|
||||
uint32_t tmc_hybrid_threshold[TMC_AXES];
|
||||
EEPROM_READ(tmc_hybrid_threshold);
|
||||
if (!validating) {
|
||||
#if X_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(X)
|
||||
TMC_SET_PWMTHRS(X, X);
|
||||
#endif
|
||||
#if Y_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Y)
|
||||
TMC_SET_PWMTHRS(Y, Y);
|
||||
#endif
|
||||
#if Z_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Z)
|
||||
TMC_SET_PWMTHRS(Z, Z);
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(X2)
|
||||
TMC_SET_PWMTHRS(X, X2);
|
||||
#endif
|
||||
#if Y2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Y2)
|
||||
TMC_SET_PWMTHRS(Y, Y2);
|
||||
#endif
|
||||
#if Z2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(Z2)
|
||||
TMC_SET_PWMTHRS(Z, Z2);
|
||||
#endif
|
||||
#if E0_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(E0)
|
||||
TMC_SET_PWMTHRS(E, E0);
|
||||
#endif
|
||||
#if E1_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(E1)
|
||||
TMC_SET_PWMTHRS(E, E1);
|
||||
#endif
|
||||
#if E2_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(E2)
|
||||
TMC_SET_PWMTHRS(E, E2);
|
||||
#endif
|
||||
#if E3_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(E3)
|
||||
TMC_SET_PWMTHRS(E, E3);
|
||||
#endif
|
||||
#if E4_IS_TRINAMIC
|
||||
#if AXIS_HAS_STEALTHCHOP(E4)
|
||||
TMC_SET_PWMTHRS(E, E4);
|
||||
#endif
|
||||
}
|
||||
@@ -1419,26 +1419,26 @@ void MarlinSettings::postprocess() {
|
||||
#if ENABLED(SENSORLESS_HOMING)
|
||||
if (!validating) {
|
||||
#ifdef X_HOMING_SENSITIVITY
|
||||
#if ENABLED(X_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
#if AXIS_HAS_STALLGUARD(X)
|
||||
stepperX.sgt(tmc_sgt[0]);
|
||||
#endif
|
||||
#if ENABLED(X2_IS_TMC2130)
|
||||
#if AXIS_HAS_STALLGUARD(X2)
|
||||
stepperX2.sgt(tmc_sgt[0]);
|
||||
#endif
|
||||
#endif
|
||||
#ifdef Y_HOMING_SENSITIVITY
|
||||
#if ENABLED(Y_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
#if AXIS_HAS_STALLGUARD(Y)
|
||||
stepperY.sgt(tmc_sgt[1]);
|
||||
#endif
|
||||
#if ENABLED(Y2_IS_TMC2130)
|
||||
#if AXIS_HAS_STALLGUARD(Y2)
|
||||
stepperY2.sgt(tmc_sgt[1]);
|
||||
#endif
|
||||
#endif
|
||||
#ifdef Z_HOMING_SENSITIVITY
|
||||
#if ENABLED(Z_IS_TMC2130) || ENABLED(IS_TRAMS)
|
||||
#if AXIS_HAS_STALLGUARD(Z)
|
||||
stepperZ.sgt(tmc_sgt[2]);
|
||||
#endif
|
||||
#if ENABLED(Z2_IS_TMC2130)
|
||||
#if AXIS_HAS_STALLGUARD(Z2)
|
||||
stepperZ2.sgt(tmc_sgt[2]);
|
||||
#endif
|
||||
#endif
|
||||
@@ -2428,61 +2428,61 @@ void MarlinSettings::reset() {
|
||||
#if HAS_TRINAMIC
|
||||
|
||||
/**
|
||||
* TMC2130 / TMC2208 / TRAMS stepper driver current
|
||||
* TMC2130 / TMC2208 stepper driver current
|
||||
*/
|
||||
if (!forReplay) {
|
||||
CONFIG_ECHO_START;
|
||||
SERIAL_ECHOLNPGM("Stepper driver current:");
|
||||
}
|
||||
CONFIG_ECHO_START;
|
||||
#if X_IS_TRINAMIC || Y_IS_TRINAMIC || Z_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X) || AXIS_IS_TMC(Y) || AXIS_IS_TMC(Z)
|
||||
say_M906();
|
||||
#endif
|
||||
#if X_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X)
|
||||
SERIAL_ECHOPAIR(" X", stepperX.getCurrent());
|
||||
#endif
|
||||
#if Y_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Y)
|
||||
SERIAL_ECHOPAIR(" Y", stepperY.getCurrent());
|
||||
#endif
|
||||
#if Z_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z)
|
||||
SERIAL_ECHOPAIR(" Z", stepperZ.getCurrent());
|
||||
#endif
|
||||
#if X_IS_TRINAMIC || Y_IS_TRINAMIC || Z_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X) || AXIS_IS_TMC(Y) || AXIS_IS_TMC(Z)
|
||||
SERIAL_EOL();
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC || Y2_IS_TRINAMIC || Z2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X2) || AXIS_IS_TMC(Y2) || AXIS_IS_TMC(Z2)
|
||||
say_M906();
|
||||
SERIAL_ECHOPGM(" I1");
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X2)
|
||||
SERIAL_ECHOPAIR(" X", stepperX2.getCurrent());
|
||||
#endif
|
||||
#if Y2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Y2)
|
||||
SERIAL_ECHOPAIR(" Y", stepperY2.getCurrent());
|
||||
#endif
|
||||
#if Z2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z2)
|
||||
SERIAL_ECHOPAIR(" Z", stepperZ2.getCurrent());
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC || Y2_IS_TRINAMIC || Z2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X2) || AXIS_IS_TMC(Y2) || AXIS_IS_TMC(Z2)
|
||||
SERIAL_EOL();
|
||||
#endif
|
||||
#if E0_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E0)
|
||||
say_M906();
|
||||
SERIAL_ECHOLNPAIR(" T0 E", stepperE0.getCurrent());
|
||||
#endif
|
||||
#if E_STEPPERS > 1 && E1_IS_TRINAMIC
|
||||
#if E_STEPPERS > 1 && AXIS_IS_TMC(E1)
|
||||
say_M906();
|
||||
SERIAL_ECHOLNPAIR(" T1 E", stepperE1.getCurrent());
|
||||
#endif
|
||||
#if E_STEPPERS > 2 && E2_IS_TRINAMIC
|
||||
#if E_STEPPERS > 2 && AXIS_IS_TMC(E2)
|
||||
say_M906();
|
||||
SERIAL_ECHOLNPAIR(" T2 E", stepperE2.getCurrent());
|
||||
#endif
|
||||
#if E_STEPPERS > 3 && E3_IS_TRINAMIC
|
||||
#if E_STEPPERS > 3 && AXIS_IS_TMC(E3)
|
||||
say_M906();
|
||||
SERIAL_ECHOLNPAIR(" T3 E", stepperE3.getCurrent());
|
||||
#endif
|
||||
#if E_STEPPERS > 4 && E4_IS_TRINAMIC
|
||||
#if E_STEPPERS > 4 && AXIS_IS_TMC(E4)
|
||||
say_M906();
|
||||
SERIAL_ECHOLNPAIR(" T4 E", stepperE4.getCurrent());
|
||||
#endif
|
||||
@@ -2497,54 +2497,54 @@ void MarlinSettings::reset() {
|
||||
SERIAL_ECHOLNPGM("Hybrid Threshold:");
|
||||
}
|
||||
CONFIG_ECHO_START;
|
||||
#if X_IS_TRINAMIC || Y_IS_TRINAMIC || Z_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X) || AXIS_IS_TMC(Y) || AXIS_IS_TMC(Z)
|
||||
say_M913();
|
||||
#endif
|
||||
#if X_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X)
|
||||
SERIAL_ECHOPAIR(" X", TMC_GET_PWMTHRS(X, X));
|
||||
#endif
|
||||
#if Y_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Y)
|
||||
SERIAL_ECHOPAIR(" Y", TMC_GET_PWMTHRS(Y, Y));
|
||||
#endif
|
||||
#if Z_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z)
|
||||
SERIAL_ECHOPAIR(" Z", TMC_GET_PWMTHRS(Z, Z));
|
||||
#endif
|
||||
#if X_IS_TRINAMIC || Y_IS_TRINAMIC || Z_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X) || AXIS_IS_TMC(Y) || AXIS_IS_TMC(Z)
|
||||
SERIAL_EOL();
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC || Y2_IS_TRINAMIC || Z2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X2) || AXIS_IS_TMC(Y2) || AXIS_IS_TMC(Z2)
|
||||
say_M913();
|
||||
SERIAL_ECHOPGM(" I1");
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X2)
|
||||
SERIAL_ECHOPAIR(" X", TMC_GET_PWMTHRS(X, X2));
|
||||
#endif
|
||||
#if Y2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Y2)
|
||||
SERIAL_ECHOPAIR(" Y", TMC_GET_PWMTHRS(Y, Y2));
|
||||
#endif
|
||||
#if Z2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(Z2)
|
||||
SERIAL_ECHOPAIR(" Z", TMC_GET_PWMTHRS(Z, Z2));
|
||||
#endif
|
||||
#if X2_IS_TRINAMIC || Y2_IS_TRINAMIC || Z2_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(X2) || AXIS_IS_TMC(Y2) || AXIS_IS_TMC(Z2)
|
||||
SERIAL_EOL();
|
||||
#endif
|
||||
#if E0_IS_TRINAMIC
|
||||
#if AXIS_IS_TMC(E0)
|
||||
say_M913();
|
||||
SERIAL_ECHOLNPAIR(" T0 E", TMC_GET_PWMTHRS(E, E0));
|
||||
#endif
|
||||
#if E_STEPPERS > 1 && E1_IS_TRINAMIC
|
||||
#if E_STEPPERS > 1 && AXIS_IS_TMC(E1)
|
||||
say_M913();
|
||||
SERIAL_ECHOLNPAIR(" T1 E", TMC_GET_PWMTHRS(E, E1));
|
||||
#endif
|
||||
#if E_STEPPERS > 2 && E2_IS_TRINAMIC
|
||||
#if E_STEPPERS > 2 && AXIS_IS_TMC(E2)
|
||||
say_M913();
|
||||
SERIAL_ECHOLNPAIR(" T2 E", TMC_GET_PWMTHRS(E, E2));
|
||||
#endif
|
||||
#if E_STEPPERS > 3 && E3_IS_TRINAMIC
|
||||
#if E_STEPPERS > 3 && AXIS_IS_TMC(E3)
|
||||
say_M913();
|
||||
SERIAL_ECHOLNPAIR(" T3 E", TMC_GET_PWMTHRS(E, E3));
|
||||
#endif
|
||||
#if E_STEPPERS > 4 && E4_IS_TRINAMIC
|
||||
#if E_STEPPERS > 4 && AXIS_IS_TMC(E4)
|
||||
say_M913();
|
||||
SERIAL_ECHOLNPAIR(" T4 E", TMC_GET_PWMTHRS(E, E4));
|
||||
#endif
|
||||
@@ -2560,36 +2560,33 @@ void MarlinSettings::reset() {
|
||||
SERIAL_ECHOLNPGM("Sensorless homing threshold:");
|
||||
}
|
||||
CONFIG_ECHO_START;
|
||||
#define HAS_X_SENSORLESS (defined(X_HOMING_SENSITIVITY) && (ENABLED(X_IS_TMC2130) || ENABLED(IS_TRAMS)))
|
||||
#define HAS_Y_SENSORLESS (defined(Y_HOMING_SENSITIVITY) && (ENABLED(Y_IS_TMC2130) || ENABLED(IS_TRAMS)))
|
||||
#define HAS_Z_SENSORLESS (defined(Z_HOMING_SENSITIVITY) && (ENABLED(Z_IS_TMC2130) || ENABLED(IS_TRAMS)))
|
||||
#if HAS_X_SENSORLESS || HAS_Y_SENSORLESS || HAS_Z_SENSORLESS
|
||||
#if X_SENSORLESS || Y_SENSORLESS || Z_SENSORLESS
|
||||
say_M914();
|
||||
#if HAS_X_SENSORLESS
|
||||
#if X_SENSORLESS
|
||||
SERIAL_ECHOPAIR(" X", stepperX.sgt());
|
||||
#endif
|
||||
#if HAS_Y_SENSORLESS
|
||||
#if Y_SENSORLESS
|
||||
SERIAL_ECHOPAIR(" Y", stepperY.sgt());
|
||||
#endif
|
||||
#if HAS_Z_SENSORLESS
|
||||
#if Z_SENSORLESS
|
||||
SERIAL_ECHOPAIR(" Z", stepperZ.sgt());
|
||||
#endif
|
||||
SERIAL_EOL();
|
||||
#endif
|
||||
|
||||
#define HAS_X2_SENSORLESS (defined(X_HOMING_SENSITIVITY) && ENABLED(X2_IS_TMC2130))
|
||||
#define HAS_Y2_SENSORLESS (defined(Y_HOMING_SENSITIVITY) && ENABLED(Y2_IS_TMC2130))
|
||||
#define HAS_Z2_SENSORLESS (defined(Z_HOMING_SENSITIVITY) && ENABLED(Z2_IS_TMC2130))
|
||||
#if HAS_X2_SENSORLESS || HAS_Y2_SENSORLESS || HAS_Z2_SENSORLESS
|
||||
#define X2_SENSORLESS (defined(X_HOMING_SENSITIVITY) && AXIS_HAS_STALLGUARD(X2))
|
||||
#define Y2_SENSORLESS (defined(Y_HOMING_SENSITIVITY) && AXIS_HAS_STALLGUARD(Y2))
|
||||
#define Z2_SENSORLESS (defined(Z_HOMING_SENSITIVITY) && AXIS_HAS_STALLGUARD(Z2))
|
||||
#if X2_SENSORLESS || Y2_SENSORLESS || Z2_SENSORLESS
|
||||
say_M914();
|
||||
SERIAL_ECHOPGM(" I1");
|
||||
#if HAS_X2_SENSORLESS
|
||||
#if X2_SENSORLESS
|
||||
SERIAL_ECHOPAIR(" X", stepperX2.sgt());
|
||||
#endif
|
||||
#if HAS_Y2_SENSORLESS
|
||||
#if Y2_SENSORLESS
|
||||
SERIAL_ECHOPAIR(" Y", stepperY2.sgt());
|
||||
#endif
|
||||
#if HAS_Z2_SENSORLESS
|
||||
#if Z2_SENSORLESS
|
||||
SERIAL_ECHOPAIR(" Z", stepperZ2.sgt());
|
||||
#endif
|
||||
SERIAL_EOL();
|
||||
|
60
Marlin/drivers.h
Normal file
60
Marlin/drivers.h
Normal file
@@ -0,0 +1,60 @@
|
||||
/**
|
||||
* Marlin 3D Printer Firmware
|
||||
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
||||
*
|
||||
* Based on Sprinter and grbl.
|
||||
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
||||
*
|
||||
* This program 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.
|
||||
*
|
||||
* This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
#ifndef _DRIVERS_H_
|
||||
#define _DRIVERS_H_
|
||||
|
||||
#define A4988 0x001
|
||||
#define DRV8825 0x002
|
||||
#define LV8729 0x003
|
||||
#define L6470 0x104
|
||||
#define TB6560 0x005
|
||||
#define TB6600 0x006
|
||||
#define TMC2100 0x007
|
||||
#define TMC2130 0x108
|
||||
#define TMC2130_STANDALONE 0x008
|
||||
#define TMC2208 0x109
|
||||
#define TMC2208_STANDALONE 0x009
|
||||
#define TMC26X 0x10A
|
||||
#define TMC26X_STANDALONE 0x00A
|
||||
#define TMC2660 0x10B
|
||||
#define TMC2660_STANDALONE 0x00B
|
||||
|
||||
#define AXIS_DRIVER_TYPE(A, T) ( defined(A##_DRIVER_TYPE) && (A##_DRIVER_TYPE == T) )
|
||||
|
||||
#define HAS_DRIVER(T) (AXIS_DRIVER_TYPE( X,T) || AXIS_DRIVER_TYPE(X2,T) || \
|
||||
AXIS_DRIVER_TYPE( Y,T) || AXIS_DRIVER_TYPE(Y2,T) || \
|
||||
AXIS_DRIVER_TYPE( Z,T) || AXIS_DRIVER_TYPE(Z2,T) || \
|
||||
AXIS_DRIVER_TYPE(E0,T) || \
|
||||
AXIS_DRIVER_TYPE(E1,T) || \
|
||||
AXIS_DRIVER_TYPE(E2,T) || \
|
||||
AXIS_DRIVER_TYPE(E3,T) || \
|
||||
AXIS_DRIVER_TYPE(E4,T) )
|
||||
|
||||
// Test for supported TMC drivers that require advanced configuration
|
||||
// Does not match standalone configurations
|
||||
#define HAS_TRINAMIC ( HAS_DRIVER(TMC2130) || HAS_DRIVER(TMC2208) || HAS_DRIVER(TMC2660) )
|
||||
|
||||
#define AXIS_IS_TMC(A) ( AXIS_DRIVER_TYPE(A, TMC2130) || \
|
||||
AXIS_DRIVER_TYPE(A, TMC2208) || \
|
||||
AXIS_DRIVER_TYPE(A, TMC2660) )
|
||||
|
||||
#endif // _DRIVERS_H_
|
@@ -549,6 +549,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -549,6 +549,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -536,6 +536,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -517,6 +517,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -530,6 +530,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -821,15 +821,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -840,7 +840,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -852,7 +852,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1020,23 +1020,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
|
||||
@@ -1087,34 +1076,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1122,22 +1093,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1292,25 +1248,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
|
||||
|
@@ -517,6 +517,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -528,6 +528,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -539,6 +539,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -548,6 +548,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -539,6 +539,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -533,6 +533,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -533,6 +533,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -539,6 +539,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -510,6 +510,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -510,6 +510,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -534,6 +534,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -544,6 +544,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -544,6 +544,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -544,6 +544,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -533,6 +533,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -541,6 +541,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -538,6 +538,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -525,6 +525,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -542,6 +542,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -580,6 +580,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -540,6 +540,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -559,6 +559,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -816,15 +816,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -835,7 +835,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -847,7 +847,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1015,23 +1015,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
|
||||
@@ -1082,34 +1071,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1117,22 +1088,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1287,25 +1243,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
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -813,15 +813,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -832,7 +832,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -844,7 +844,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1012,23 +1012,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
|
||||
@@ -1079,34 +1068,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1114,22 +1085,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1284,25 +1240,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
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -539,6 +539,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -815,15 +815,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -834,7 +834,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -846,7 +846,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1014,23 +1014,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
|
||||
@@ -1081,34 +1070,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1116,22 +1087,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1286,25 +1242,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
|
||||
|
@@ -529,6 +529,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -605,6 +605,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -815,15 +815,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -834,7 +834,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -846,7 +846,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1014,23 +1014,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
|
||||
@@ -1081,34 +1070,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1116,22 +1087,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1286,25 +1242,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
|
||||
|
@@ -605,6 +605,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -815,15 +815,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -834,7 +834,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -846,7 +846,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1014,23 +1014,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
|
||||
@@ -1081,34 +1070,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1116,22 +1087,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1286,25 +1242,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
|
||||
|
@@ -605,6 +605,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -815,15 +815,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -834,7 +834,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -846,7 +846,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1014,23 +1014,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
|
||||
@@ -1081,34 +1070,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1116,22 +1087,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1286,25 +1242,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
|
||||
|
@@ -610,6 +610,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -595,6 +595,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -815,15 +815,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -834,7 +834,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -846,7 +846,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1014,23 +1014,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
|
||||
@@ -1081,34 +1070,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1116,22 +1087,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1286,25 +1242,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
|
||||
|
@@ -595,6 +595,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -815,15 +815,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -834,7 +834,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -846,7 +846,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1014,23 +1014,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
|
||||
@@ -1081,34 +1070,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1116,22 +1087,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1286,25 +1242,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
|
||||
|
@@ -581,6 +581,29 @@
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the probe.
|
||||
|
||||
/**
|
||||
* Specify Stepper Driver types
|
||||
* The options are used to determine driver pulse timings as well as more advanced functionality.
|
||||
* Stepper timing options can be overridden in Configuration_adv.h
|
||||
*
|
||||
* Options: A4988, DRV8825, LV8729, L6470, TB6560, TB6600, TMC2100,
|
||||
* TMC2130, TMC2130_STANDALONE, TMC2208, TMC2208_STANDALONE,
|
||||
* TMC26X, TMC26X_STANDALONE, TMC2660, TMC2660_STANDALONE,
|
||||
* TMC5130, TMC5130_STANDALONE
|
||||
* :['A4988', 'DRV8825', 'LV8729', 'L6470', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE']
|
||||
*/
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
#define X2_DRIVER_TYPE A4988
|
||||
#define Y2_DRIVER_TYPE A4988
|
||||
#define Z2_DRIVER_TYPE A4988
|
||||
#define E0_DRIVER_TYPE A4988
|
||||
#define E1_DRIVER_TYPE A4988
|
||||
#define E2_DRIVER_TYPE A4988
|
||||
#define E3_DRIVER_TYPE A4988
|
||||
#define E4_DRIVER_TYPE A4988
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
//#define ENDSTOP_INTERRUPTS_FEATURE
|
||||
|
@@ -820,15 +820,15 @@
|
||||
|
||||
/**
|
||||
* 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
|
||||
* 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)
|
||||
*/
|
||||
#define MINIMUM_STEPPER_DIR_DELAY 0
|
||||
//#define MINIMUM_STEPPER_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -839,7 +839,7 @@
|
||||
* 3 : Minimum for TB6600 stepper drivers
|
||||
* 30 : Minimum for TB6560 stepper drivers
|
||||
*/
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -851,7 +851,7 @@
|
||||
* 130000 : Maximum for LV8729 stepper driver
|
||||
* 15000 : Maximum for TB6560 stepper driver
|
||||
*/
|
||||
#define MAXIMUM_STEPPER_RATE 250000
|
||||
//#define MAXIMUM_STEPPER_RATE 250000
|
||||
|
||||
// @section temperature
|
||||
|
||||
@@ -1019,23 +1019,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
|
||||
@@ -1086,34 +1075,16 @@
|
||||
// @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.
|
||||
*
|
||||
* You'll also need the TMC2130Stepper Arduino library
|
||||
* (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.
|
||||
@@ -1121,22 +1092,7 @@
|
||||
* You'll also need the TMC2208Stepper Arduino library
|
||||
* (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
|
||||
@@ -1291,25 +1247,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
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user