From 292755258accccbabfb08ffda1ecb8cdf0d359e8 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 21 Jan 2018 01:34:35 -0600 Subject: [PATCH 1/3] Add a heating indicator X offset --- Marlin/ultralcd_impl_DOGM.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Marlin/ultralcd_impl_DOGM.h b/Marlin/ultralcd_impl_DOGM.h index ee018c323..1b336a001 100644 --- a/Marlin/ultralcd_impl_DOGM.h +++ b/Marlin/ultralcd_impl_DOGM.h @@ -386,6 +386,10 @@ FORCE_INLINE void _draw_centered_temp(const int16_t temp, const uint8_t x, const lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); } +#ifndef HEAT_INDICATOR_X + #define HEAT_INDICATOR_X 8 +#endif + FORCE_INLINE void _draw_heater_status(const uint8_t x, const int8_t heater, const bool blink) { #if !HEATER_IDLE_HANDLER UNUSED(blink); @@ -415,7 +419,7 @@ FORCE_INLINE void _draw_heater_status(const uint8_t x, const int8_t heater, cons _draw_centered_temp((isBed ? thermalManager.degBed() : thermalManager.degHotend(heater)) + 0.5, x, 28); if (PAGE_CONTAINS(17, 20)) { - const uint8_t h = isBed ? 7 : 8, + const uint8_t h = isBed ? 7 : HEAT_INDICATOR_X, y = isBed ? 18 : 17; if (isBed ? thermalManager.isHeatingBed() : thermalManager.isHeatingHotend(heater)) { u8g.setColorIndex(0); // white on black From 0cfcc7cbf570ec41dd59e853a4881295def9f6af Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 20 Jan 2018 22:29:08 -0600 Subject: [PATCH 2/3] Make "Ender" status screen dual-nozzle ready --- .../Creality/Ender/_Statusscreen.h | 154 ++++++++++++------ 1 file changed, 106 insertions(+), 48 deletions(-) diff --git a/Marlin/example_configurations/Creality/Ender/_Statusscreen.h b/Marlin/example_configurations/Creality/Ender/_Statusscreen.h index a5c769d62..692cc7ceb 100644 --- a/Marlin/example_configurations/Creality/Ender/_Statusscreen.h +++ b/Marlin/example_configurations/Creality/Ender/_Statusscreen.h @@ -1,54 +1,112 @@ -#ifndef STATUSSCREEN_H_ -#define STATUSSCREEN_H_ +#ifndef _STATUSSCREEN_H_ +#define _STATUSSCREEN_H_ #define STATUS_SCREENWIDTH 128 // Width in pixels -const unsigned char status_screen0_bmp[] PROGMEM = { - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xF0, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x33,0x87,0x30, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x27,0x87,0x90, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x87,0xD0, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x87,0xD0, - 0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x03,0xD0, - 0xFE,0x00,0x02,0x00,0x00,0x1F,0xE0,0x00,0x00,0x08,0x20,0x80,0x00,0x20,0x30,0x10, - 0x42,0x00,0x02,0x00,0x00,0x3F,0xF0,0x00,0x00,0x04,0x10,0x40,0x00,0x20,0x78,0x10, - 0x48,0x00,0x02,0x00,0x00,0x3F,0xF0,0x00,0x00,0x04,0x10,0x40,0x00,0x20,0x78,0x10, - 0x48,0xDC,0x3E,0x3C,0xEE,0x3F,0xF0,0x00,0x00,0x08,0x20,0x80,0x00,0x20,0x30,0x10, - 0x78,0x62,0x42,0x42,0x32,0x1F,0xE0,0x00,0x00,0x10,0x41,0x00,0x00,0x2F,0x03,0xD0, - 0x48,0x42,0x42,0x42,0x20,0x1F,0xE0,0x00,0x00,0x20,0x82,0x00,0x00,0x2F,0x87,0xD0, - 0x48,0x42,0x42,0x7E,0x20,0x3F,0xF0,0x00,0x00,0x20,0x82,0x00,0x00,0x2F,0x87,0xD0, - 0x40,0x42,0x42,0x40,0x20,0x3F,0xF0,0x00,0x00,0x10,0x41,0x00,0x00,0x27,0x87,0x90, - 0x42,0x42,0x46,0x42,0x20,0x3F,0xF0,0x00,0x00,0x08,0x20,0x80,0x00,0x33,0x87,0x30, - 0xFE,0xE7,0x3B,0x3C,0xF8,0x0F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, - 0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x00,0x00,0xFF,0xFF,0xC0,0x00,0x3F,0xFF,0xF0, - 0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0xFF,0xFF,0xC0,0x00,0x00,0x00,0x00 -}; -const unsigned char status_screen1_bmp[] PROGMEM = { - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xF0, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0xFC,0x30, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0xFC,0x10, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x78,0x10, - 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x30,0x10, - 0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2C,0x00,0xD0, - 0xFE,0x00,0x02,0x00,0x00,0x1F,0xE0,0x00,0x00,0x10,0x41,0x00,0x00,0x2E,0x31,0xD0, - 0x42,0x00,0x02,0x00,0x00,0x3F,0xF0,0x00,0x00,0x08,0x20,0x80,0x00,0x2F,0x7B,0xD0, - 0x48,0x00,0x02,0x00,0x00,0x3F,0xF0,0x00,0x00,0x08,0x20,0x80,0x00,0x2F,0x7B,0xD0, - 0x48,0xDC,0x3E,0x3C,0xEE,0x3F,0xF0,0x00,0x00,0x10,0x41,0x00,0x00,0x2E,0x31,0xD0, - 0x78,0x62,0x42,0x42,0x32,0x1F,0xE0,0x00,0x00,0x20,0x82,0x00,0x00,0x2C,0x00,0xD0, - 0x48,0x42,0x42,0x42,0x20,0x1F,0xE0,0x00,0x00,0x41,0x04,0x00,0x00,0x20,0x30,0x10, - 0x48,0x42,0x42,0x7E,0x20,0x3F,0xF0,0x00,0x00,0x41,0x04,0x00,0x00,0x20,0x78,0x10, - 0x40,0x42,0x42,0x40,0x20,0x3F,0xF0,0x00,0x00,0x20,0x82,0x00,0x00,0x20,0xFC,0x10, - 0x42,0x42,0x46,0x42,0x20,0x3F,0xF0,0x00,0x00,0x10,0x41,0x00,0x00,0x30,0xFC,0x30, - 0xFE,0xE7,0x3B,0x3C,0xF8,0x0F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, - 0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x00,0x00,0xFF,0xFF,0xC0,0x00,0x3F,0xFF,0xF0, - 0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0xFF,0xFF,0xC0,0x00,0x00,0x00,0x00 -}; - #define STATUS_SCREEN_X 0 -#define STATUS_SCREEN_HOTEND_TEXT_X(i) (39 + (i) * 25) -#define STATUS_SCREEN_BED_TEXT_X 72 +#define STATUS_SCREEN_HOTEND_TEXT_X(E) (38 + (E) * 20) #define STATUS_SCREEN_FAN_TEXT_X 103 -#endif // STATUSSCREEN_H_ +#include "MarlinConfig.h" + +#if HOTENDS < 2 + + const unsigned char status_screen0_bmp[] PROGMEM = { + //-------"ender"--------|-nozzle--|---------|-----bed------|----|-----fan------| + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xF0, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x33,0x87,0x30, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x27,0x87,0x90, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x87,0xD0, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x87,0xD0, + 0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x03,0xD0, + 0xFE,0x00,0x02,0x00,0x00,0x1F,0xE0,0x00,0x00,0x08,0x20,0x80,0x00,0x20,0x30,0x10, + 0x42,0x00,0x02,0x00,0x00,0x3F,0xF0,0x00,0x00,0x04,0x10,0x40,0x00,0x20,0x78,0x10, + 0x48,0x00,0x02,0x00,0x00,0x3F,0xF0,0x00,0x00,0x04,0x10,0x40,0x00,0x20,0x78,0x10, + 0x48,0xDC,0x3E,0x3C,0xEE,0x3F,0xF0,0x00,0x00,0x08,0x20,0x80,0x00,0x20,0x30,0x10, + 0x78,0x62,0x42,0x42,0x32,0x1F,0xE0,0x00,0x00,0x10,0x41,0x00,0x00,0x2F,0x03,0xD0, + 0x48,0x42,0x42,0x42,0x20,0x1F,0xE0,0x00,0x00,0x20,0x82,0x00,0x00,0x2F,0x87,0xD0, + 0x48,0x42,0x42,0x7E,0x20,0x3F,0xF0,0x00,0x00,0x20,0x82,0x00,0x00,0x2F,0x87,0xD0, + 0x40,0x42,0x42,0x40,0x20,0x3F,0xF0,0x00,0x00,0x10,0x41,0x00,0x00,0x27,0x87,0x90, + 0x42,0x42,0x46,0x42,0x20,0x3F,0xF0,0x00,0x00,0x08,0x20,0x80,0x00,0x33,0x87,0x30, + 0xFE,0xE7,0x3B,0x3C,0xF8,0x0F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x00,0x00,0xFF,0xFF,0xC0,0x00,0x3F,0xFF,0xF0, + 0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0xFF,0xFF,0xC0,0x00,0x00,0x00,0x00 + }; + const unsigned char status_screen1_bmp[] PROGMEM = { + //-------"ender"--------|-nozzle--|---------|-----bed------|----|-----fan------| + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xF0, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0xFC,0x30, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0xFC,0x10, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x78,0x10, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x30,0x10, + 0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2C,0x00,0xD0, + 0xFE,0x00,0x02,0x00,0x00,0x1F,0xE0,0x00,0x00,0x08,0x20,0x80,0x00,0x2E,0x31,0xD0, + 0x42,0x00,0x02,0x00,0x00,0x3F,0xF0,0x00,0x00,0x04,0x10,0x40,0x00,0x2F,0x7B,0xD0, + 0x48,0x00,0x02,0x00,0x00,0x3F,0xF0,0x00,0x00,0x04,0x10,0x40,0x00,0x2F,0x7B,0xD0, + 0x48,0xDC,0x3E,0x3C,0xEE,0x3F,0xF0,0x00,0x00,0x08,0x20,0x80,0x00,0x2E,0x31,0xD0, + 0x78,0x62,0x42,0x42,0x32,0x1F,0xE0,0x00,0x00,0x10,0x41,0x00,0x00,0x2C,0x00,0xD0, + 0x48,0x42,0x42,0x42,0x20,0x1F,0xE0,0x00,0x00,0x20,0x82,0x00,0x00,0x20,0x30,0x10, + 0x48,0x42,0x42,0x7E,0x20,0x3F,0xF0,0x00,0x00,0x20,0x82,0x00,0x00,0x20,0x78,0x10, + 0x40,0x42,0x42,0x40,0x20,0x3F,0xF0,0x00,0x00,0x10,0x41,0x00,0x00,0x20,0xFC,0x10, + 0x42,0x42,0x46,0x42,0x20,0x3F,0xF0,0x00,0x00,0x08,0x20,0x80,0x00,0x30,0xFC,0x30, + 0xFE,0xE7,0x3B,0x3C,0xF8,0x0F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x00,0x00,0xFF,0xFF,0xC0,0x00,0x3F,0xFF,0xF0, + 0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0xFF,0xFF,0xC0,0x00,0x00,0x00,0x00 + }; + + #define STATUS_SCREEN_BED_TEXT_X 73 + +#else // HOTENDS >= 2 + + const unsigned char status_screen0_bmp[] PROGMEM = { + //-------"ender"---------|nozzle|----|nozzle|----|-----bed-----|------fan------| + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xF0, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x33,0x87,0x30, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x27,0x87,0x90, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x87,0xD0, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x87,0xD0, + 0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x03,0xD0, + 0xFE,0x00,0x02,0x00,0x00,0x1F,0xE0,0x01,0xFE,0x00,0x08,0x20,0x80,0x20,0x30,0x10, + 0x42,0x00,0x02,0x00,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x04,0x10,0x40,0x20,0x78,0x10, + 0x48,0x00,0x02,0x00,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x04,0x10,0x40,0x20,0x78,0x10, + 0x48,0xDC,0x3E,0x3C,0xEE,0x3F,0xF0,0x03,0xFF,0x00,0x08,0x20,0x80,0x20,0x30,0x10, + 0x78,0x62,0x42,0x42,0x32,0x1F,0xE0,0x01,0xFE,0x00,0x10,0x41,0x00,0x2F,0x03,0xD0, + 0x48,0x42,0x42,0x42,0x20,0x1F,0xE0,0x01,0xFE,0x00,0x20,0x82,0x00,0x2F,0x87,0xD0, + 0x48,0x42,0x42,0x7E,0x20,0x3F,0xF0,0x03,0xFF,0x00,0x20,0x82,0x00,0x2F,0x87,0xD0, + 0x40,0x42,0x42,0x40,0x20,0x3F,0xF0,0x03,0xFF,0x00,0x10,0x41,0x00,0x27,0x87,0x90, + 0x42,0x42,0x46,0x42,0x20,0x3F,0xF0,0x03,0xFF,0x00,0x08,0x20,0x80,0x33,0x87,0x30, + 0xFE,0xE7,0x3B,0x3C,0xF8,0x0F,0xC0,0x00,0xFC,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x00,0x78,0x00,0xFF,0xFF,0xC0,0x3F,0xFF,0xF0, + 0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x30,0x00,0xFF,0xFF,0xC0,0x00,0x00,0x00 + }; + const unsigned char status_screen1_bmp[] PROGMEM = { + //-------"ender"---------|nozzle|----|nozzle|----|-----bed-----|------fan------| + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xF0, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0xFC,0x30, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0xFC,0x10, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x78,0x10, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x30,0x10, + 0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2C,0x00,0xD0, + 0xFE,0x00,0x02,0x00,0x00,0x1F,0xE0,0x01,0xFE,0x00,0x08,0x20,0x80,0x2E,0x31,0xD0, + 0x42,0x00,0x02,0x00,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x04,0x10,0x40,0x2F,0x7B,0xD0, + 0x48,0x00,0x02,0x00,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x04,0x10,0x40,0x2F,0x7B,0xD0, + 0x48,0xDC,0x3E,0x3C,0xEE,0x3F,0xF0,0x03,0xFF,0x00,0x08,0x20,0x80,0x2E,0x31,0xD0, + 0x78,0x62,0x42,0x42,0x32,0x1F,0xE0,0x01,0xFE,0x00,0x10,0x41,0x00,0x2C,0x00,0xD0, + 0x48,0x42,0x42,0x42,0x20,0x1F,0xE0,0x01,0xFE,0x00,0x20,0x82,0x00,0x20,0x30,0x10, + 0x48,0x42,0x42,0x7E,0x20,0x3F,0xF0,0x03,0xFF,0x00,0x20,0x82,0x00,0x20,0x78,0x10, + 0x40,0x42,0x42,0x40,0x20,0x3F,0xF0,0x03,0xFF,0x00,0x10,0x41,0x00,0x20,0xFC,0x10, + 0x42,0x42,0x46,0x42,0x20,0x3F,0xF0,0x03,0xFF,0x00,0x08,0x20,0x80,0x30,0xFC,0x30, + 0xFE,0xE7,0x3B,0x3C,0xF8,0x0F,0xC0,0x00,0xFC,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x00,0x00,0x00,0x00,0x00,0x07,0x80,0x00,0x78,0x00,0xFF,0xFF,0xC0,0x3F,0xFF,0xF0, + 0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x30,0x00,0xFF,0xFF,0xC0,0x00,0x00,0x00 + }; + + #define STATUS_SCREEN_BED_TEXT_X 81 + +#endif // HOTENDS >= 2 + +#endif // _STATUSSCREEN_H_ From 94a9cd647765301d7bb2e0dce2523e2afef9097a Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 20 Jan 2018 22:43:05 -0600 Subject: [PATCH 3/3] CR-10S filament change length, enhanced status bitmap --- .../Creality/CR-10S/Configuration.h | 4 +- .../Creality/CR-10S/Configuration_adv.h | 16 +-- .../Creality/CR-10S/_Statusscreen.h | 112 ++++++++++++++++++ 3 files changed, 122 insertions(+), 10 deletions(-) create mode 100644 Marlin/example_configurations/Creality/CR-10S/_Statusscreen.h diff --git a/Marlin/example_configurations/Creality/CR-10S/Configuration.h b/Marlin/example_configurations/Creality/CR-10S/Configuration.h index 39eb07e7a..a33812fd1 100644 --- a/Marlin/example_configurations/Creality/CR-10S/Configuration.h +++ b/Marlin/example_configurations/Creality/CR-10S/Configuration.h @@ -93,7 +93,7 @@ //#define SHOW_CUSTOM_BOOTSCREEN // Enable to show the bitmap in Marlin/_Statusscreen.h on the status screen. -//#define CUSTOM_STATUS_SCREEN_IMAGE +#define CUSTOM_STATUS_SCREEN_IMAGE // @section machine @@ -428,7 +428,7 @@ // This option prevents a single extrusion longer than EXTRUDE_MAXLENGTH. // Note that for Bowden Extruders a too-small value here may prevent loading. #define PREVENT_LENGTHY_EXTRUDE -#define EXTRUDE_MAXLENGTH 200 +#define EXTRUDE_MAXLENGTH 435 //=========================================================================== //======================== Thermal Runaway Protection ======================= diff --git a/Marlin/example_configurations/Creality/CR-10S/Configuration_adv.h b/Marlin/example_configurations/Creality/CR-10S/Configuration_adv.h index b06796b95..32d97fd8e 100644 --- a/Marlin/example_configurations/Creality/CR-10S/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/CR-10S/Configuration_adv.h @@ -388,7 +388,7 @@ // @section lcd #if ENABLED(ULTIPANEL) - #define MANUAL_FEEDRATE {50*60, 50*60, 4*60, 60} // Feedrates for manual moves along X, Y, Z, E from panel + #define MANUAL_FEEDRATE {50*60, 50*60, 4*60, 1*60} // Feedrates (mm/m) for manual moves along X, Y, Z, E from panel #define ULTIPANEL_FEEDMULTIPLY // Comment to disable setting feedrate multiplier via encoder #endif @@ -887,25 +887,25 @@ #define PAUSE_PARK_RETRACT_FEEDRATE 60 // (mm/s) Initial retract feedrate. #define PAUSE_PARK_RETRACT_LENGTH 4 // (mm) Initial retract. // This short retract is done immediately, before parking the nozzle. - #define FILAMENT_CHANGE_UNLOAD_FEEDRATE 10 // (mm/s) Unload filament feedrate. This can be pretty fast. - #define FILAMENT_CHANGE_UNLOAD_LENGTH 100 // (mm) The length of filament for a complete unload. + #define FILAMENT_CHANGE_UNLOAD_FEEDRATE 41 // (mm/s) Unload filament feedrate. This can be pretty fast. + #define FILAMENT_CHANGE_UNLOAD_LENGTH 430 // (mm) The length of filament for a complete unload. // For Bowden, the full length of the tube and nozzle. // For direct drive, the full length of the nozzle. // Set to 0 for manual unloading. - #define FILAMENT_CHANGE_LOAD_FEEDRATE 6 // (mm/s) Load filament feedrate. This can be pretty fast. - #define FILAMENT_CHANGE_LOAD_LENGTH 0 // (mm) Load length of filament, from extruder gear to nozzle. + #define FILAMENT_CHANGE_LOAD_FEEDRATE 41 // (mm/s) Load filament feedrate. This can be pretty fast. + #define FILAMENT_CHANGE_LOAD_LENGTH 430 // (mm) Load length of filament, from extruder gear to nozzle. // For Bowden, the full length of the tube and nozzle. // For direct drive, the full length of the nozzle. #define ADVANCED_PAUSE_EXTRUDE_FEEDRATE 3 // (mm/s) Extrude feedrate (after loading). Should be slower than load feedrate. - #define ADVANCED_PAUSE_EXTRUDE_LENGTH 50 // (mm) Length to extrude after loading. + #define ADVANCED_PAUSE_EXTRUDE_LENGTH 20 // (mm) Length to extrude after loading. // Set to 0 for manual extrusion. // Filament can be extruded repeatedly from the Filament Change menu // until extrusion is consistent, and to purge old filament. // Filament Unload does a Retract, Delay, and Purge first: - #define FILAMENT_UNLOAD_RETRACT_LENGTH 2 // (mm) Unload initial retract length. + #define FILAMENT_UNLOAD_RETRACT_LENGTH 4 // (mm) Unload initial retract length. #define FILAMENT_UNLOAD_DELAY 5000 // (ms) Delay for the filament to cool after retract. - #define FILAMENT_UNLOAD_PURGE_LENGTH 8 // (mm) An unretract is done, then this length is purged. + #define FILAMENT_UNLOAD_PURGE_LENGTH 0 // (mm) An unretract is done, then this length is purged. #define PAUSE_PARK_NOZZLE_TIMEOUT 45 // (seconds) Time limit before the nozzle is turned off for safety. #define FILAMENT_CHANGE_ALERT_BEEPS 6 // Number of alert beeps to play when a response is needed. diff --git a/Marlin/example_configurations/Creality/CR-10S/_Statusscreen.h b/Marlin/example_configurations/Creality/CR-10S/_Statusscreen.h new file mode 100644 index 000000000..c785ca632 --- /dev/null +++ b/Marlin/example_configurations/Creality/CR-10S/_Statusscreen.h @@ -0,0 +1,112 @@ +#ifndef _STATUSSCREEN_H_ +#define _STATUSSCREEN_H_ + +#define STATUS_SCREENWIDTH 128 // Width in pixels + +#define STATUS_SCREEN_X 0 +#define STATUS_SCREEN_HOTEND_TEXT_X(E) (38 + (E) * 20) +#define STATUS_SCREEN_FAN_TEXT_X 103 + +#include "MarlinConfig.h" + +#if HOTENDS < 2 + + const unsigned char status_screen0_bmp[] PROGMEM = { + //-----"CR-10S 300"-----|-nozzle--|---------|-----bed------|----|-----fan------| + 0x3D,0xF0,0x02,0x38,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xF0, + 0x44,0x88,0x06,0x45,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x80,0x88,0x02,0x45,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x33,0x87,0x30, + 0x80,0xF0,0x02,0x44,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x27,0x87,0x90, + 0x80,0xA3,0xF2,0x44,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x87,0xD0, + 0x80,0x90,0x02,0x44,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x87,0xD0, + 0x80,0x90,0x02,0x44,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x03,0xD0, + 0x44,0x88,0x02,0x45,0x10,0x1F,0xE0,0x00,0x00,0x08,0x20,0x80,0x00,0x20,0x30,0x10, + 0x39,0xCC,0x07,0x39,0xE0,0x3F,0xF0,0x00,0x00,0x04,0x10,0x40,0x00,0x20,0x78,0x10, + 0x00,0x00,0x00,0x00,0x00,0x3F,0xF0,0x00,0x00,0x04,0x10,0x40,0x00,0x20,0x78,0x10, + 0x00,0x38,0x70,0xE0,0x00,0x3F,0xF0,0x00,0x00,0x08,0x20,0x80,0x00,0x20,0x30,0x10, + 0x00,0x44,0x89,0x10,0x00,0x1F,0xE0,0x00,0x00,0x10,0x41,0x00,0x00,0x2F,0x03,0xD0, + 0x00,0x04,0x89,0x10,0x00,0x1F,0xE0,0x00,0x00,0x20,0x82,0x00,0x00,0x2F,0x87,0xD0, + 0x00,0x18,0x89,0x10,0x00,0x3F,0xF0,0x00,0x00,0x20,0x82,0x00,0x00,0x2F,0x87,0xD0, + 0x00,0x04,0x89,0x10,0x00,0x3F,0xF0,0x00,0x00,0x10,0x41,0x00,0x00,0x27,0x87,0x90, + 0x00,0x04,0x89,0x10,0x00,0x3F,0xF0,0x00,0x00,0x08,0x20,0x80,0x00,0x33,0x87,0x30, + 0x00,0x04,0x89,0x10,0x00,0x0F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x00,0x44,0x89,0x10,0x00,0x07,0x80,0x00,0x00,0xFF,0xFF,0xC0,0x00,0x3F,0xFF,0xF0, + 0x00,0x38,0x70,0xE0,0x00,0x03,0x00,0x00,0x00,0xFF,0xFF,0xC0,0x00,0x00,0x00,0x00 + }; + const unsigned char status_screen1_bmp[] PROGMEM = { + //-----"CR-10S 300"-----|-nozzle--|---------|-----bed------|----|-----fan------| + 0x3D,0xF0,0x02,0x38,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xF0, + 0x44,0x88,0x06,0x45,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x80,0x88,0x02,0x45,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0xFC,0x30, + 0x80,0xF0,0x02,0x44,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0xFC,0x10, + 0x80,0xA3,0xF2,0x44,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x78,0x10, + 0x80,0x90,0x02,0x44,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x30,0x10, + 0x80,0x90,0x02,0x44,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2C,0x00,0xD0, + 0x44,0x88,0x02,0x45,0x10,0x1F,0xE0,0x00,0x00,0x08,0x20,0x80,0x00,0x2E,0x31,0xD0, + 0x39,0xCC,0x07,0x39,0xE0,0x3F,0xF0,0x00,0x00,0x04,0x10,0x40,0x00,0x2F,0x7B,0xD0, + 0x00,0x00,0x00,0x00,0x00,0x3F,0xF0,0x00,0x00,0x04,0x10,0x40,0x00,0x2F,0x7B,0xD0, + 0x00,0x38,0x70,0xE0,0x00,0x3F,0xF0,0x00,0x00,0x08,0x20,0x80,0x00,0x2E,0x31,0xD0, + 0x00,0x44,0x89,0x10,0x00,0x1F,0xE0,0x00,0x00,0x10,0x41,0x00,0x00,0x2C,0x00,0xD0, + 0x00,0x04,0x89,0x10,0x00,0x1F,0xE0,0x00,0x00,0x20,0x82,0x00,0x00,0x20,0x30,0x10, + 0x00,0x18,0x89,0x10,0x00,0x3F,0xF0,0x00,0x00,0x20,0x82,0x00,0x00,0x20,0x78,0x10, + 0x00,0x04,0x89,0x10,0x00,0x3F,0xF0,0x00,0x00,0x10,0x41,0x00,0x00,0x20,0xFC,0x10, + 0x00,0x04,0x89,0x10,0x00,0x3F,0xF0,0x00,0x00,0x08,0x20,0x80,0x00,0x30,0xFC,0x30, + 0x00,0x04,0x89,0x10,0x00,0x0F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x00,0x44,0x89,0x10,0x00,0x07,0x80,0x00,0x00,0xFF,0xFF,0xC0,0x00,0x3F,0xFF,0xF0, + 0x00,0x38,0x70,0xE0,0x00,0x03,0x00,0x00,0x00,0xFF,0xFF,0xC0,0x00,0x00,0x00,0x00 + }; + + #define STATUS_SCREEN_BED_TEXT_X 73 + +#else // HOTENDS >= 2 + + const unsigned char status_screen0_bmp[] PROGMEM = { + //-----"CR-10S 300"------|nozzle|----|nozzle|----|-----bed-----|------fan------| + 0x3D,0xF0,0x02,0x38,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xF0, + 0x44,0x88,0x06,0x45,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x80,0x88,0x02,0x45,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x33,0x87,0x30, + 0x80,0xF0,0x02,0x44,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x27,0x87,0x90, + 0x80,0xA3,0xF2,0x44,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x87,0xD0, + 0x80,0x90,0x02,0x44,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x87,0xD0, + 0x80,0x90,0x02,0x44,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2F,0x03,0xD0, + 0x44,0x88,0x02,0x45,0x10,0x1F,0xE0,0x01,0xFE,0x00,0x08,0x20,0x80,0x20,0x30,0x10, + 0x39,0xCC,0x07,0x39,0xE0,0x3F,0xF0,0x03,0xFF,0x00,0x04,0x10,0x40,0x20,0x78,0x10, + 0x00,0x00,0x00,0x00,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x04,0x10,0x40,0x20,0x78,0x10, + 0x00,0x38,0x70,0xE0,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x08,0x20,0x80,0x20,0x30,0x10, + 0x00,0x44,0x89,0x10,0x00,0x1F,0xE0,0x01,0xFE,0x00,0x10,0x41,0x00,0x2F,0x03,0xD0, + 0x00,0x04,0x89,0x10,0x00,0x1F,0xE0,0x01,0xFE,0x00,0x20,0x82,0x00,0x2F,0x87,0xD0, + 0x00,0x18,0x89,0x10,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x20,0x82,0x00,0x2F,0x87,0xD0, + 0x00,0x04,0x89,0x10,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x10,0x41,0x00,0x27,0x87,0x90, + 0x00,0x04,0x89,0x10,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x08,0x20,0x80,0x33,0x87,0x30, + 0x00,0x04,0x89,0x10,0x00,0x0F,0xC0,0x00,0xFC,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x00,0x44,0x89,0x10,0x00,0x07,0x80,0x00,0x78,0x00,0xFF,0xFF,0xC0,0x3F,0xFF,0xF0, + 0x00,0x38,0x70,0xE0,0x00,0x03,0x00,0x00,0x30,0x00,0xFF,0xFF,0xC0,0x00,0x00,0x00 + }; + const unsigned char status_screen1_bmp[] PROGMEM = { + //-----"CR-10S 300"------|nozzle|----|nozzle|----|-----bed-----|------fan------| + 0x3D,0xF0,0x02,0x38,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xF0, + 0x44,0x88,0x06,0x45,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x80,0x88,0x02,0x45,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0xFC,0x30, + 0x80,0xF0,0x02,0x44,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0xFC,0x10, + 0x80,0xA3,0xF2,0x44,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x78,0x10, + 0x80,0x90,0x02,0x44,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x30,0x10, + 0x80,0x90,0x02,0x44,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x2C,0x00,0xD0, + 0x44,0x88,0x02,0x45,0x10,0x1F,0xE0,0x01,0xFE,0x00,0x08,0x20,0x80,0x2E,0x31,0xD0, + 0x39,0xCC,0x07,0x39,0xE0,0x3F,0xF0,0x03,0xFF,0x00,0x04,0x10,0x40,0x2F,0x7B,0xD0, + 0x00,0x00,0x00,0x00,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x04,0x10,0x40,0x2F,0x7B,0xD0, + 0x00,0x38,0x70,0xE0,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x08,0x20,0x80,0x2E,0x31,0xD0, + 0x00,0x44,0x89,0x10,0x00,0x1F,0xE0,0x01,0xFE,0x00,0x10,0x41,0x00,0x2C,0x00,0xD0, + 0x00,0x04,0x89,0x10,0x00,0x1F,0xE0,0x01,0xFE,0x00,0x20,0x82,0x00,0x20,0x30,0x10, + 0x00,0x18,0x89,0x10,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x20,0x82,0x00,0x20,0x78,0x10, + 0x00,0x04,0x89,0x10,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x10,0x41,0x00,0x20,0xFC,0x10, + 0x00,0x04,0x89,0x10,0x00,0x3F,0xF0,0x03,0xFF,0x00,0x08,0x20,0x80,0x30,0xFC,0x30, + 0x00,0x04,0x89,0x10,0x00,0x0F,0xC0,0x00,0xFC,0x00,0x00,0x00,0x00,0x38,0x00,0x70, + 0x00,0x44,0x89,0x10,0x00,0x07,0x80,0x00,0x78,0x00,0xFF,0xFF,0xC0,0x3F,0xFF,0xF0, + 0x00,0x38,0x70,0xE0,0x00,0x03,0x00,0x00,0x30,0x00,0xFF,0xFF,0xC0,0x00,0x00,0x00 + }; + + #define STATUS_SCREEN_BED_TEXT_X 81 + +#endif // HOTENDS >= 2 + +#endif // _STATUSSCREEN_H_