Estimate Remaining Time (graphical display) (#15497)

2.0.x
LinFor 5 years ago committed by Scott Lahteine
parent 5641adb01b
commit b20d5a7cc6

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -39,7 +39,10 @@
*/ */
void GcodeSuite::M73() { void GcodeSuite::M73() {
if (parser.seen('P')) if (parser.seen('P'))
ui.set_progress(parser.value_byte()); ui.set_progress((PROGRESS_SCALE) > 1
? parser.value_float() * (PROGRESS_SCALE)
: parser.value_byte()
);
} }
#endif // LCD_SET_PROGRESS_MANUALLY #endif // LCD_SET_PROGRESS_MANUALLY

@ -530,6 +530,7 @@
#define HAS_COLOR_LEDS ANY(BLINKM, RGB_LED, RGBW_LED, PCA9632, PCA9533, NEOPIXEL_LED) #define HAS_COLOR_LEDS ANY(BLINKM, RGB_LED, RGBW_LED, PCA9632, PCA9533, NEOPIXEL_LED)
#define HAS_LEDS_OFF_FLAG (BOTH(PRINTER_EVENT_LEDS, SDSUPPORT) && HAS_RESUME_CONTINUE) #define HAS_LEDS_OFF_FLAG (BOTH(PRINTER_EVENT_LEDS, SDSUPPORT) && HAS_RESUME_CONTINUE)
#define HAS_PRINT_PROGRESS EITHER(SDSUPPORT, LCD_SET_PROGRESS_MANUALLY) #define HAS_PRINT_PROGRESS EITHER(SDSUPPORT, LCD_SET_PROGRESS_MANUALLY)
#define HAS_PRINT_PROGRESS_PERMYRIAD (HAS_PRINT_PROGRESS && EITHER(PRINT_PROGRESS_SHOW_DECIMALS, SHOW_REMAINING_TIME))
#define HAS_SERVICE_INTERVALS (ENABLED(PRINTCOUNTER) && (SERVICE_INTERVAL_1 > 0 || SERVICE_INTERVAL_2 > 0 || SERVICE_INTERVAL_3 > 0)) #define HAS_SERVICE_INTERVALS (ENABLED(PRINTCOUNTER) && (SERVICE_INTERVAL_1 > 0 || SERVICE_INTERVAL_2 > 0 || SERVICE_INTERVAL_3 > 0))
#define HAS_FILAMENT_SENSOR ENABLED(FILAMENT_RUNOUT_SENSOR) #define HAS_FILAMENT_SENSOR ENABLED(FILAMENT_RUNOUT_SENSOR)

@ -2511,3 +2511,11 @@ static_assert( _ARR_TEST(3,0) && _ARR_TEST(3,1) && _ARR_TEST(3,2)
#endif #endif
#undef _PIN_CONFLICT #undef _PIN_CONFLICT
#endif #endif
#if !HAS_GRAPHICAL_LCD
#if ENABLED(PRINT_PROGRESS_SHOW_DECIMALS)
#error "PRINT_PROGRESS_SHOW_DECIMALS currently requires a Graphical LCD."
#elif ENABLED(SHOW_REMAINING_TIME)
#error "SHOW_REMAINING_TIME currently requires a Graphical LCD."
#endif
#endif

@ -566,7 +566,7 @@ FORCE_INLINE void _draw_bed_status(const bool blink) {
#if HAS_PRINT_PROGRESS #if HAS_PRINT_PROGRESS
FORCE_INLINE void _draw_print_progress() { FORCE_INLINE void _draw_print_progress() {
const uint8_t progress = ui.get_progress(); const uint8_t progress = ui.get_progress_percent();
lcd_put_u8str_P(PSTR( lcd_put_u8str_P(PSTR(
#if ENABLED(SDSUPPORT) #if ENABLED(SDSUPPORT)
"SD" "SD"
@ -613,7 +613,7 @@ void MarlinUI::draw_status_message(const bool blink) {
// Draw the progress bar if the message has shown long enough // Draw the progress bar if the message has shown long enough
// or if there is no message set. // or if there is no message set.
if (ELAPSED(millis(), progress_bar_ms + PROGRESS_BAR_MSG_TIME) || !has_status()) { if (ELAPSED(millis(), progress_bar_ms + PROGRESS_BAR_MSG_TIME) || !has_status()) {
const uint8_t progress = get_progress(); const uint8_t progress = get_progress_percent();
if (progress > 2) return draw_progress_bar(progress); if (progress > 2) return draw_progress_bar(progress);
} }

@ -99,6 +99,9 @@
#define STATUS_HEATERS_BOT (STATUS_HEATERS_Y + STATUS_HEATERS_HEIGHT - 1) #define STATUS_HEATERS_BOT (STATUS_HEATERS_Y + STATUS_HEATERS_HEIGHT - 1)
#define PROGRESS_BAR_X 54
#define PROGRESS_BAR_WIDTH (LCD_PIXEL_WIDTH - PROGRESS_BAR_X)
#if ENABLED(MARLIN_DEV_MODE) #if ENABLED(MARLIN_DEV_MODE)
#define SHOW_ON_STATE READ(X_MIN_PIN) #define SHOW_ON_STATE READ(X_MIN_PIN)
#else #else
@ -330,6 +333,26 @@ void MarlinUI::draw_status_screen() {
static char wstring[5], mstring[4]; static char wstring[5], mstring[4];
#endif #endif
#if HAS_PRINT_PROGRESS
#if DISABLED(DOGM_SD_PERCENT)
#define _SD_DURATION_X(len) (PROGRESS_BAR_X + (PROGRESS_BAR_WIDTH) / 2 - (len) * (MENU_FONT_WIDTH) / 2)
#else
#define _SD_DURATION_X(len) (LCD_PIXEL_WIDTH - (len) * (MENU_FONT_WIDTH))
#endif
static uint8_t progress_bar_solid_width = 0, lastProgress = 0;
#if ENABLED(DOGM_SD_PERCENT)
static char progress_string[5];
#endif
static uint8_t lastElapsed = 0, elapsed_x_pos = 0;
static char elapsed_string[10];
#if ENABLED(SHOW_REMAINING_TIME)
#define SHOW_REMAINING_TIME_PREFIX 'E'
static uint8_t estimation_x_pos = 0;
static char estimation_string[10];
#endif
#endif
// At the first page, generate new display values // At the first page, generate new display values
if (first_page) { if (first_page) {
#if ANIM_HBC #if ANIM_HBC
@ -353,6 +376,50 @@ void MarlinUI::draw_status_screen() {
strcpy(wstring, ftostr12ns(filwidth.measured_mm)); strcpy(wstring, ftostr12ns(filwidth.measured_mm));
strcpy(mstring, i16tostr3(planner.volumetric_percent(parser.volumetric_enabled))); strcpy(mstring, i16tostr3(planner.volumetric_percent(parser.volumetric_enabled)));
#endif #endif
// Progress / elapsed / estimation updates and string formatting to avoid float math on each LCD draw
#if HAS_PRINT_PROGRESS
const progress_t progress =
#if HAS_PRINT_PROGRESS_PERMYRIAD
get_progress_permyriad()
#else
get_progress_percent()
#endif
;
duration_t elapsed = print_job_timer.duration();
const uint8_t p = progress & 0xFF, ev = elapsed.value & 0xFF;
if (progress > 1 && p != lastProgress) {
lastProgress = p;
progress_bar_solid_width = uint8_t((PROGRESS_BAR_WIDTH - 2) * progress / (PROGRESS_SCALE) * 0.01f);
#if ENABLED(DOGM_SD_PERCENT)
strcpy(progress_string, (
#if ENABLED(PRINT_PROGRESS_SHOW_DECIMALS)
permyriadtostr4(progress)
#else
ui8tostr3(progress / (PROGRESS_SCALE))
#endif
));
#endif
}
if (ev != lastElapsed) {
lastElapsed = ev;
const bool has_days = (elapsed.value >= 60*60*24L);
const uint8_t len = elapsed.toDigital(elapsed_string, has_days);
elapsed_x_pos = _SD_DURATION_X(len);
#if ENABLED(SHOW_REMAINING_TIME)
if (!(ev & 0x3)) {
duration_t estimation = elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress;
const bool has_days = (estimation.value >= 60*60*24L);
const uint8_t len = estimation.toDigital(estimation_string, has_days);
estimation_x_pos = _SD_DURATION_X(len + 1);
}
#endif
}
#endif
} }
const bool blink = get_blink(); const bool blink = get_blink();
@ -485,55 +552,44 @@ void MarlinUI::draw_status_screen() {
// //
// Progress bar frame // Progress bar frame
// //
#define PROGRESS_BAR_X 54
#define PROGRESS_BAR_WIDTH (LCD_PIXEL_WIDTH - PROGRESS_BAR_X)
if (PAGE_CONTAINS(49, 52)) if (PAGE_CONTAINS(49, 52))
u8g.drawFrame(PROGRESS_BAR_X, 49, PROGRESS_BAR_WIDTH, 4); u8g.drawFrame(PROGRESS_BAR_X, 49, PROGRESS_BAR_WIDTH, 4);
const uint8_t progress = get_progress();
if (progress > 1) {
// //
// Progress bar solid part // Progress bar solid part
// //
if (PAGE_CONTAINS(50, 51)) // 50-51 (or just 50) if (PAGE_CONTAINS(50, 51)) // 50-51 (or just 50)
u8g.drawBox( u8g.drawBox(PROGRESS_BAR_X + 1, 50, progress_bar_solid_width, 2);
PROGRESS_BAR_X + 1, 50,
(uint16_t)((PROGRESS_BAR_WIDTH - 2) * progress * 0.01), 2
);
// //
// SD Percent Complete // SD Percent Complete
// //
#if ENABLED(DOGM_SD_PERCENT) #if ENABLED(DOGM_SD_PERCENT)
if (progress_string[0] != '\0')
if (PAGE_CONTAINS(41, 48)) { if (PAGE_CONTAINS(41, 48)) {
// Percent complete // Percent complete
lcd_put_u8str(55, 48, ui8tostr3(progress)); lcd_put_u8str(55, 48, progress_string);
lcd_put_wchar('%'); lcd_put_wchar('%');
} }
#endif #endif
}
// //
// Elapsed Time // Elapsed Time
// //
#if DISABLED(DOGM_SD_PERCENT)
#define SD_DURATION_X (PROGRESS_BAR_X + (PROGRESS_BAR_WIDTH / 2) - len * (MENU_FONT_WIDTH / 2))
#else
#define SD_DURATION_X (LCD_PIXEL_WIDTH - len * MENU_FONT_WIDTH)
#endif
if (PAGE_CONTAINS(EXTRAS_BASELINE - INFO_FONT_ASCENT, EXTRAS_BASELINE - 1)) { if (PAGE_CONTAINS(EXTRAS_BASELINE - INFO_FONT_ASCENT, EXTRAS_BASELINE - 1)) {
char buffer[13];
duration_t elapsed = print_job_timer.duration(); #if ENABLED(SHOW_REMAINING_TIME)
bool has_days = (elapsed.value >= 60*60*24L); if (blink && (estimation_string[0] != '\0')) {
uint8_t len = elapsed.toDigital(buffer, has_days); lcd_put_wchar(estimation_x_pos, EXTRAS_BASELINE, SHOW_REMAINING_TIME_PREFIX);
lcd_put_u8str(SD_DURATION_X, EXTRAS_BASELINE, buffer); lcd_put_u8str(estimation_string);
}
else
#endif
lcd_put_u8str(elapsed_x_pos, EXTRAS_BASELINE, elapsed_string);
} }
#endif // HAS_PRINT_PROGRESS #endif // HAS_PRINT_PROGRESS

@ -850,7 +850,7 @@ void ST7920_Lite_Status_Screen::update_progress(const bool forceUpdate) {
// when an update is actually necessary. // when an update is actually necessary.
static uint8_t last_progress = 0; static uint8_t last_progress = 0;
const uint8_t progress = ui.get_progress(); const uint8_t progress = ui.get_progress_percent();
if (forceUpdate || last_progress != progress) { if (forceUpdate || last_progress != progress) {
last_progress = progress; last_progress = progress;
draw_progress_bar(progress); draw_progress_bar(progress);

@ -796,7 +796,7 @@ namespace ExtUI {
#endif #endif
uint8_t getProgress_percent() { uint8_t getProgress_percent() {
return ui.get_progress(); return ui.get_progress_percent();
} }
uint32_t getProgress_seconds_elapsed() { uint32_t getProgress_seconds_elapsed() {

@ -45,7 +45,7 @@ bool printer_busy();
struct MenuEditItemInfo_##NAME { \ struct MenuEditItemInfo_##NAME { \
typedef TYPE type_t; \ typedef TYPE type_t; \
static constexpr float scale = SCALE; \ static constexpr float scale = SCALE; \
static inline char* strfunc(const float value) { return STRFUNC((TYPE) value); } \ static inline const char* strfunc(const float value) { return STRFUNC((TYPE) value); } \
}; };
DECLARE_MENU_EDIT_TYPE(uint8_t, percent, ui8tostr4pct, 100.0/255); // 100% right-justified DECLARE_MENU_EDIT_TYPE(uint8_t, percent, ui8tostr4pct, 100.0/255); // 100% right-justified
@ -204,7 +204,7 @@ class MenuEditItemBase {
static screenFunc_t callbackFunc; static screenFunc_t callbackFunc;
static bool liveEdit; static bool liveEdit;
protected: protected:
typedef char* (*strfunc_t)(const int32_t); typedef const char* (*strfunc_t)(const int32_t);
typedef void (*loadfunc_t)(void *, const int32_t); typedef void (*loadfunc_t)(void *, const int32_t);
static void init(PGM_P const el, void * const ev, const int32_t minv, const int32_t maxv, const uint16_t ep, const screenFunc_t cs, const screenFunc_t cb, const bool le); static void init(PGM_P const el, void * const ev, const int32_t minv, const int32_t maxv, const uint16_t ep, const screenFunc_t cs, const screenFunc_t cb, const bool le);
static void edit(strfunc_t, loadfunc_t); static void edit(strfunc_t, loadfunc_t);
@ -217,7 +217,7 @@ class TMenuEditItem : MenuEditItemBase {
static inline float unscale(const float value) { return value * (1.0f / NAME::scale); } static inline float unscale(const float value) { return value * (1.0f / NAME::scale); }
static inline float scale(const float value) { return value * NAME::scale; } static inline float scale(const float value) { return value * NAME::scale; }
static void load(void *ptr, const int32_t value) { *((type_t*)ptr) = unscale(value); } static void load(void *ptr, const int32_t value) { *((type_t*)ptr) = unscale(value); }
static char* to_string(const int32_t value) { return NAME::strfunc(unscale(value)); } static const char* to_string(const int32_t value) { return NAME::strfunc(unscale(value)); }
public: public:
static void action( static void action(
PGM_P const pstr, // Edit label PGM_P const pstr, // Edit label

@ -58,7 +58,7 @@
#endif #endif
#if ENABLED(LCD_SET_PROGRESS_MANUALLY) #if ENABLED(LCD_SET_PROGRESS_MANUALLY)
uint8_t MarlinUI::progress_override; // = 0 MarlinUI::progress_t MarlinUI::progress_override; // = 0
#endif #endif
#if HAS_BUZZER #if HAS_BUZZER
@ -515,7 +515,7 @@ void MarlinUI::status_screen() {
if (expire_status_ms > 0) { if (expire_status_ms > 0) {
// Expire the message if a job is active and the bar has ticks // Expire the message if a job is active and the bar has ticks
if (get_progress() > 2 && !print_job_timer.isPaused()) { if (get_progress_percent() > 2 && !print_job_timer.isPaused()) {
if (ELAPSED(ms, expire_status_ms)) { if (ELAPSED(ms, expire_status_ms)) {
status_message[0] = '\0'; status_message[0] = '\0';
expire_status_ms = 0; expire_status_ms = 0;
@ -1534,18 +1534,24 @@ void MarlinUI::update() {
} }
#if HAS_PRINT_PROGRESS #if HAS_PRINT_PROGRESS
uint8_t MarlinUI::get_progress() {
MarlinUI::progress_t MarlinUI::_get_progress() {
#if ENABLED(LCD_SET_PROGRESS_MANUALLY) #if ENABLED(LCD_SET_PROGRESS_MANUALLY)
const uint8_t p = progress_override & 0x7F; const progress_t p = progress_override & PROGRESS_MASK;
#else #else
constexpr uint8_t p = 0; constexpr progress_t p = 0;
#endif #endif
return (p return (p
#if ENABLED(SDSUPPORT) #if ENABLED(SDSUPPORT)
#if HAS_PRINT_PROGRESS_PERMYRIAD
?: card.permyriadDone()
#else
?: card.percentDone() ?: card.percentDone()
#endif #endif
#endif
); );
} }
#endif #endif
#endif // HAS_DISPLAY #endif // HAS_DISPLAY

@ -288,15 +288,28 @@ public:
static void resume_print(); static void resume_print();
#if HAS_PRINT_PROGRESS #if HAS_PRINT_PROGRESS
#if HAS_PRINT_PROGRESS_PERMYRIAD
typedef uint16_t progress_t;
#define PROGRESS_SCALE 100U
#define PROGRESS_MASK 0x7FFF
#else
typedef uint8_t progress_t;
#define PROGRESS_SCALE 1U
#define PROGRESS_MASK 0x7F
#endif
#if ENABLED(LCD_SET_PROGRESS_MANUALLY) #if ENABLED(LCD_SET_PROGRESS_MANUALLY)
static uint8_t progress_override; static progress_t progress_override;
static void set_progress(const uint8_t progress) { progress_override = _MIN(progress, 100); } static void set_progress(const progress_t p) { progress_override = _MIN(p, 100U * (PROGRESS_SCALE)); }
static void set_progress_done() { set_progress(0x80 + 100); } static void set_progress_done() { progress_override = (PROGRESS_MASK + 1U) + 100U * (PROGRESS_SCALE); }
static void progress_reset() { if (progress_override & 0x80) set_progress(0); } static void progress_reset() { if (progress_override & (PROGRESS_MASK + 1U)) set_progress(0); }
#endif
static progress_t _get_progress();
#if HAS_PRINT_PROGRESS_PERMYRIAD
static uint16_t get_progress_permyriad() { return _get_progress(); }
#endif #endif
static uint8_t get_progress(); static uint8_t get_progress_percent() { return uint8_t(_get_progress() / (PROGRESS_SCALE)); }
#else #else
static constexpr uint8_t get_progress() { return 0; } static constexpr uint8_t get_progress_percent() { return 0; }
#endif #endif
#if HAS_SPI_LCD #if HAS_SPI_LCD

@ -33,7 +33,7 @@ char conv[8] = { 0 };
#define MINUSOR(n, alt) (n >= 0 ? (alt) : (n = -n, '-')) #define MINUSOR(n, alt) (n >= 0 ? (alt) : (n = -n, '-'))
// Convert a full-range unsigned 8bit int to a percentage // Convert a full-range unsigned 8bit int to a percentage
char* ui8tostr4pct(const uint8_t i) { const char* ui8tostr4pct(const uint8_t i) {
const uint8_t n = ui8_to_percent(i); const uint8_t n = ui8_to_percent(i);
conv[3] = RJDIGIT(n, 100); conv[3] = RJDIGIT(n, 100);
conv[4] = RJDIGIT(n, 10); conv[4] = RJDIGIT(n, 10);
@ -43,7 +43,7 @@ char* ui8tostr4pct(const uint8_t i) {
} }
// Convert unsigned 8bit int to string 123 format // Convert unsigned 8bit int to string 123 format
char* ui8tostr3(const uint8_t i) { const char* ui8tostr3(const uint8_t i) {
conv[4] = RJDIGIT(i, 100); conv[4] = RJDIGIT(i, 100);
conv[5] = RJDIGIT(i, 10); conv[5] = RJDIGIT(i, 10);
conv[6] = DIGIMOD(i, 1); conv[6] = DIGIMOD(i, 1);
@ -51,7 +51,7 @@ char* ui8tostr3(const uint8_t i) {
} }
// Convert signed 8bit int to rj string with 123 or -12 format // Convert signed 8bit int to rj string with 123 or -12 format
char* i8tostr3(const int8_t x) { const char* i8tostr3(const int8_t x) {
int xx = x; int xx = x;
conv[4] = MINUSOR(xx, RJDIGIT(xx, 100)); conv[4] = MINUSOR(xx, RJDIGIT(xx, 100));
conv[5] = RJDIGIT(xx, 10); conv[5] = RJDIGIT(xx, 10);
@ -59,8 +59,36 @@ char* i8tostr3(const int8_t x) {
return &conv[4]; return &conv[4];
} }
#if HAS_PRINT_PROGRESS_PERMYRIAD
// Convert unsigned 16-bit permyriad to percent with 100 / 23 / 23.4 / 3.45 format
const char* permyriadtostr4(const uint16_t xx) {
if (xx >= 10000)
return "100";
else if (xx >= 1000) {
conv[3] = DIGIMOD(xx, 1000);
conv[4] = DIGIMOD(xx, 100);
conv[5] = '.';
conv[6] = DIGIMOD(xx, 10);
return &conv[3];
}
else if (xx % 100 == 0) {
conv[4] = ' ';
conv[5] = RJDIGIT(xx, 1000);
conv[6] = DIGIMOD(xx, 100);
return &conv[4];
}
else {
conv[3] = DIGIMOD(xx, 100);
conv[4] = '.';
conv[5] = DIGIMOD(xx, 10);
conv[6] = RJDIGIT(xx, 1);
return &conv[3];
}
}
#endif
// Convert unsigned 16bit int to string 12345 format // Convert unsigned 16bit int to string 12345 format
char* ui16tostr5(const uint16_t xx) { const char* ui16tostr5(const uint16_t xx) {
conv[2] = RJDIGIT(xx, 10000); conv[2] = RJDIGIT(xx, 10000);
conv[3] = RJDIGIT(xx, 1000); conv[3] = RJDIGIT(xx, 1000);
conv[4] = RJDIGIT(xx, 100); conv[4] = RJDIGIT(xx, 100);
@ -70,7 +98,7 @@ char* ui16tostr5(const uint16_t xx) {
} }
// Convert unsigned 16bit int to string 1234 format // Convert unsigned 16bit int to string 1234 format
char* ui16tostr4(const uint16_t xx) { const char* ui16tostr4(const uint16_t xx) {
conv[3] = RJDIGIT(xx, 1000); conv[3] = RJDIGIT(xx, 1000);
conv[4] = RJDIGIT(xx, 100); conv[4] = RJDIGIT(xx, 100);
conv[5] = RJDIGIT(xx, 10); conv[5] = RJDIGIT(xx, 10);
@ -79,7 +107,7 @@ char* ui16tostr4(const uint16_t xx) {
} }
// Convert unsigned 16bit int to string 123 format // Convert unsigned 16bit int to string 123 format
char* ui16tostr3(const uint16_t xx) { const char* ui16tostr3(const uint16_t xx) {
conv[4] = RJDIGIT(xx, 100); conv[4] = RJDIGIT(xx, 100);
conv[5] = RJDIGIT(xx, 10); conv[5] = RJDIGIT(xx, 10);
conv[6] = DIGIMOD(xx, 1); conv[6] = DIGIMOD(xx, 1);
@ -87,7 +115,7 @@ char* ui16tostr3(const uint16_t xx) {
} }
// Convert signed 16bit int to rj string with 123 or -12 format // Convert signed 16bit int to rj string with 123 or -12 format
char* i16tostr3(const int16_t x) { const char* i16tostr3(const int16_t x) {
int xx = x; int xx = x;
conv[4] = MINUSOR(xx, RJDIGIT(xx, 100)); conv[4] = MINUSOR(xx, RJDIGIT(xx, 100));
conv[5] = RJDIGIT(xx, 10); conv[5] = RJDIGIT(xx, 10);
@ -96,7 +124,7 @@ char* i16tostr3(const int16_t x) {
} }
// Convert unsigned 16bit int to lj string with 123 format // Convert unsigned 16bit int to lj string with 123 format
char* i16tostr3left(const int16_t i) { const char* i16tostr3left(const int16_t i) {
char *str = &conv[6]; char *str = &conv[6];
*str = DIGIMOD(i, 1); *str = DIGIMOD(i, 1);
if (i >= 10) { if (i >= 10) {
@ -108,7 +136,7 @@ char* i16tostr3left(const int16_t i) {
} }
// Convert signed 16bit int to rj string with 1234, _123, -123, _-12, or __-1 format // Convert signed 16bit int to rj string with 1234, _123, -123, _-12, or __-1 format
char* i16tostr4sign(const int16_t i) { const char* i16tostr4sign(const int16_t i) {
const bool neg = i < 0; const bool neg = i < 0;
const int ii = neg ? -i : i; const int ii = neg ? -i : i;
if (i >= 1000) { if (i >= 1000) {
@ -137,7 +165,7 @@ char* i16tostr4sign(const int16_t i) {
} }
// Convert unsigned float to string with 1.23 format // Convert unsigned float to string with 1.23 format
char* ftostr12ns(const float &f) { const char* ftostr12ns(const float &f) {
const long i = ((f < 0 ? -f : f) * 1000 + 5) / 10; const long i = ((f < 0 ? -f : f) * 1000 + 5) / 10;
conv[3] = DIGIMOD(i, 100); conv[3] = DIGIMOD(i, 100);
conv[4] = '.'; conv[4] = '.';
@ -147,7 +175,7 @@ char* ftostr12ns(const float &f) {
} }
// Convert signed float to fixed-length string with 12.34 / -2.34 format or 123.45 / -23.45 format // Convert signed float to fixed-length string with 12.34 / -2.34 format or 123.45 / -23.45 format
char* ftostr42_52(const float &f) { const char* ftostr42_52(const float &f) {
if (f <= -10 || f >= 100) return ftostr52(f); // need more digits if (f <= -10 || f >= 100) return ftostr52(f); // need more digits
long i = (f * 1000 + (f < 0 ? -5: 5)) / 10; long i = (f * 1000 + (f < 0 ? -5: 5)) / 10;
conv[2] = (f >= 0 && f < 10) ? ' ' : MINUSOR(i, DIGIMOD(i, 1000)); conv[2] = (f >= 0 && f < 10) ? ' ' : MINUSOR(i, DIGIMOD(i, 1000));
@ -159,7 +187,7 @@ char* ftostr42_52(const float &f) {
} }
// Convert signed float to fixed-length string with 023.45 / -23.45 format // Convert signed float to fixed-length string with 023.45 / -23.45 format
char* ftostr52(const float &f) { const char* ftostr52(const float &f) {
long i = (f * 1000 + (f < 0 ? -5: 5)) / 10; long i = (f * 1000 + (f < 0 ? -5: 5)) / 10;
conv[1] = MINUSOR(i, DIGIMOD(i, 10000)); conv[1] = MINUSOR(i, DIGIMOD(i, 10000));
conv[2] = DIGIMOD(i, 1000); conv[2] = DIGIMOD(i, 1000);
@ -188,7 +216,7 @@ char* ftostr52(const float &f) {
#endif #endif
// Convert float to fixed-length string with +123.4 / -123.4 format // Convert float to fixed-length string with +123.4 / -123.4 format
char* ftostr41sign(const float &f) { const char* ftostr41sign(const float &f) {
int i = (f * 100 + (f < 0 ? -5: 5)) / 10; int i = (f * 100 + (f < 0 ? -5: 5)) / 10;
conv[1] = MINUSOR(i, '+'); conv[1] = MINUSOR(i, '+');
conv[2] = DIGIMOD(i, 1000); conv[2] = DIGIMOD(i, 1000);
@ -200,7 +228,7 @@ char* ftostr41sign(const float &f) {
} }
// Convert signed float to string (6 digit) with -1.234 / _0.000 / +1.234 format // Convert signed float to string (6 digit) with -1.234 / _0.000 / +1.234 format
char* ftostr43sign(const float &f, char plus/*=' '*/) { const char* ftostr43sign(const float &f, char plus/*=' '*/) {
long i = (f * 10000 + (f < 0 ? -5: 5)) / 10; long i = (f * 10000 + (f < 0 ? -5: 5)) / 10;
conv[1] = i ? MINUSOR(i, plus) : ' '; conv[1] = i ? MINUSOR(i, plus) : ' ';
conv[2] = DIGIMOD(i, 1000); conv[2] = DIGIMOD(i, 1000);
@ -212,7 +240,7 @@ char* ftostr43sign(const float &f, char plus/*=' '*/) {
} }
// Convert signed float to string (5 digit) with -1.2345 / _0.0000 / +1.2345 format // Convert signed float to string (5 digit) with -1.2345 / _0.0000 / +1.2345 format
char* ftostr54sign(const float &f, char plus/*=' '*/) { const char* ftostr54sign(const float &f, char plus/*=' '*/) {
long i = (f * 100000 + (f < 0 ? -5: 5)) / 10; long i = (f * 100000 + (f < 0 ? -5: 5)) / 10;
conv[0] = i ? MINUSOR(i, plus) : ' '; conv[0] = i ? MINUSOR(i, plus) : ' ';
conv[1] = DIGIMOD(i, 10000); conv[1] = DIGIMOD(i, 10000);
@ -225,13 +253,13 @@ char* ftostr54sign(const float &f, char plus/*=' '*/) {
} }
// Convert unsigned float to rj string with 12345 format // Convert unsigned float to rj string with 12345 format
char* ftostr5rj(const float &f) { const char* ftostr5rj(const float &f) {
const long i = ((f < 0 ? -f : f) * 10 + 5) / 10; const long i = ((f < 0 ? -f : f) * 10 + 5) / 10;
return ui16tostr5(i); return ui16tostr5(i);
} }
// Convert signed float to string with +1234.5 format // Convert signed float to string with +1234.5 format
char* ftostr51sign(const float &f) { const char* ftostr51sign(const float &f) {
long i = (f * 100 + (f < 0 ? -5: 5)) / 10; long i = (f * 100 + (f < 0 ? -5: 5)) / 10;
conv[0] = MINUSOR(i, '+'); conv[0] = MINUSOR(i, '+');
conv[1] = DIGIMOD(i, 10000); conv[1] = DIGIMOD(i, 10000);
@ -244,7 +272,7 @@ char* ftostr51sign(const float &f) {
} }
// Convert signed float to string with +123.45 format // Convert signed float to string with +123.45 format
char* ftostr52sign(const float &f) { const char* ftostr52sign(const float &f) {
long i = (f * 1000 + (f < 0 ? -5: 5)) / 10; long i = (f * 1000 + (f < 0 ? -5: 5)) / 10;
conv[0] = MINUSOR(i, '+'); conv[0] = MINUSOR(i, '+');
conv[1] = DIGIMOD(i, 10000); conv[1] = DIGIMOD(i, 10000);
@ -257,7 +285,7 @@ char* ftostr52sign(const float &f) {
} }
// Convert unsigned float to string with 1234.5 format omitting trailing zeros // Convert unsigned float to string with 1234.5 format omitting trailing zeros
char* ftostr51rj(const float &f) { const char* ftostr51rj(const float &f) {
const long i = ((f < 0 ? -f : f) * 100 + 5) / 10; const long i = ((f < 0 ? -f : f) * 100 + 5) / 10;
conv[0] = ' '; conv[0] = ' ';
conv[1] = RJDIGIT(i, 10000); conv[1] = RJDIGIT(i, 10000);
@ -270,7 +298,7 @@ char* ftostr51rj(const float &f) {
} }
// Convert signed float to space-padded string with -_23.4_ format // Convert signed float to space-padded string with -_23.4_ format
char* ftostr52sp(const float &f) { const char* ftostr52sp(const float &f) {
long i = (f * 1000 + (f < 0 ? -5: 5)) / 10; long i = (f * 1000 + (f < 0 ? -5: 5)) / 10;
uint8_t dig; uint8_t dig;
conv[0] = MINUSOR(i, ' '); conv[0] = MINUSOR(i, ' ');

@ -24,69 +24,74 @@
#include <stdint.h> #include <stdint.h>
// Convert a full-range unsigned 8bit int to a percentage // Convert a full-range unsigned 8bit int to a percentage
char* ui8tostr4pct(const uint8_t i); const char* ui8tostr4pct(const uint8_t i);
// Convert uint8_t to string with 123 format // Convert uint8_t to string with 123 format
char* ui8tostr3(const uint8_t i); const char* ui8tostr3(const uint8_t i);
// Convert int8_t to string with 123 format // Convert int8_t to string with 123 format
char* i8tostr3(const int8_t x); const char* i8tostr3(const int8_t x);
#if HAS_PRINT_PROGRESS_PERMYRIAD
// Convert 16-bit unsigned permyriad value to percent: 100 / 23 / 23.4 / 3.45
const char* permyriadtostr4(const uint16_t xx);
#endif
// Convert uint16_t to string with 12345 format // Convert uint16_t to string with 12345 format
char* ui16tostr5(const uint16_t x); const char* ui16tostr5(const uint16_t x);
// Convert uint16_t to string with 1234 format // Convert uint16_t to string with 1234 format
char* ui16tostr4(const uint16_t x); const char* ui16tostr4(const uint16_t x);
// Convert uint16_t to string with 123 format // Convert uint16_t to string with 123 format
char* ui16tostr3(const uint16_t x); const char* ui16tostr3(const uint16_t x);
// Convert int16_t to string with 123 format // Convert int16_t to string with 123 format
char* i16tostr3(const int16_t x); const char* i16tostr3(const int16_t x);
// Convert unsigned int to lj string with 123 format // Convert unsigned int to lj string with 123 format
char* i16tostr3left(const int16_t xx); const char* i16tostr3left(const int16_t xx);
// Convert signed int to rj string with _123, -123, _-12, or __-1 format // Convert signed int to rj string with _123, -123, _-12, or __-1 format
char* i16tostr4sign(const int16_t x); const char* i16tostr4sign(const int16_t x);
// Convert unsigned float to string with 1.23 format // Convert unsigned float to string with 1.23 format
char* ftostr12ns(const float &x); const char* ftostr12ns(const float &x);
// Convert signed float to fixed-length string with 12.34 / -2.34 or 023.45 / -23.45 format // Convert signed float to fixed-length string with 12.34 / -2.34 or 023.45 / -23.45 format
char* ftostr42_52(const float &x); const char* ftostr42_52(const float &x);
// Convert signed float to fixed-length string with 023.45 / -23.45 format // Convert signed float to fixed-length string with 023.45 / -23.45 format
char* ftostr52(const float &x); const char* ftostr52(const float &x);
// Convert float to fixed-length string with +123.4 / -123.4 format // Convert float to fixed-length string with +123.4 / -123.4 format
char* ftostr41sign(const float &x); const char* ftostr41sign(const float &x);
// Convert signed float to string (6 digit) with -1.234 / _0.000 / +1.234 format // Convert signed float to string (6 digit) with -1.234 / _0.000 / +1.234 format
char* ftostr43sign(const float &x, char plus=' '); const char* ftostr43sign(const float &x, char plus=' ');
// Convert signed float to string (5 digit) with -1.2345 / _0.0000 / +1.2345 format // Convert signed float to string (5 digit) with -1.2345 / _0.0000 / +1.2345 format
char* ftostr54sign(const float &x, char plus=' '); const char* ftostr54sign(const float &x, char plus=' ');
// Convert unsigned float to rj string with 12345 format // Convert unsigned float to rj string with 12345 format
char* ftostr5rj(const float &x); const char* ftostr5rj(const float &x);
// Convert signed float to string with +1234.5 format // Convert signed float to string with +1234.5 format
char* ftostr51sign(const float &x); const char* ftostr51sign(const float &x);
// Convert signed float to space-padded string with -_23.4_ format // Convert signed float to space-padded string with -_23.4_ format
char* ftostr52sp(const float &x); const char* ftostr52sp(const float &x);
// Convert signed float to string with +123.45 format // Convert signed float to string with +123.45 format
char* ftostr52sign(const float &x); const char* ftostr52sign(const float &x);
// Convert unsigned float to string with 1234.5 format omitting trailing zeros // Convert unsigned float to string with 1234.5 format omitting trailing zeros
char* ftostr51rj(const float &x); const char* ftostr51rj(const float &x);
#include "../core/macros.h" #include "../core/macros.h"
// Convert float to rj string with 123 or -12 format // Convert float to rj string with 123 or -12 format
FORCE_INLINE char* ftostr3(const float &x) { return i16tostr3(int16_t(x + (x < 0 ? -0.5f : 0.5f))); } FORCE_INLINE const char* ftostr3(const float &x) { return i16tostr3(int16_t(x + (x < 0 ? -0.5f : 0.5f))); }
#include "../inc/MarlinConfigPre.h" #include "../inc/MarlinConfigPre.h"
@ -95,5 +100,5 @@ FORCE_INLINE char* ftostr3(const float &x) { return i16tostr3(int16_t(x + (x < 0
char* ftostr4sign(const float &fx); char* ftostr4sign(const float &fx);
#else #else
// Convert float to rj string with 1234, _123, -123, __12, _-12, ___1, or __-1 format // Convert float to rj string with 1234, _123, -123, __12, _-12, ___1, or __-1 format
FORCE_INLINE char* ftostr4sign(const float &x) { return i16tostr4sign(int16_t(x + (x < 0 ? -0.5f : 0.5f))); } FORCE_INLINE const char* ftostr4sign(const float &x) { return i16tostr4sign(int16_t(x + (x < 0 ? -0.5f : 0.5f))); }
#endif #endif

@ -118,6 +118,9 @@ public:
static inline void pauseSDPrint() { flag.sdprinting = false; } static inline void pauseSDPrint() { flag.sdprinting = false; }
static inline bool isPaused() { return isFileOpen() && !flag.sdprinting; } static inline bool isPaused() { return isFileOpen() && !flag.sdprinting; }
static inline bool isPrinting() { return flag.sdprinting; } static inline bool isPrinting() { return flag.sdprinting; }
#if HAS_PRINT_PROGRESS_PERMYRIAD
static inline uint16_t permyriadDone() { return (isFileOpen() && filesize) ? sdpos / ((filesize + 9999) / 10000) : 0; }
#endif
static inline uint8_t percentDone() { return (isFileOpen() && filesize) ? sdpos / ((filesize + 99) / 100) : 0; } static inline uint8_t percentDone() { return (isFileOpen() && filesize) ? sdpos / ((filesize + 99) / 100) : 0; }
// Helper for open and remove // Helper for open and remove

@ -63,6 +63,7 @@ opt_enable AUTO_BED_LEVELING_UBL RESTORE_LEVELING_AFTER_G28 DEBUG_LEVELING_FEATU
SDSUPPORT SDCARD_SORT_ALPHA USB_FLASH_DRIVE_SUPPORT SCROLL_LONG_FILENAMES \ SDSUPPORT SDCARD_SORT_ALPHA USB_FLASH_DRIVE_SUPPORT SCROLL_LONG_FILENAMES \
EEPROM_SETTINGS EEPROM_CHITCHAT GCODE_MACROS CUSTOM_USER_MENUS \ EEPROM_SETTINGS EEPROM_CHITCHAT GCODE_MACROS CUSTOM_USER_MENUS \
MULTI_NOZZLE_DUPLICATION CLASSIC_JERK LIN_ADVANCE QUICK_HOME \ MULTI_NOZZLE_DUPLICATION CLASSIC_JERK LIN_ADVANCE QUICK_HOME \
LCD_SET_PROGRESS_MANUALLY PRINT_PROGRESS_SHOW_DECIMALS SHOW_REMAINING_TIME \
BABYSTEPPING BABYSTEP_XY NANODLP_Z_SYNC I2C_POSITION_ENCODERS M114_DETAIL BABYSTEPPING BABYSTEP_XY NANODLP_Z_SYNC I2C_POSITION_ENCODERS M114_DETAIL
exec_test $1 $2 "Azteeg X3 Pro with 5 extruders, RRDFGSC, probeless UBL, Linear Advance, and more" exec_test $1 $2 "Azteeg X3 Pro with 5 extruders, RRDFGSC, probeless UBL, Linear Advance, and more"

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -889,6 +889,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -892,6 +892,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -896,6 +896,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -887,6 +887,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -892,6 +892,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -856,6 +856,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -893,6 +893,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -893,6 +893,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -890,6 +890,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -889,6 +889,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -884,6 +884,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -901,6 +901,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

@ -888,6 +888,11 @@
// 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
#if HAS_PRINT_PROGRESS
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits (Graphical LCD only)
//#define SHOW_REMAINING_TIME // Display estimated time to completion (Graphical LCD only)
#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)

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save