CR-10S filament change length, enhanced status bitmap

This commit is contained in:
Scott Lahteine 2018-01-20 22:43:05 -06:00
parent 0cfcc7cbf5
commit 94a9cd6477
3 changed files with 122 additions and 10 deletions

View File

@ -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 =======================

View File

@ -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.

View File

@ -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_