mirror of
https://github.com/MarlinFirmware/Marlin.git
synced 2024-11-27 13:56:24 +00:00
Patch and clean up "flsun" kossel. Followup to #5911.
This commit is contained in:
parent
b2270b3f3e
commit
6aa81255a9
File diff suppressed because it is too large
Load Diff
@ -217,13 +217,12 @@
|
||||
* Multiple extruders can be assigned to the same pin in which case
|
||||
* the fan will turn on when any selected extruder is above the threshold.
|
||||
*/
|
||||
|
||||
#define E0_AUTO_FAN_PIN -1
|
||||
#define E1_AUTO_FAN_PIN -1
|
||||
#define E2_AUTO_FAN_PIN -1
|
||||
#define E3_AUTO_FAN_PIN -1
|
||||
#define EXTRUDER_AUTO_FAN_TEMPERATURE 50
|
||||
#define EXTRUDER_AUTO_FAN_SPEED 255 // 255 == full speed
|
||||
#define EXTRUDER_AUTO_FAN_SPEED 255 // == full speed
|
||||
|
||||
// Define a pin to turn case light on/off
|
||||
//#define CASE_LIGHT_PIN 4
|
||||
@ -309,13 +308,13 @@
|
||||
// Remember: you should set the second extruder x-offset to 0 in your slicer.
|
||||
|
||||
// There are a few selectable movement modes for dual x-carriages using M605 S<mode>
|
||||
// Mode 0: Full control. The slicer has full control over both x-carriages and can achieve optimal travel results
|
||||
// as long as it supports dual x-carriages. (M605 S0)
|
||||
// Mode 1: Auto-park mode. The firmware will automatically park and unpark the x-carriages on tool changes so
|
||||
// that additional slicer support is not required. (M605 S1)
|
||||
// Mode 2: Duplication mode. The firmware will transparently make the second x-carriage and extruder copy all
|
||||
// actions of the first x-carriage. This allows the printer to print 2 arbitrary items at
|
||||
// once. (2nd extruder x offset and temp offset are set using: M605 S2 [Xnnn] [Rmmm])
|
||||
// Mode 0 (DXC_FULL_CONTROL_MODE): Full control. The slicer has full control over both x-carriages and can achieve optimal travel results
|
||||
// as long as it supports dual x-carriages. (M605 S0)
|
||||
// Mode 1 (DXC_AUTO_PARK_MODE) : Auto-park mode. The firmware will automatically park and unpark the x-carriages on tool changes so
|
||||
// that additional slicer support is not required. (M605 S1)
|
||||
// Mode 2 (DXC_DUPLICATION_MODE) : Duplication mode. The firmware will transparently make the second x-carriage and extruder copy all
|
||||
// actions of the first x-carriage. This allows the printer to print 2 arbitrary items at
|
||||
// once. (2nd extruder x offset and temp offset are set using: M605 S2 [Xnnn] [Rmmm])
|
||||
|
||||
// This is the default power-up mode which can be later using M605.
|
||||
#define DEFAULT_DUAL_X_CARRIAGE_MODE DXC_FULL_CONTROL_MODE
|
||||
@ -428,6 +427,9 @@
|
||||
// On the Info Screen, display XY with one decimal place when possible
|
||||
//#define LCD_DECIMAL_SMALL_XY
|
||||
|
||||
// The timeout (in ms) to return to the status screen from sub-menus
|
||||
//#define LCD_TIMEOUT_TO_STATUS 15000
|
||||
|
||||
#if ENABLED(SDSUPPORT)
|
||||
|
||||
// Some RAMPS and other boards don't detect when an SD card is inserted. You can work
|
||||
@ -445,6 +447,42 @@
|
||||
// using:
|
||||
//#define MENU_ADDAUTOSTART
|
||||
|
||||
/**
|
||||
* Sort SD file listings in alphabetical order.
|
||||
*
|
||||
* With this option enabled, items on SD cards will be sorted
|
||||
* by name for easier navigation.
|
||||
*
|
||||
* By default...
|
||||
*
|
||||
* - Use the slowest -but safest- method for sorting.
|
||||
* - Folders are sorted to the top.
|
||||
* - The sort key is statically allocated.
|
||||
* - No added G-code (M34) support.
|
||||
* - 40 item sorting limit. (Items after the first 40 are unsorted.)
|
||||
*
|
||||
* SD sorting uses static allocation (as set by SDSORT_LIMIT), allowing the
|
||||
* compiler to calculate the worst-case usage and throw an error if the SRAM
|
||||
* limit is exceeded.
|
||||
*
|
||||
* - SDSORT_USES_RAM provides faster sorting via a static directory buffer.
|
||||
* - SDSORT_USES_STACK does the same, but uses a local stack-based buffer.
|
||||
* - SDSORT_CACHE_NAMES will retain the sorted file listing in RAM. (Expensive!)
|
||||
* - SDSORT_DYNAMIC_RAM only uses RAM when the SD menu is visible. (Use with caution!)
|
||||
*/
|
||||
//#define SDCARD_SORT_ALPHA
|
||||
|
||||
// SD Card Sorting options
|
||||
#if ENABLED(SDCARD_SORT_ALPHA)
|
||||
#define SDSORT_LIMIT 40 // Maximum number of sorted items (10-256).
|
||||
#define FOLDER_SORTING -1 // -1=above 0=none 1=below
|
||||
#define SDSORT_GCODE false // Allow turning sorting on/off with LCD and M34 g-code.
|
||||
#define SDSORT_USES_RAM false // Pre-allocate a static array for faster pre-sorting.
|
||||
#define SDSORT_USES_STACK false // Prefer the stack for pre-sorting to give back some SRAM. (Negated by next 2 options.)
|
||||
#define SDSORT_CACHE_NAMES false // Keep sorted items in RAM longer for speedy performance. Most expensive option.
|
||||
#define SDSORT_DYNAMIC_RAM false // Use dynamic allocation (within SD menus). Least expensive option. Set SDSORT_LIMIT before use!
|
||||
#endif
|
||||
|
||||
// Show a progress bar on HD44780 LCDs for SD printing
|
||||
//#define LCD_PROGRESS_BAR
|
||||
|
||||
@ -457,6 +495,8 @@
|
||||
#define PROGRESS_MSG_EXPIRE 0
|
||||
// Enable this to show messages for MSG_TIME then hide them
|
||||
//#define PROGRESS_MSG_ONCE
|
||||
// Add a menu item to test the progress bar:
|
||||
//#define LCD_PROGRESS_BAR_TEST
|
||||
#endif
|
||||
|
||||
// This allows hosts to request long names for files and folders with M33
|
||||
@ -469,8 +509,25 @@
|
||||
|
||||
#endif // SDSUPPORT
|
||||
|
||||
// Some additional options are available for graphical displays:
|
||||
/**
|
||||
* Additional options for Graphical Displays
|
||||
*
|
||||
* Use the optimizations here to improve printing performance,
|
||||
* which can be adversely affected by graphical display drawing,
|
||||
* especially when doing several short moves, and when printing
|
||||
* on DELTA and SCARA machines.
|
||||
*
|
||||
* Some of these options may result in the display lagging behind
|
||||
* controller events, as there is a trade-off between reliable
|
||||
* printing performance versus fast display updates.
|
||||
*/
|
||||
#if ENABLED(DOGLCD)
|
||||
// Enable to save many cycles by drawing a hollow frame on the Info Screen
|
||||
#define XYZ_HOLLOW_FRAME
|
||||
|
||||
// Enable to save many cycles by drawing a hollow frame on Menu Screens
|
||||
#define MENU_HOLLOW_FRAME
|
||||
|
||||
// A bigger font is available for edit items. Costs 3120 bytes of PROGMEM.
|
||||
// Western only. Not available for Cyrillic, Kana, Turkish, Greek, or Chinese.
|
||||
//#define USE_BIG_EDIT_FONT
|
||||
@ -510,36 +567,6 @@
|
||||
#define BABYSTEP_MULTIPLICATOR 1 //faster movements
|
||||
#endif
|
||||
|
||||
//
|
||||
// Ensure Smooth Moves
|
||||
//
|
||||
// Enable this option to prevent the machine from stuttering when printing multiple short segments.
|
||||
// This feature uses two strategies to eliminate stuttering:
|
||||
//
|
||||
// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
|
||||
// completely drained. When this happens pauses are introduced between short segments, and print moves
|
||||
// will become jerky until a longer segment provides enough time for the buffer to be filled again.
|
||||
// This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
|
||||
// by pausing the LCD until there's enough time to safely update.
|
||||
//
|
||||
// NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
|
||||
// Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
|
||||
//
|
||||
// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
|
||||
// loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
|
||||
// interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
|
||||
// draining.
|
||||
//
|
||||
#define ENSURE_SMOOTH_MOVES
|
||||
#if ENABLED(ENSURE_SMOOTH_MOVES)
|
||||
//#define ALWAYS_ALLOW_MENU // If enabled, the menu will always be responsive.
|
||||
// WARNING: Menu navigation during short moves may cause stuttering!
|
||||
#define LCD_UPDATE_THRESHOLD 135 // (ms) Minimum duration for the current segment to allow an LCD update.
|
||||
// Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
|
||||
// You may try to lower this value until you printer starts stuttering again as if ENSURE_SMOOTH_MOVES is disabled.
|
||||
#define MIN_BLOCK_TIME 6 // (ms) Minimum duration of a single block. You shouldn't need to modify this.
|
||||
#endif
|
||||
|
||||
// @section extruder
|
||||
|
||||
// extruder advance constant (s2/mm3)
|
||||
@ -561,19 +588,37 @@
|
||||
*
|
||||
* Assumption: advance = k * (delta velocity)
|
||||
* K=0 means advance disabled.
|
||||
* To get a rough start value for calibration, measure your "free filament length"
|
||||
* between the hobbed bolt and the nozzle (in cm). Use the formula below that fits
|
||||
* your setup, where L is the "free filament length":
|
||||
*
|
||||
* Filament diameter | 1.75mm | 3.0mm |
|
||||
* ----------------------------|-----------|------------|
|
||||
* Stiff filament (PLA) | K=47*L/10 | K=139*L/10 |
|
||||
* Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 |
|
||||
* See Marlin documentation for calibration instructions.
|
||||
*/
|
||||
//#define LIN_ADVANCE
|
||||
|
||||
#if ENABLED(LIN_ADVANCE)
|
||||
#define LIN_ADVANCE_K 75
|
||||
|
||||
/**
|
||||
* Some Slicers produce Gcode with randomly jumping extrusion widths occasionally.
|
||||
* For example within a 0.4mm perimeter it may produce a single segment of 0.05mm width.
|
||||
* While this is harmless for normal printing (the fluid nature of the filament will
|
||||
* close this very, very tiny gap), it throws off the LIN_ADVANCE pressure adaption.
|
||||
*
|
||||
* For this case LIN_ADVANCE_E_D_RATIO can be used to set the extrusion:distance ratio
|
||||
* to a fixed value. Note that using a fixed ratio will lead to wrong nozzle pressures
|
||||
* if the slicer is using variable widths or layer heights within one print!
|
||||
*
|
||||
* This option sets the default E:D ratio at startup. Use `M905` to override this value.
|
||||
*
|
||||
* Example: `M905 W0.4 H0.2 D1.75`, where:
|
||||
* - W is the extrusion width in mm
|
||||
* - H is the layer height in mm
|
||||
* - D is the filament diameter in mm
|
||||
*
|
||||
* Set to 0 to auto-detect the ratio based on given Gcode G1 print moves.
|
||||
*
|
||||
* Slic3r (including Prusa Slic3r) produces Gcode compatible with the automatic mode.
|
||||
* Cura (as of this writing) may produce Gcode incompatible with the automatic mode.
|
||||
*/
|
||||
#define LIN_ADVANCE_E_D_RATIO 0 // The calculated ratio (or 0) according to the formula W * H / ((D / 2) ^ 2 * PI)
|
||||
// Example: 0.4 * 0.2 / ((1.75 / 2) ^ 2 * PI) = 0.033260135
|
||||
#endif
|
||||
|
||||
// @section leveling
|
||||
@ -680,33 +725,42 @@
|
||||
#define RETRACT_RECOVER_FEEDRATE 8 //default feedrate for recovering from retraction (mm/s)
|
||||
#endif
|
||||
|
||||
// Add support for experimental filament exchange support M600; requires display
|
||||
#if ENABLED(ULTIPANEL)
|
||||
// #define FILAMENT_CHANGE_FEATURE // Enable filament exchange menu and M600 g-code (used for runout sensor too)
|
||||
#if ENABLED(FILAMENT_CHANGE_FEATURE)
|
||||
#define FILAMENT_CHANGE_X_POS 3 // X position of hotend
|
||||
#define FILAMENT_CHANGE_Y_POS 3 // Y position of hotend
|
||||
#define FILAMENT_CHANGE_Z_ADD 10 // Z addition of hotend (lift)
|
||||
#define FILAMENT_CHANGE_XY_FEEDRATE 100 // X and Y axes feedrate in mm/s (also used for delta printers Z axis)
|
||||
#define FILAMENT_CHANGE_Z_FEEDRATE 5 // Z axis feedrate in mm/s (not used for delta printers)
|
||||
#define FILAMENT_CHANGE_RETRACT_LENGTH 2 // Initial retract in mm
|
||||
// It is a short retract used immediately after print interrupt before move to filament exchange position
|
||||
#define FILAMENT_CHANGE_RETRACT_FEEDRATE 60 // Initial retract feedrate in mm/s
|
||||
#define FILAMENT_CHANGE_UNLOAD_LENGTH 100 // Unload filament length from hotend in mm
|
||||
// Longer length for bowden printers to unload filament from whole bowden tube,
|
||||
// shorter lenght for printers without bowden to unload filament from extruder only,
|
||||
// 0 to disable unloading for manual unloading
|
||||
#define FILAMENT_CHANGE_UNLOAD_FEEDRATE 10 // Unload filament feedrate in mm/s - filament unloading can be fast
|
||||
#define FILAMENT_CHANGE_LOAD_LENGTH 0 // Load filament length over hotend in mm
|
||||
// Longer length for bowden printers to fast load filament into whole bowden tube over the hotend,
|
||||
// Short or zero length for printers without bowden where loading is not used
|
||||
#define FILAMENT_CHANGE_LOAD_FEEDRATE 10 // Load filament feedrate in mm/s - filament loading into the bowden tube can be fast
|
||||
#define FILAMENT_CHANGE_EXTRUDE_LENGTH 50 // Extrude filament length in mm after filament is load over the hotend,
|
||||
// 0 to disable for manual extrusion
|
||||
// Filament can be extruded repeatedly from the filament exchange menu to fill the hotend,
|
||||
// or until outcoming filament color is not clear for filament color change
|
||||
#define FILAMENT_CHANGE_EXTRUDE_FEEDRATE 3 // Extrude filament feedrate in mm/s - must be slower than load feedrate
|
||||
#endif
|
||||
/**
|
||||
* Filament Change
|
||||
* Experimental filament change support.
|
||||
* Adds the GCode M600 for initiating filament change.
|
||||
*
|
||||
* Requires an LCD display.
|
||||
* This feature is required for the default FILAMENT_RUNOUT_SCRIPT.
|
||||
*/
|
||||
//#define FILAMENT_CHANGE_FEATURE
|
||||
#if ENABLED(FILAMENT_CHANGE_FEATURE)
|
||||
#define FILAMENT_CHANGE_X_POS 3 // X position of hotend
|
||||
#define FILAMENT_CHANGE_Y_POS 3 // Y position of hotend
|
||||
#define FILAMENT_CHANGE_Z_ADD 10 // Z addition of hotend (lift)
|
||||
#define FILAMENT_CHANGE_XY_FEEDRATE 100 // X and Y axes feedrate in mm/s (also used for delta printers Z axis)
|
||||
#define FILAMENT_CHANGE_Z_FEEDRATE 5 // Z axis feedrate in mm/s (not used for delta printers)
|
||||
#define FILAMENT_CHANGE_RETRACT_FEEDRATE 60 // Initial retract feedrate in mm/s
|
||||
#define FILAMENT_CHANGE_RETRACT_LENGTH 2 // Initial retract in mm
|
||||
// It is a short retract used immediately after print interrupt before move to filament exchange position
|
||||
#define FILAMENT_CHANGE_UNLOAD_FEEDRATE 10 // Unload filament feedrate in mm/s - filament unloading can be fast
|
||||
#define FILAMENT_CHANGE_UNLOAD_LENGTH 100 // Unload filament length from hotend in mm
|
||||
// Longer length for bowden printers to unload filament from whole bowden tube,
|
||||
// shorter length for printers without bowden to unload filament from extruder only,
|
||||
// 0 to disable unloading for manual unloading
|
||||
#define FILAMENT_CHANGE_LOAD_FEEDRATE 6 // Load filament feedrate in mm/s - filament loading into the bowden tube can be fast
|
||||
#define FILAMENT_CHANGE_LOAD_LENGTH 0 // Load filament length over hotend in mm
|
||||
// Longer length for bowden printers to fast load filament into whole bowden tube over the hotend,
|
||||
// Short or zero length for printers without bowden where loading is not used
|
||||
#define FILAMENT_CHANGE_EXTRUDE_FEEDRATE 3 // Extrude filament feedrate in mm/s - must be slower than load feedrate
|
||||
#define FILAMENT_CHANGE_EXTRUDE_LENGTH 50 // Extrude filament length in mm after filament is loaded over the hotend,
|
||||
// 0 to disable for manual extrusion
|
||||
// Filament can be extruded repeatedly from the filament exchange menu to fill the hotend,
|
||||
// or until outcoming filament color is not clear for filament color change
|
||||
#define FILAMENT_CHANGE_NOZZLE_TIMEOUT 45L // Turn off nozzle if user doesn't change filament within this time limit in seconds
|
||||
#define FILAMENT_CHANGE_NUMBER_OF_ALERT_BEEPS 5L // Number of alert beeps before printer goes quiet
|
||||
#define FILAMENT_CHANGE_NO_STEPPER_TIMEOUT // Enable to have stepper motors hold position during filament change
|
||||
// even if it takes longer than DEFAULT_STEPPER_DEACTIVE_TIME.
|
||||
#endif
|
||||
|
||||
/******************************************************************************\
|
||||
@ -1101,4 +1155,29 @@
|
||||
*/
|
||||
//#define EXTENDED_CAPABILITIES_REPORT
|
||||
|
||||
/**
|
||||
* Double-click the Encoder button on the Status Screen for Z Babystepping.
|
||||
*/
|
||||
//#define DOUBLECLICK_FOR_Z_BABYSTEPPING
|
||||
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
|
||||
// Note: You may need to add extra time to mitigate controller latency.
|
||||
|
||||
/**
|
||||
* Volumetric extrusion default state
|
||||
* Activate to make volumetric extrusion the default method,
|
||||
* with DEFAULT_NOMINAL_FILAMENT_DIA as the default diameter.
|
||||
*
|
||||
* M200 D0 to disable, M200 Dn to set a new diameter.
|
||||
*/
|
||||
//#define VOLUMETRIC_DEFAULT_ON
|
||||
|
||||
/**
|
||||
* Enable this option for a leaner build of Marlin that removes all
|
||||
* workspace offsets, simplifying coordinate transformations, leveling, etc.
|
||||
*
|
||||
* - M206 and M428 are disabled.
|
||||
* - G92 will revert to its behavior from Marlin 1.0.
|
||||
*/
|
||||
//#define NO_WORKSPACE_OFFSETS
|
||||
|
||||
#endif // CONFIGURATION_ADV_H
|
||||
|
Loading…
Reference in New Issue
Block a user