|
|
@ -264,7 +264,7 @@
|
|
|
|
#define AUTOTEMP_OLDWEIGHT 0.98
|
|
|
|
#define AUTOTEMP_OLDWEIGHT 0.98
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
// Show extra position information in M114
|
|
|
|
// Show extra position information with 'M114 D'
|
|
|
|
//#define M114_DETAIL
|
|
|
|
//#define M114_DETAIL
|
|
|
|
|
|
|
|
|
|
|
|
// Show Temperature ADC value
|
|
|
|
// Show Temperature ADC value
|
|
|
@ -429,6 +429,7 @@
|
|
|
|
#define INVERT_CASE_LIGHT false // Set true if Case Light is ON when pin is LOW
|
|
|
|
#define INVERT_CASE_LIGHT false // Set true if Case Light is ON when pin is LOW
|
|
|
|
#define CASE_LIGHT_DEFAULT_ON true // Set default power-up state on
|
|
|
|
#define CASE_LIGHT_DEFAULT_ON true // Set default power-up state on
|
|
|
|
#define CASE_LIGHT_DEFAULT_BRIGHTNESS 105 // Set default power-up brightness (0-255, requires PWM pin)
|
|
|
|
#define CASE_LIGHT_DEFAULT_BRIGHTNESS 105 // Set default power-up brightness (0-255, requires PWM pin)
|
|
|
|
|
|
|
|
//#define CASE_LIGHT_MAX_PWM 128 // Limit pwm
|
|
|
|
//#define CASE_LIGHT_MENU // Add Case Light options to the LCD menu
|
|
|
|
//#define CASE_LIGHT_MENU // Add Case Light options to the LCD menu
|
|
|
|
//#define CASE_LIGHT_NO_BRIGHTNESS // Disable brightness control. Enable for non-PWM lighting.
|
|
|
|
//#define CASE_LIGHT_NO_BRIGHTNESS // Disable brightness control. Enable for non-PWM lighting.
|
|
|
|
//#define CASE_LIGHT_USE_NEOPIXEL // Use Neopixel LED as case light, requires NEOPIXEL_LED.
|
|
|
|
//#define CASE_LIGHT_USE_NEOPIXEL // Use Neopixel LED as case light, requires NEOPIXEL_LED.
|
|
|
@ -652,20 +653,32 @@
|
|
|
|
//#define Z_STEPPER_AUTO_ALIGN
|
|
|
|
//#define Z_STEPPER_AUTO_ALIGN
|
|
|
|
#if ENABLED(Z_STEPPER_AUTO_ALIGN)
|
|
|
|
#if ENABLED(Z_STEPPER_AUTO_ALIGN)
|
|
|
|
// Define probe X and Y positions for Z1, Z2 [, Z3]
|
|
|
|
// Define probe X and Y positions for Z1, Z2 [, Z3]
|
|
|
|
#define Z_STEPPER_ALIGN_X { 10, 150, 290 }
|
|
|
|
#define Z_STEPPER_ALIGN_XY { { 10, 290 }, { 150, 10 }, { 290, 290 } }
|
|
|
|
#define Z_STEPPER_ALIGN_Y { 290, 10, 290 }
|
|
|
|
|
|
|
|
|
|
|
|
// Provide Z stepper positions for more rapid convergence in bed alignment.
|
|
|
|
|
|
|
|
// Currently requires triple stepper drivers.
|
|
|
|
|
|
|
|
//#define Z_STEPPER_ALIGN_KNOWN_STEPPER_POSITIONS
|
|
|
|
|
|
|
|
#if ENABLED(Z_STEPPER_ALIGN_KNOWN_STEPPER_POSITIONS)
|
|
|
|
|
|
|
|
// Define Stepper XY positions for Z1, Z2, Z3 corresponding to
|
|
|
|
|
|
|
|
// the Z screw positions in the bed carriage.
|
|
|
|
|
|
|
|
// Define one position per Z stepper in stepper driver order.
|
|
|
|
|
|
|
|
#define Z_STEPPER_ALIGN_STEPPER_XY { { 210.7, 102.5 }, { 152.6, 220.0 }, { 94.5, 102.5 } }
|
|
|
|
|
|
|
|
#else
|
|
|
|
|
|
|
|
// Amplification factor. Used to scale the correction step up or down.
|
|
|
|
|
|
|
|
// In case the stepper (spindle) position is further out than the test point.
|
|
|
|
|
|
|
|
// Use a value > 1. NOTE: This may cause instability
|
|
|
|
|
|
|
|
#define Z_STEPPER_ALIGN_AMP 1.0
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
// Set number of iterations to align
|
|
|
|
// Set number of iterations to align
|
|
|
|
#define Z_STEPPER_ALIGN_ITERATIONS 3
|
|
|
|
#define Z_STEPPER_ALIGN_ITERATIONS 3
|
|
|
|
|
|
|
|
|
|
|
|
// Enable to restore leveling setup after operation
|
|
|
|
// Enable to restore leveling setup after operation
|
|
|
|
#define RESTORE_LEVELING_AFTER_G34
|
|
|
|
#define RESTORE_LEVELING_AFTER_G34
|
|
|
|
|
|
|
|
|
|
|
|
// On a 300mm bed a 5% grade would give a misalignment of ~1.5cm
|
|
|
|
// On a 300mm bed a 5% grade would give a misalignment of ~1.5cm
|
|
|
|
#define G34_MAX_GRADE 5 // (%) Maximum incline G34 will handle
|
|
|
|
#define G34_MAX_GRADE 5 // (%) Maximum incline G34 will handle
|
|
|
|
|
|
|
|
|
|
|
|
// Use the amplification factor to de-/increase correction step.
|
|
|
|
|
|
|
|
// In case the stepper (spindle) position is further out than the test point
|
|
|
|
|
|
|
|
// Use a value > 1. NOTE: This may cause instability
|
|
|
|
|
|
|
|
#define Z_STEPPER_ALIGN_AMP 1.0
|
|
|
|
|
|
|
|
// Stop criterion. If the accuracy is better than this stop iterating early
|
|
|
|
// Stop criterion. If the accuracy is better than this stop iterating early
|
|
|
|
#define Z_STEPPER_ALIGN_ACC 0.02
|
|
|
|
#define Z_STEPPER_ALIGN_ACC 0.02
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
@ -939,6 +952,18 @@
|
|
|
|
// Add an 'M73' G-code to set the current percentage
|
|
|
|
// Add an 'M73' G-code to set the current percentage
|
|
|
|
//#define LCD_SET_PROGRESS_MANUALLY
|
|
|
|
//#define LCD_SET_PROGRESS_MANUALLY
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Show the E position (filament used) during printing
|
|
|
|
|
|
|
|
//#define LCD_SHOW_E_TOTAL
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#if HAS_GRAPHICAL_LCD && HAS_PRINT_PROGRESS
|
|
|
|
|
|
|
|
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits
|
|
|
|
|
|
|
|
//#define SHOW_REMAINING_TIME // Display estimated time to completion
|
|
|
|
|
|
|
|
#if ENABLED(SHOW_REMAINING_TIME)
|
|
|
|
|
|
|
|
//#define USE_M73_REMAINING_TIME // Use remaining time from M73 command instead of estimation
|
|
|
|
|
|
|
|
//#define ROTATE_PROGRESS_DISPLAY // Display (P)rogress, (E)lapsed, and (R)emaining time
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if HAS_CHARACTER_LCD && HAS_PRINT_PROGRESS
|
|
|
|
#if HAS_CHARACTER_LCD && HAS_PRINT_PROGRESS
|
|
|
|
//#define LCD_PROGRESS_BAR // Show a progress bar on HD44780 LCDs for SD printing
|
|
|
|
//#define LCD_PROGRESS_BAR // Show a progress bar on HD44780 LCDs for SD printing
|
|
|
|
#if ENABLED(LCD_PROGRESS_BAR)
|
|
|
|
#if ENABLED(LCD_PROGRESS_BAR)
|
|
|
@ -982,6 +1007,8 @@
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
//#define POWER_LOSS_RECOVERY
|
|
|
|
//#define POWER_LOSS_RECOVERY
|
|
|
|
#if ENABLED(POWER_LOSS_RECOVERY)
|
|
|
|
#if ENABLED(POWER_LOSS_RECOVERY)
|
|
|
|
|
|
|
|
//#define BACKUP_POWER_SUPPLY // Backup power / UPS to move the steppers on power loss
|
|
|
|
|
|
|
|
//#define POWER_LOSS_ZRAISE 2 // (mm) Z axis raise on resume (on power loss with UPS)
|
|
|
|
//#define POWER_LOSS_PIN 44 // Pin to detect power loss
|
|
|
|
//#define POWER_LOSS_PIN 44 // Pin to detect power loss
|
|
|
|
//#define POWER_LOSS_STATE HIGH // State of pin indicating power loss
|
|
|
|
//#define POWER_LOSS_STATE HIGH // State of pin indicating power loss
|
|
|
|
//#define POWER_LOSS_PULL // Set pullup / pulldown as appropriate
|
|
|
|
//#define POWER_LOSS_PULL // Set pullup / pulldown as appropriate
|
|
|
@ -1214,9 +1241,47 @@
|
|
|
|
#endif // HAS_GRAPHICAL_LCD
|
|
|
|
#endif // HAS_GRAPHICAL_LCD
|
|
|
|
|
|
|
|
|
|
|
|
//
|
|
|
|
//
|
|
|
|
// Lulzbot Touch UI
|
|
|
|
// Additional options for DGUS / DWIN displays
|
|
|
|
//
|
|
|
|
//
|
|
|
|
#if ENABLED(LULZBOT_TOUCH_UI)
|
|
|
|
#if HAS_DGUS_LCD
|
|
|
|
|
|
|
|
#define DGUS_SERIAL_PORT 2
|
|
|
|
|
|
|
|
#define DGUS_BAUDRATE 115200
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define DGUS_RX_BUFFER_SIZE 128
|
|
|
|
|
|
|
|
#define DGUS_TX_BUFFER_SIZE 48
|
|
|
|
|
|
|
|
//#define DGUS_SERIAL_STATS_RX_BUFFER_OVERRUNS // Fix Rx overrun situation (Currently only for AVR)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define DGUS_UPDATE_INTERVAL_MS 500 // (ms) Interval between automatic screen updates
|
|
|
|
|
|
|
|
#define BOOTSCREEN_TIMEOUT 3000 // (ms) Duration to display the boot screen
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#if EITHER(DGUS_LCD_UI_FYSETC, DGUS_LCD_UI_HIPRECY)
|
|
|
|
|
|
|
|
#define DGUS_PRINT_FILENAME // Display the filename during printing
|
|
|
|
|
|
|
|
#define DGUS_PREHEAT_UI // Display a preheat screen during heatup
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#if ENABLED(DGUS_LCD_UI_FYSETC)
|
|
|
|
|
|
|
|
//#define DUGS_UI_MOVE_DIS_OPTION // Disabled by default for UI_FYSETC
|
|
|
|
|
|
|
|
#else
|
|
|
|
|
|
|
|
#define DUGS_UI_MOVE_DIS_OPTION // Enabled by default for UI_HIPRECY
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define DGUS_FILAMENT_LOADUNLOAD
|
|
|
|
|
|
|
|
#if ENABLED(DGUS_FILAMENT_LOADUNLOAD)
|
|
|
|
|
|
|
|
#define DGUS_FILAMENT_PURGE_LENGTH 10
|
|
|
|
|
|
|
|
#define DGUS_FILAMENT_LOAD_LENGTH_PER_TIME 0.5 // (mm) Adjust in proportion to DGUS_UPDATE_INTERVAL_MS
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#define DGUS_UI_WAITING // Show a "waiting" screen between some screens
|
|
|
|
|
|
|
|
#if ENABLED(DGUS_UI_WAITING)
|
|
|
|
|
|
|
|
#define DGUS_UI_WAITING_STATUS 10
|
|
|
|
|
|
|
|
#define DGUS_UI_WAITING_STATUS_PERIOD 8 // Increase to slower waiting status looping
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif // HAS_DGUS_LCD
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
// Touch UI for the FTDI Embedded Video Engine (EVE)
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
#if ENABLED(TOUCH_UI_FTDI_EVE)
|
|
|
|
// Display board used
|
|
|
|
// Display board used
|
|
|
|
//#define LCD_FTDI_VM800B35A // FTDI 3.5" with FT800 (320x240)
|
|
|
|
//#define LCD_FTDI_VM800B35A // FTDI 3.5" with FT800 (320x240)
|
|
|
|
//#define LCD_4DSYSTEMS_4DLCD_FT843 // 4D Systems 4.3" (480x272)
|
|
|
|
//#define LCD_4DSYSTEMS_4DLCD_FT843 // 4D Systems 4.3" (480x272)
|
|
|
@ -1255,21 +1320,48 @@
|
|
|
|
//#define TOUCH_UI_PORTRAIT
|
|
|
|
//#define TOUCH_UI_PORTRAIT
|
|
|
|
//#define TOUCH_UI_MIRRORED
|
|
|
|
//#define TOUCH_UI_MIRRORED
|
|
|
|
|
|
|
|
|
|
|
|
// Enable UTF8 rendering capabilities.
|
|
|
|
// UTF8 processing and rendering.
|
|
|
|
|
|
|
|
// Unsupported characters are shown as '?'.
|
|
|
|
//#define TOUCH_UI_USE_UTF8
|
|
|
|
//#define TOUCH_UI_USE_UTF8
|
|
|
|
#if ENABLED(TOUCH_UI_USE_UTF8)
|
|
|
|
#if ENABLED(TOUCH_UI_USE_UTF8)
|
|
|
|
|
|
|
|
// Western accents support. These accented characters use
|
|
|
|
|
|
|
|
// combined bitmaps and require relatively little storage.
|
|
|
|
#define TOUCH_UI_UTF8_WESTERN_CHARSET
|
|
|
|
#define TOUCH_UI_UTF8_WESTERN_CHARSET
|
|
|
|
|
|
|
|
#if ENABLED(TOUCH_UI_UTF8_WESTERN_CHARSET)
|
|
|
|
|
|
|
|
// Additional character groups. These characters require
|
|
|
|
|
|
|
|
// full bitmaps and take up considerable storage:
|
|
|
|
|
|
|
|
//#define TOUCH_UI_UTF8_SUPERSCRIPTS // ¹ ² ³
|
|
|
|
|
|
|
|
//#define TOUCH_UI_UTF8_COPYRIGHT // © ®
|
|
|
|
|
|
|
|
//#define TOUCH_UI_UTF8_GERMANIC // ß
|
|
|
|
|
|
|
|
//#define TOUCH_UI_UTF8_SCANDINAVIAN // Æ Ð Ø Þ æ ð ø þ
|
|
|
|
|
|
|
|
//#define TOUCH_UI_UTF8_PUNCTUATION // « » ¿ ¡
|
|
|
|
|
|
|
|
//#define TOUCH_UI_UTF8_CURRENCY // ¢ £ ¤ ¥
|
|
|
|
|
|
|
|
//#define TOUCH_UI_UTF8_ORDINALS // º ª
|
|
|
|
|
|
|
|
//#define TOUCH_UI_UTF8_MATHEMATICS // ± × ÷
|
|
|
|
|
|
|
|
//#define TOUCH_UI_UTF8_FRACTIONS // ¼ ½ ¾
|
|
|
|
|
|
|
|
//#define TOUCH_UI_UTF8_SYMBOLS // µ ¶ ¦ § ¬
|
|
|
|
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
// When labels do not fit buttons, use smaller font
|
|
|
|
// Use a smaller font when labels don't fit buttons
|
|
|
|
#define TOUCH_UI_FIT_TEXT
|
|
|
|
#define TOUCH_UI_FIT_TEXT
|
|
|
|
|
|
|
|
|
|
|
|
// Runtime language selection (otherwise LCD_LANGUAGE)
|
|
|
|
// Allow language selection from menu at run-time (otherwise use LCD_LANGUAGE)
|
|
|
|
//#define TOUCH_UI_LANGUAGE_MENU
|
|
|
|
//#define LCD_LANGUAGE_1 en
|
|
|
|
|
|
|
|
//#define LCD_LANGUAGE_2 fr
|
|
|
|
|
|
|
|
//#define LCD_LANGUAGE_3 de
|
|
|
|
|
|
|
|
//#define LCD_LANGUAGE_4 es
|
|
|
|
|
|
|
|
//#define LCD_LANGUAGE_5 it
|
|
|
|
|
|
|
|
|
|
|
|
// Use a numeric passcode for "Screen lock" keypad.
|
|
|
|
// Use a numeric passcode for "Screen lock" keypad.
|
|
|
|
// (recommended for smaller displays)
|
|
|
|
// (recommended for smaller displays)
|
|
|
|
//#define TOUCH_UI_PASSCODE
|
|
|
|
//#define TOUCH_UI_PASSCODE
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Output extra debug info for Touch UI events
|
|
|
|
|
|
|
|
//#define TOUCH_UI_DEBUG
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Developer menu (accessed by touching "About Printer" copyright text)
|
|
|
|
|
|
|
|
//#define TOUCH_UI_DEVELOPER_MENU
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
//
|
|
|
|
//
|
|
|
@ -1314,7 +1406,8 @@
|
|
|
|
//#define BABYSTEP_WITHOUT_HOMING
|
|
|
|
//#define BABYSTEP_WITHOUT_HOMING
|
|
|
|
//#define BABYSTEP_XY // Also enable X/Y Babystepping. Not supported on DELTA!
|
|
|
|
//#define BABYSTEP_XY // Also enable X/Y Babystepping. Not supported on DELTA!
|
|
|
|
#define BABYSTEP_INVERT_Z false // Change if Z babysteps should go the other way
|
|
|
|
#define BABYSTEP_INVERT_Z false // Change if Z babysteps should go the other way
|
|
|
|
#define BABYSTEP_MULTIPLICATOR 1 // Babysteps are very small. Increase for faster motion.
|
|
|
|
#define BABYSTEP_MULTIPLICATOR_Z 1 // Babysteps are very small. Increase for faster motion.
|
|
|
|
|
|
|
|
#define BABYSTEP_MULTIPLICATOR_XY 1
|
|
|
|
|
|
|
|
|
|
|
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING // Double-click on the Status Screen for Z Babystepping.
|
|
|
|
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING // Double-click on the Status Screen for Z Babystepping.
|
|
|
|
#if ENABLED(DOUBLECLICK_FOR_Z_BABYSTEPPING)
|
|
|
|
#if ENABLED(DOUBLECLICK_FOR_Z_BABYSTEPPING)
|
|
|
@ -1363,6 +1456,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
// @section leveling
|
|
|
|
// @section leveling
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* Points to probe for all 3-point Leveling procedures.
|
|
|
|
|
|
|
|
* Override if the automatically selected points are inadequate.
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
#if EITHER(AUTO_BED_LEVELING_3POINT, AUTO_BED_LEVELING_UBL)
|
|
|
|
|
|
|
|
//#define PROBE_PT_1_X 15
|
|
|
|
|
|
|
|
//#define PROBE_PT_1_Y 180
|
|
|
|
|
|
|
|
//#define PROBE_PT_2_X 15
|
|
|
|
|
|
|
|
//#define PROBE_PT_2_Y 20
|
|
|
|
|
|
|
|
//#define PROBE_PT_3_X 170
|
|
|
|
|
|
|
|
//#define PROBE_PT_3_Y 20
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* Override MIN_PROBE_EDGE for each side of the build plate
|
|
|
|
|
|
|
|
* Useful to get probe points to exact positions on targets or
|
|
|
|
|
|
|
|
* to allow leveling to avoid plate clamps on only specific
|
|
|
|
|
|
|
|
* sides of the bed. With NOZZLE_AS_PROBE negative values are
|
|
|
|
|
|
|
|
* allowed, to permit probing outside the bed.
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* If you are replacing the prior *_PROBE_BED_POSITION options,
|
|
|
|
|
|
|
|
* LEFT and FRONT values in most cases will map directly over
|
|
|
|
|
|
|
|
* RIGHT and REAR would be the inverse such as
|
|
|
|
|
|
|
|
* (X/Y_BED_SIZE - RIGHT/BACK_PROBE_BED_POSITION)
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* This will allow all positions to match at compilation, however
|
|
|
|
|
|
|
|
* should the probe position be modified with M851XY then the
|
|
|
|
|
|
|
|
* probe points will follow. This prevents any change from causing
|
|
|
|
|
|
|
|
* the probe to be unable to reach any points.
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
#if PROBE_SELECTED && !IS_KINEMATIC
|
|
|
|
|
|
|
|
//#define MIN_PROBE_EDGE_LEFT MIN_PROBE_EDGE
|
|
|
|
|
|
|
|
//#define MIN_PROBE_EDGE_RIGHT MIN_PROBE_EDGE
|
|
|
|
|
|
|
|
//#define MIN_PROBE_EDGE_FRONT MIN_PROBE_EDGE
|
|
|
|
|
|
|
|
//#define MIN_PROBE_EDGE_BACK MIN_PROBE_EDGE
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if EITHER(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL)
|
|
|
|
#if EITHER(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL)
|
|
|
|
// Override the mesh area if the automatic (max) area is too large
|
|
|
|
// Override the mesh area if the automatic (max) area is too large
|
|
|
|
//#define MESH_MIN_X MESH_INSET
|
|
|
|
//#define MESH_MIN_X MESH_INSET
|
|
|
@ -1788,94 +1918,101 @@
|
|
|
|
#define INTERPOLATE true // Interpolate X/Y/Z_MICROSTEPS to 256
|
|
|
|
#define INTERPOLATE true // Interpolate X/Y/Z_MICROSTEPS to 256
|
|
|
|
|
|
|
|
|
|
|
|
#if AXIS_IS_TMC(X)
|
|
|
|
#if AXIS_IS_TMC(X)
|
|
|
|
#define X_CURRENT 800 // (mA) RMS current. Multiply by 1.414 for peak current.
|
|
|
|
#define X_CURRENT 800 // (mA) RMS current. Multiply by 1.414 for peak current.
|
|
|
|
#define X_MICROSTEPS 16 // 0..256
|
|
|
|
#define X_CURRENT_HOME X_CURRENT // (mA) RMS current for sensorless homing
|
|
|
|
#define X_RSENSE 0.11
|
|
|
|
#define X_MICROSTEPS 16 // 0..256
|
|
|
|
#define X_CHAIN_POS 0 // 0 - Not chained, 1 - MCU MOSI connected, 2 - next in chain, ...
|
|
|
|
#define X_RSENSE 0.11
|
|
|
|
|
|
|
|
#define X_CHAIN_POS -1 // <=0 : Not chained. 1 : MCU MOSI connected. 2 : Next in chain, ...
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if AXIS_IS_TMC(X2)
|
|
|
|
#if AXIS_IS_TMC(X2)
|
|
|
|
#define X2_CURRENT 800
|
|
|
|
#define X2_CURRENT 800
|
|
|
|
#define X2_MICROSTEPS 16
|
|
|
|
#define X2_CURRENT_HOME X2_CURRENT
|
|
|
|
#define X2_RSENSE 0.11
|
|
|
|
#define X2_MICROSTEPS 16
|
|
|
|
#define X2_CHAIN_POS 0
|
|
|
|
#define X2_RSENSE 0.11
|
|
|
|
|
|
|
|
#define X2_CHAIN_POS -1
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if AXIS_IS_TMC(Y)
|
|
|
|
#if AXIS_IS_TMC(Y)
|
|
|
|
#define Y_CURRENT 800
|
|
|
|
#define Y_CURRENT 800
|
|
|
|
#define Y_MICROSTEPS 16
|
|
|
|
#define Y_CURRENT_HOME Y_CURRENT
|
|
|
|
#define Y_RSENSE 0.11
|
|
|
|
#define Y_MICROSTEPS 16
|
|
|
|
#define Y_CHAIN_POS 0
|
|
|
|
#define Y_RSENSE 0.11
|
|
|
|
|
|
|
|
#define Y_CHAIN_POS -1
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if AXIS_IS_TMC(Y2)
|
|
|
|
#if AXIS_IS_TMC(Y2)
|
|
|
|
#define Y2_CURRENT 800
|
|
|
|
#define Y2_CURRENT 800
|
|
|
|
#define Y2_MICROSTEPS 16
|
|
|
|
#define Y2_CURRENT_HOME Y2_CURRENT
|
|
|
|
#define Y2_RSENSE 0.11
|
|
|
|
#define Y2_MICROSTEPS 16
|
|
|
|
#define Y2_CHAIN_POS 0
|
|
|
|
#define Y2_RSENSE 0.11
|
|
|
|
|
|
|
|
#define Y2_CHAIN_POS -1
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if AXIS_IS_TMC(Z)
|
|
|
|
#if AXIS_IS_TMC(Z)
|
|
|
|
#define Z_CURRENT 800
|
|
|
|
#define Z_CURRENT 800
|
|
|
|
#define Z_MICROSTEPS 16
|
|
|
|
#define Z_CURRENT_HOME Z_CURRENT
|
|
|
|
#define Z_RSENSE 0.11
|
|
|
|
#define Z_MICROSTEPS 16
|
|
|
|
#define Z_CHAIN_POS 0
|
|
|
|
#define Z_RSENSE 0.11
|
|
|
|
|
|
|
|
#define Z_CHAIN_POS -1
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if AXIS_IS_TMC(Z2)
|
|
|
|
#if AXIS_IS_TMC(Z2)
|
|
|
|
#define Z2_CURRENT 800
|
|
|
|
#define Z2_CURRENT 800
|
|
|
|
#define Z2_MICROSTEPS 16
|
|
|
|
#define Z2_CURRENT_HOME Z2_CURRENT
|
|
|
|
#define Z2_RSENSE 0.11
|
|
|
|
#define Z2_MICROSTEPS 16
|
|
|
|
#define Z2_CHAIN_POS 0
|
|
|
|
#define Z2_RSENSE 0.11
|
|
|
|
|
|
|
|
#define Z2_CHAIN_POS -1
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if AXIS_IS_TMC(Z3)
|
|
|
|
#if AXIS_IS_TMC(Z3)
|
|
|
|
#define Z3_CURRENT 800
|
|
|
|
#define Z3_CURRENT 800
|
|
|
|
#define Z3_MICROSTEPS 16
|
|
|
|
#define Z3_CURRENT_HOME Z3_CURRENT
|
|
|
|
#define Z3_RSENSE 0.11
|
|
|
|
#define Z3_MICROSTEPS 16
|
|
|
|
#define Z3_CHAIN_POS 0
|
|
|
|
#define Z3_RSENSE 0.11
|
|
|
|
|
|
|
|
#define Z3_CHAIN_POS -1
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if AXIS_IS_TMC(E0)
|
|
|
|
#if AXIS_IS_TMC(E0)
|
|
|
|
#define E0_CURRENT 800
|
|
|
|
#define E0_CURRENT 800
|
|
|
|
#define E0_MICROSTEPS 16
|
|
|
|
#define E0_MICROSTEPS 16
|
|
|
|
#define E0_RSENSE 0.11
|
|
|
|
#define E0_RSENSE 0.11
|
|
|
|
#define E0_CHAIN_POS 0
|
|
|
|
#define E0_CHAIN_POS -1
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if AXIS_IS_TMC(E1)
|
|
|
|
#if AXIS_IS_TMC(E1)
|
|
|
|
#define E1_CURRENT 800
|
|
|
|
#define E1_CURRENT 800
|
|
|
|
#define E1_MICROSTEPS 16
|
|
|
|
#define E1_MICROSTEPS 16
|
|
|
|
#define E1_RSENSE 0.11
|
|
|
|
#define E1_RSENSE 0.11
|
|
|
|
#define E1_CHAIN_POS 0
|
|
|
|
#define E1_CHAIN_POS -1
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if AXIS_IS_TMC(E2)
|
|
|
|
#if AXIS_IS_TMC(E2)
|
|
|
|
#define E2_CURRENT 800
|
|
|
|
#define E2_CURRENT 800
|
|
|
|
#define E2_MICROSTEPS 16
|
|
|
|
#define E2_MICROSTEPS 16
|
|
|
|
#define E2_RSENSE 0.11
|
|
|
|
#define E2_RSENSE 0.11
|
|
|
|
#define E2_CHAIN_POS 0
|
|
|
|
#define E2_CHAIN_POS -1
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if AXIS_IS_TMC(E3)
|
|
|
|
#if AXIS_IS_TMC(E3)
|
|
|
|
#define E3_CURRENT 800
|
|
|
|
#define E3_CURRENT 800
|
|
|
|
#define E3_MICROSTEPS 16
|
|
|
|
#define E3_MICROSTEPS 16
|
|
|
|
#define E3_RSENSE 0.11
|
|
|
|
#define E3_RSENSE 0.11
|
|
|
|
#define E3_CHAIN_POS 0
|
|
|
|
#define E3_CHAIN_POS -1
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if AXIS_IS_TMC(E4)
|
|
|
|
#if AXIS_IS_TMC(E4)
|
|
|
|
#define E4_CURRENT 800
|
|
|
|
#define E4_CURRENT 800
|
|
|
|
#define E4_MICROSTEPS 16
|
|
|
|
#define E4_MICROSTEPS 16
|
|
|
|
#define E4_RSENSE 0.11
|
|
|
|
#define E4_RSENSE 0.11
|
|
|
|
#define E4_CHAIN_POS 0
|
|
|
|
#define E4_CHAIN_POS -1
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if AXIS_IS_TMC(E5)
|
|
|
|
#if AXIS_IS_TMC(E5)
|
|
|
|
#define E5_CURRENT 800
|
|
|
|
#define E5_CURRENT 800
|
|
|
|
#define E5_MICROSTEPS 16
|
|
|
|
#define E5_MICROSTEPS 16
|
|
|
|
#define E5_RSENSE 0.11
|
|
|
|
#define E5_RSENSE 0.11
|
|
|
|
#define E5_CHAIN_POS 0
|
|
|
|
#define E5_CHAIN_POS -1
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
@ -2069,8 +2206,8 @@
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* Example:
|
|
|
|
* Example:
|
|
|
|
* #define TMC_ADV() { \
|
|
|
|
* #define TMC_ADV() { \
|
|
|
|
* stepperX.diag0_temp_prewarn(1); \
|
|
|
|
* stepperX.diag0_otpw(1); \
|
|
|
|
* stepperY.interpolate(0); \
|
|
|
|
* stepperY.intpol(0); \
|
|
|
|
* }
|
|
|
|
* }
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
#define TMC_ADV() { }
|
|
|
|
#define TMC_ADV() { }
|
|
|
@ -2546,6 +2683,13 @@
|
|
|
|
//#define HOST_PROMPT_SUPPORT
|
|
|
|
//#define HOST_PROMPT_SUPPORT
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* Cancel Objects
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* Implement M486 to allow Marlin to skip objects
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
//#define CANCEL_OBJECTS
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* I2C position encoders for closed loop control.
|
|
|
|
* I2C position encoders for closed loop control.
|
|
|
|
* Developed by Chris Barr at Aus3D.
|
|
|
|
* Developed by Chris Barr at Aus3D.
|
|
|
|