Browse Source

Update ENSURE_SMOOTH_MOVES in all configs

Scott Lahteine 7 years ago
parent
commit
072541f286

+ 25
- 16
Marlin/Configuration_adv.h View File

@@ -496,24 +496,33 @@
496 496
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
497 497
 #endif
498 498
 
499
-// Enabling ENSURE_SMOOTH_MOVES ensures your printer will never stutter (for example in circles with a short segments). That's done in two steps:
500
-// --1--
501
-// During short segments like in circles, the update of the LCD Display can take so long that the block buffer gets completely drained.
502
-// If that happens, the movement of the printer gets very jerky until a longer segment like a longer straight line allows the buffer
503
-// to be filled again. This small stops also effects print quality in a bad way.
504
-// Enable ENSURE_SMOOTH_MOVES to update the LCD only when there is enough time during a move to do so.
505
-// Note that this means the display will not show actual values during this time and your printer will also not react to buttons
506
-// pressed immediately, except ALWAYS_ALLOW_MENU is also enabled.
507
-// --2--
508
-// 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, checking temps,
509
-// including all interruptions due to interrupts, but without LCD update. If we would allow shorter moves, the buffer would start continously draining.
499
+//
500
+// Ensure Smooth Moves
501
+//
502
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
503
+// This feature uses two strategies to eliminate stuttering:
504
+//
505
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
506
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
507
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
508
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
509
+//    by pausing the LCD until there's enough time to safely update.
510
+//
511
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
512
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
513
+//
514
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
515
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
516
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
517
+//    draining.
518
+//
510 519
 //#define ENSURE_SMOOTH_MOVES
511 520
 #if ENABLED(ENSURE_SMOOTH_MOVES)
512
-  //#define ALWAYS_ALLOW_MENU // If enabled, the menu will be always accessible.
513
-                              // WARNING: If the menu is entered or navigated during short moves, the printer will stutter like without ENSURE_SMOOTH_MOVES!
514
-  #define LCD_UPDATE_THRESHOLD 170 // Minimum duration in ms of the current segment to allow a LCD update.
515
-                                   // Default value is valid for graphical LCDs like the REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER.
516
-  #define MIN_BLOCK_TIME 6 // Minimum duration in ms a single block has to take. You shouldn't need to modify this.
521
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
522
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
523
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
524
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
525
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
517 526
 #endif
518 527
 
519 528
 // @section extruder

+ 29
- 0
Marlin/example_configurations/Cartesio/Configuration_adv.h View File

@@ -496,6 +496,35 @@
496 496
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
497 497
 #endif
498 498
 
499
+//
500
+// Ensure Smooth Moves
501
+//
502
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
503
+// This feature uses two strategies to eliminate stuttering:
504
+//
505
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
506
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
507
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
508
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
509
+//    by pausing the LCD until there's enough time to safely update.
510
+//
511
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
512
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
513
+//
514
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
515
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
516
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
517
+//    draining.
518
+//
519
+//#define ENSURE_SMOOTH_MOVES
520
+#if ENABLED(ENSURE_SMOOTH_MOVES)
521
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
522
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
523
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
524
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
525
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
526
+#endif
527
+
499 528
 // @section extruder
500 529
 
501 530
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/Felix/Configuration_adv.h View File

@@ -496,6 +496,35 @@
496 496
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
497 497
 #endif
498 498
 
499
+//
500
+// Ensure Smooth Moves
501
+//
502
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
503
+// This feature uses two strategies to eliminate stuttering:
504
+//
505
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
506
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
507
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
508
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
509
+//    by pausing the LCD until there's enough time to safely update.
510
+//
511
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
512
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
513
+//
514
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
515
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
516
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
517
+//    draining.
518
+//
519
+//#define ENSURE_SMOOTH_MOVES
520
+#if ENABLED(ENSURE_SMOOTH_MOVES)
521
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
522
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
523
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
524
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
525
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
526
+#endif
527
+
499 528
 // @section extruder
500 529
 
501 530
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/Hephestos/Configuration_adv.h View File

@@ -496,6 +496,35 @@
496 496
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
497 497
 #endif
498 498
 
499
+//
500
+// Ensure Smooth Moves
501
+//
502
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
503
+// This feature uses two strategies to eliminate stuttering:
504
+//
505
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
506
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
507
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
508
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
509
+//    by pausing the LCD until there's enough time to safely update.
510
+//
511
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
512
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
513
+//
514
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
515
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
516
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
517
+//    draining.
518
+//
519
+//#define ENSURE_SMOOTH_MOVES
520
+#if ENABLED(ENSURE_SMOOTH_MOVES)
521
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
522
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
523
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
524
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
525
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
526
+#endif
527
+
499 528
 // @section extruder
500 529
 
501 530
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/Hephestos_2/Configuration_adv.h View File

@@ -496,6 +496,35 @@
496 496
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
497 497
 #endif
498 498
 
499
+//
500
+// Ensure Smooth Moves
501
+//
502
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
503
+// This feature uses two strategies to eliminate stuttering:
504
+//
505
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
506
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
507
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
508
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
509
+//    by pausing the LCD until there's enough time to safely update.
510
+//
511
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
512
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
513
+//
514
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
515
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
516
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
517
+//    draining.
518
+//
519
+//#define ENSURE_SMOOTH_MOVES
520
+#if ENABLED(ENSURE_SMOOTH_MOVES)
521
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
522
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
523
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
524
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
525
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
526
+#endif
527
+
499 528
 // @section extruder
500 529
 
501 530
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/K8200/Configuration_adv.h View File

@@ -509,6 +509,35 @@
509 509
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
510 510
 #endif
511 511
 
512
+//
513
+// Ensure Smooth Moves
514
+//
515
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
516
+// This feature uses two strategies to eliminate stuttering:
517
+//
518
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
519
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
520
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
521
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
522
+//    by pausing the LCD until there's enough time to safely update.
523
+//
524
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
525
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
526
+//
527
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
528
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
529
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
530
+//    draining.
531
+//
532
+//#define ENSURE_SMOOTH_MOVES
533
+#if ENABLED(ENSURE_SMOOTH_MOVES)
534
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
535
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
536
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
537
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
538
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
539
+#endif
540
+
512 541
 // @section extruder
513 542
 
514 543
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/K8400/Configuration_adv.h View File

@@ -496,6 +496,35 @@
496 496
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
497 497
 #endif
498 498
 
499
+//
500
+// Ensure Smooth Moves
501
+//
502
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
503
+// This feature uses two strategies to eliminate stuttering:
504
+//
505
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
506
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
507
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
508
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
509
+//    by pausing the LCD until there's enough time to safely update.
510
+//
511
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
512
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
513
+//
514
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
515
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
516
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
517
+//    draining.
518
+//
519
+//#define ENSURE_SMOOTH_MOVES
520
+#if ENABLED(ENSURE_SMOOTH_MOVES)
521
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
522
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
523
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
524
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
525
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
526
+#endif
527
+
499 528
 // @section extruder
500 529
 
501 530
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/RigidBot/Configuration_adv.h View File

@@ -496,6 +496,35 @@
496 496
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
497 497
 #endif
498 498
 
499
+//
500
+// Ensure Smooth Moves
501
+//
502
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
503
+// This feature uses two strategies to eliminate stuttering:
504
+//
505
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
506
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
507
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
508
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
509
+//    by pausing the LCD until there's enough time to safely update.
510
+//
511
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
512
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
513
+//
514
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
515
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
516
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
517
+//    draining.
518
+//
519
+//#define ENSURE_SMOOTH_MOVES
520
+#if ENABLED(ENSURE_SMOOTH_MOVES)
521
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
522
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
523
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
524
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
525
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
526
+#endif
527
+
499 528
 // @section extruder
500 529
 
501 530
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/SCARA/Configuration_adv.h View File

@@ -496,6 +496,35 @@
496 496
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
497 497
 #endif
498 498
 
499
+//
500
+// Ensure Smooth Moves
501
+//
502
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
503
+// This feature uses two strategies to eliminate stuttering:
504
+//
505
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
506
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
507
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
508
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
509
+//    by pausing the LCD until there's enough time to safely update.
510
+//
511
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
512
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
513
+//
514
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
515
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
516
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
517
+//    draining.
518
+//
519
+//#define ENSURE_SMOOTH_MOVES
520
+#if ENABLED(ENSURE_SMOOTH_MOVES)
521
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
522
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
523
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
524
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
525
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
526
+#endif
527
+
499 528
 // @section extruder
500 529
 
501 530
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/TAZ4/Configuration_adv.h View File

@@ -504,6 +504,35 @@
504 504
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
505 505
 #endif
506 506
 
507
+//
508
+// Ensure Smooth Moves
509
+//
510
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
511
+// This feature uses two strategies to eliminate stuttering:
512
+//
513
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
514
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
515
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
516
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
517
+//    by pausing the LCD until there's enough time to safely update.
518
+//
519
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
520
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
521
+//
522
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
523
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
524
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
525
+//    draining.
526
+//
527
+//#define ENSURE_SMOOTH_MOVES
528
+#if ENABLED(ENSURE_SMOOTH_MOVES)
529
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
530
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
531
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
532
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
533
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
534
+#endif
535
+
507 536
 // @section extruder
508 537
 
509 538
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/WITBOX/Configuration_adv.h View File

@@ -496,6 +496,35 @@
496 496
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
497 497
 #endif
498 498
 
499
+//
500
+// Ensure Smooth Moves
501
+//
502
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
503
+// This feature uses two strategies to eliminate stuttering:
504
+//
505
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
506
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
507
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
508
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
509
+//    by pausing the LCD until there's enough time to safely update.
510
+//
511
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
512
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
513
+//
514
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
515
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
516
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
517
+//    draining.
518
+//
519
+//#define ENSURE_SMOOTH_MOVES
520
+#if ENABLED(ENSURE_SMOOTH_MOVES)
521
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
522
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
523
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
524
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
525
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
526
+#endif
527
+
499 528
 // @section extruder
500 529
 
501 530
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/delta/biv2.5/Configuration_adv.h View File

@@ -498,6 +498,35 @@
498 498
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
499 499
 #endif
500 500
 
501
+//
502
+// Ensure Smooth Moves
503
+//
504
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
505
+// This feature uses two strategies to eliminate stuttering:
506
+//
507
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
508
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
509
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
510
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
511
+//    by pausing the LCD until there's enough time to safely update.
512
+//
513
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
514
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
515
+//
516
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
517
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
518
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
519
+//    draining.
520
+//
521
+//#define ENSURE_SMOOTH_MOVES
522
+#if ENABLED(ENSURE_SMOOTH_MOVES)
523
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
524
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
525
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
526
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
527
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
528
+#endif
529
+
501 530
 // @section extruder
502 531
 
503 532
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/delta/generic/Configuration_adv.h View File

@@ -498,6 +498,35 @@
498 498
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
499 499
 #endif
500 500
 
501
+//
502
+// Ensure Smooth Moves
503
+//
504
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
505
+// This feature uses two strategies to eliminate stuttering:
506
+//
507
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
508
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
509
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
510
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
511
+//    by pausing the LCD until there's enough time to safely update.
512
+//
513
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
514
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
515
+//
516
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
517
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
518
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
519
+//    draining.
520
+//
521
+//#define ENSURE_SMOOTH_MOVES
522
+#if ENABLED(ENSURE_SMOOTH_MOVES)
523
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
524
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
525
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
526
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
527
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
528
+#endif
529
+
501 530
 // @section extruder
502 531
 
503 532
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h View File

@@ -498,6 +498,35 @@
498 498
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
499 499
 #endif
500 500
 
501
+//
502
+// Ensure Smooth Moves
503
+//
504
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
505
+// This feature uses two strategies to eliminate stuttering:
506
+//
507
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
508
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
509
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
510
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
511
+//    by pausing the LCD until there's enough time to safely update.
512
+//
513
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
514
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
515
+//
516
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
517
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
518
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
519
+//    draining.
520
+//
521
+//#define ENSURE_SMOOTH_MOVES
522
+#if ENABLED(ENSURE_SMOOTH_MOVES)
523
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
524
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
525
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
526
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
527
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
528
+#endif
529
+
501 530
 // @section extruder
502 531
 
503 532
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h View File

@@ -503,6 +503,35 @@
503 503
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
504 504
 #endif
505 505
 
506
+//
507
+// Ensure Smooth Moves
508
+//
509
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
510
+// This feature uses two strategies to eliminate stuttering:
511
+//
512
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
513
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
514
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
515
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
516
+//    by pausing the LCD until there's enough time to safely update.
517
+//
518
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
519
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
520
+//
521
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
522
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
523
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
524
+//    draining.
525
+//
526
+//#define ENSURE_SMOOTH_MOVES
527
+#if ENABLED(ENSURE_SMOOTH_MOVES)
528
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
529
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
530
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
531
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
532
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
533
+#endif
534
+
506 535
 // @section extruder
507 536
 
508 537
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h View File

@@ -498,6 +498,35 @@
498 498
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
499 499
 #endif
500 500
 
501
+//
502
+// Ensure Smooth Moves
503
+//
504
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
505
+// This feature uses two strategies to eliminate stuttering:
506
+//
507
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
508
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
509
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
510
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
511
+//    by pausing the LCD until there's enough time to safely update.
512
+//
513
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
514
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
515
+//
516
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
517
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
518
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
519
+//    draining.
520
+//
521
+//#define ENSURE_SMOOTH_MOVES
522
+#if ENABLED(ENSURE_SMOOTH_MOVES)
523
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
524
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
525
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
526
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
527
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
528
+#endif
529
+
501 530
 // @section extruder
502 531
 
503 532
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/makibox/Configuration_adv.h View File

@@ -496,6 +496,35 @@
496 496
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
497 497
 #endif
498 498
 
499
+//
500
+// Ensure Smooth Moves
501
+//
502
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
503
+// This feature uses two strategies to eliminate stuttering:
504
+//
505
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
506
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
507
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
508
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
509
+//    by pausing the LCD until there's enough time to safely update.
510
+//
511
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
512
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
513
+//
514
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
515
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
516
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
517
+//    draining.
518
+//
519
+//#define ENSURE_SMOOTH_MOVES
520
+#if ENABLED(ENSURE_SMOOTH_MOVES)
521
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
522
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
523
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
524
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
525
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
526
+#endif
527
+
499 528
 // @section extruder
500 529
 
501 530
 // extruder advance constant (s2/mm3)

+ 29
- 0
Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h View File

@@ -496,6 +496,35 @@
496 496
   #define BABYSTEP_MULTIPLICATOR 1 //faster movements
497 497
 #endif
498 498
 
499
+//
500
+// Ensure Smooth Moves
501
+//
502
+// Enable this option to prevent the machine from stuttering when printing multiple short segments.
503
+// This feature uses two strategies to eliminate stuttering:
504
+//
505
+// 1. During short segments a Graphical LCD update may take so much time that the planner buffer gets
506
+//    completely drained. When this happens pauses are introduced between short segments, and print moves
507
+//    will become jerky until a longer segment provides enough time for the buffer to be filled again.
508
+//    This jerkiness negatively affects print quality. The ENSURE_SMOOTH_MOVES option addresses the issue
509
+//    by pausing the LCD until there's enough time to safely update.
510
+//
511
+//    NOTE: This will cause the Info Screen to lag and controller buttons may become unresponsive.
512
+//          Enable ALWAYS_ALLOW_MENU to keep the controller responsive.
513
+//
514
+// 2. No block is allowed to take less time than MIN_BLOCK_TIME. That's the time it takes in the main
515
+//    loop to add a new block to the buffer, check temperatures, etc., including all blocked time due to
516
+//    interrupts (without LCD update). By enforcing a minimum time-per-move, the buffer is prevented from
517
+//    draining.
518
+//
519
+//#define ENSURE_SMOOTH_MOVES
520
+#if ENABLED(ENSURE_SMOOTH_MOVES)
521
+  //#define ALWAYS_ALLOW_MENU      // If enabled, the menu will always be responsive.
522
+                                   // WARNING: Menu navigation during short moves may cause stuttering!
523
+  #define LCD_UPDATE_THRESHOLD 170 // (ms) Minimum duration for the current segment to allow an LCD update.
524
+                                   // Default value is good for graphical LCDs (e.g., REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER).
525
+  #define MIN_BLOCK_TIME 6         // (ms) Minimum duration of a single block. You shouldn't need to modify this.
526
+#endif
527
+
499 528
 // @section extruder
500 529
 
501 530
 // extruder advance constant (s2/mm3)

Loading…
Cancel
Save