diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index e723a660d0..965633de26 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -6,10 +6,10 @@ */ //#define MachineEnder2 -//#define MachineEnder3 +#define MachineEnder3 //#define MachineEnder4 //#define MachineEnder5 -#define MachineEnder5Plus +//#define MachineEnder5Plus //#define MachineMini //#define MachineCR20 //Buzzer doesnt work //#define MachineCR20Pro @@ -21,7 +21,6 @@ //#define MachineS4 //#define MachineS5 -//#define MachineCR10Orig // Forces Melzi board /* Enabled this for linear advance instead of mesh leveling on a melzi board @@ -32,12 +31,16 @@ //#define Big_UI // Lightweight status screen -//#define GraphicLCD //Full graphics LCD for Ender 4, CR-X or CR10SPro +#define GraphicLCD //Full graphics LCD for Ender 4, CR-X or CR10SPro //#define ForceCRXDisplay #define Force10SProDisplay + //#define AddonFilSensor //Adds a filamnt runout sensor to the CR20 or Ender 4 //#define lerdgeFilSensor //Using lerdge filament sensor, which is opposite polarity to stock //#define DualFilSensors //Using dual filament sensors on XMax and YMAX + +//#define MachineCR10Orig // Forces Melzi board +#define Melzi_To_SBoardUpgrade // Upgrade Melzi board to 10S board //#define SKR13 // 32 bit board - assumes 2208 drivers //#define SKR13_2209 //#define SKR13_UART // Configure SKR board with drivers in UART mode @@ -275,7 +278,7 @@ #endif -#if ENABLED(MachineEnder2) || ENABLED(MachineEnder3) || ENABLED(MachineCR10) +#if ANY(MachineEnder2, MachineEnder3, MachineCR10) && NONE(Melzi_To_SBoardUpgrade, SKR13) #define MachineCR10Orig #endif @@ -450,7 +453,7 @@ #ifndef MOTHERBOARD #if ENABLED(SKR13) #define MOTHERBOARD BOARD_BIGTREE_SKR_V1_3 - #elif(ENABLED(MachineCR10Orig)) + #elif (ENABLED(MachineCR10Orig) && DISABLED(Melzi_To_SBoardUpgrade)) #define MOTHERBOARD BOARD_MELZI_CREALITY #else #define MOTHERBOARD BOARD_RAMPS_CREALITY @@ -1164,7 +1167,13 @@ #define EStepsmm 95 #endif -#define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, EStepsmm } +#if ENABLED(MachineEnder5Plus) + #define ZStepsmm 800 +#else + #define ZStepsmm 400 +#endif + +#define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, ZStepsmm, EStepsmm } /** * Default Max Feed Rate (mm/s) @@ -1915,8 +1924,12 @@ #if ENABLED(MeshFast) #define GRID_MAX_POINTS_X 3 -#elif (ENABLED(MeshStd) ) - #define GRID_MAX_POINTS_X 5 +#elif ENABLED(MeshStd) + #if ENABLED(ABL_UBL) + #define GRID_MAX_POINTS_X 6 + #else + #define GRID_MAX_POINTS_X 5 + #endif #elif ENABLED( MeshFine) #define GRID_MAX_POINTS_X 8 #elif ENABLED(MeshExtreme) @@ -1968,7 +1981,7 @@ //=========================================================================== //========================= Unified Bed Leveling ============================ //=========================================================================== - + #define MESH_INSET 1 #if NONE(MachineCR10SPro, MachineCRX, MachineEnder5Plus, MachineCR10Max, OrigLCD) || ENABLED(GraphicLCD) #define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh #endif @@ -2002,7 +2015,6 @@ */ #if ENABLED(AUTO_BED_LEVELING_3POINT) || ENABLED(AUTO_BED_LEVELING_UBL) -#define MESH_INSET 15 #if NONE(MachineCR10SPro, MachineCRX, MachineEnder5Plus, MachineCR10Max, MachineEnder4) || ENABLED(GraphicLCD) #define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh #endif @@ -2532,8 +2544,8 @@ // If you have a speaker that can produce tones, enable it here. // By default Marlin assumes you have a buzzer with a fixed frequency. // -#if(DISABLED(MachineCR10Orig) && DISABLED(LowMemoryBoard)) -#define SPEAKER +#if NONE(MachineCR10SPro, MachineCRX, MachineEnder5Plus, MachineCR10Max, MachineCR10Orig) || ENABLED(GraphicLCD) + #define SPEAKER #endif // diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index c885ff156d..d7f191b707 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -2416,9 +2416,9 @@ #endif #define USER_DESC_1 "Setup" #if (ENABLED(ABL_UBL)) - #define USER_GCODE_1 "M190S" CommBedTmp "\nG28\nG29P1\nG29P3\nM109S215\nG29S1\nG29S0\nG29F0.0\nG29A\nG28\nG1X150Y150F5000\nG1Z0\nM500\nM400\nM117 Set Z Offset" + #define USER_GCODE_1 "M190S" CommBedTmp "\nG28\nG29P1\nG29P3\nG29S1\nG29S0\nG29F0.0\nG29A\nM104S215\nG28\nM109S215\nG1X150Y150F5000\nG1Z0\nM500\nM400\nM117 Set Z Offset" #elif ENABLED(ABL_BI) - #define USER_GCODE_1 "M190S" CommBedTmp "\nG28\nG29\nM400\nM109S215\nG28\nM420S1\nG1X100Y100F5000\nG1Z0\nM500\nM117 Set Z Offset" + #define USER_GCODE_1 "M190S" CommBedTmp "\nG28\nG29\nM400\nM104S215\nG28\nM109S215\nM420S1\nG1X100Y100F5000\nG1Z0\nM500\nM117 Set Z Offset" #endif #define USER_DESC_2 "PID Tune" diff --git a/Marlin/_Bootscreen.h b/Marlin/_Bootscreen.h new file mode 100644 index 0000000000..13da762696 --- /dev/null +++ b/Marlin/_Bootscreen.h @@ -0,0 +1,94 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +/** + * Custom Bitmap for splashscreen + * + * You may use one of the following tools to generate the C++ bitmap array from + * a black and white image: + * + * - http://www.marlinfw.org/tools/u8glib/converter.html + * - http://www.digole.com/tools/PicturetoC_Hex_converter.php + */ +#include + +#define CUSTOM_BOOTSCREEN_TIMEOUT 2500 +#define CUSTOM_BOOTSCREEN_BMPWIDTH 128 +#define CUSTOM_BOOTSCREEN_INVERTED + +const unsigned char custom_start_bmp[] PROGMEM = { + B11111101,B01010101,B01010101,B01010101,B01010101,B01010101,B01011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, + B11111110,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, + B11111101,B00000000,B00000000,B00000111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, + B11111110,B00000111,B11000000,B00000101,B01010101,B01010101,B01010101,B01010101,B01010101,B01011111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, + B11111100,B00001010,B00100000,B00000110,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, + B11111110,B00010100,B00010000,B00000101,B00000000,B00000000,B00000111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, + B11111100,B00101000,B00001000,B00000110,B00000111,B11000000,B00000101,B01010101,B01010101,B01010101,B01010101,B01010101,B01011111,B11111111,B11111111,B11111111, + B11111110,B01010100,B00000100,B00000100,B00001010,B00100000,B00000110,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111,B11111111,B11111111,B11111111, + B11111100,B01100000,B00000100,B00000110,B00010100,B00010000,B00000101,B00000000,B00000000,B00000111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, + B11111110,B01010000,B00000100,B00000100,B00101000,B00001000,B00000110,B00000111,B11000000,B00000101,B01010101,B01010101,B01010101,B01010101,B01010101,B01011111, + B11111100,B01100000,B00000100,B00000110,B01010100,B00000100,B00000100,B00001010,B00100000,B00000110,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111, + B11111110,B01010100,B00000100,B00011100,B01100000,B00000100,B00000110,B00010100,B00010000,B00000101,B00000000,B00000000,B00000000,B00000000,B00000000,B00011111, + B11111100,B00101000,B00001000,B00101110,B01010000,B00000100,B00000100,B00101000,B00001000,B00000110,B00000111,B11000000,B00000000,B00000001,B11110000,B00111111, + B11111110,B00010100,B00010000,B01010100,B01100000,B00000100,B00000110,B01010100,B00000100,B00000100,B00001010,B00100000,B00000000,B00000010,B00001000,B00011111, + B11111100,B00001010,B00100000,B01100110,B01010100,B00000100,B00011100,B01100000,B00000100,B00000110,B00010100,B00010000,B00000000,B00000101,B00000100,B00111111, + B11111110,B00000111,B11000000,B01010100,B00101000,B00001000,B00101110,B01010000,B00000100,B00000100,B00101000,B00001000,B00000000,B00001010,B00000010,B00011111, + B11111100,B00000000,B00000000,B00101110,B00010100,B00010000,B01010100,B01100000,B00000100,B00000110,B01010100,B00000100,B00000000,B00010101,B00000001,B00111111, + B11111110,B00000000,B00000000,B00011100,B00001010,B00100000,B01100110,B01010100,B00000100,B00011100,B01100000,B00000100,B00000000,B00011000,B00000001,B00011111, + B11111100,B00000000,B00000000,B00000110,B00000111,B11000000,B01010100,B00101000,B00001000,B00101110,B01010000,B00000100,B00000000,B00010100,B00000001,B00111111, + B11111110,B00000000,B00000000,B00000100,B00000000,B00000000,B00101110,B00010100,B00010000,B01010100,B01100000,B00000100,B00000000,B00011000,B00000001,B00011111, + B11111100,B11111111,B11111111,B11111110,B00000000,B00000000,B00011100,B00001010,B00100000,B01100110,B01010100,B00000100,B00011100,B00010101,B00000001,B00111111, + B11111110,B11010101,B01010101,B01010100,B00000000,B00000000,B00000110,B00000111,B11000000,B01010100,B00101000,B00001000,B00101010,B00001010,B00000010,B00011111, + B11111100,B10000100,B00010000,B01000110,B00000000,B00000000,B00000100,B00000000,B00000000,B00101110,B00010100,B00010000,B01010001,B00000101,B00000100,B00111111, + B11111110,B11000100,B00010000,B01000100,B11111111,B11111111,B11111110,B00000000,B00000000,B00011100,B00001010,B00100000,B01100001,B00000010,B10001000,B00011111, + B11111100,B10000100,B00010000,B01000110,B11010101,B01010101,B01010100,B00000000,B00000000,B00000110,B00000111,B11000000,B01010001,B00000001,B11110000,B00111111, + B11111110,B10000100,B00010000,B01000100,B10000100,B00010000,B01000110,B00000000,B00000000,B00000100,B00000000,B00000000,B00101010,B00000000,B00000000,B00011111, + B11111100,B11000100,B00010000,B01000110,B11000100,B00010000,B01000100,B11111111,B11111111,B11111110,B00000000,B00000000,B00011100,B00000000,B00000000,B00111111, + B11111110,B10000100,B00010000,B01000100,B10000100,B00010000,B01000110,B11010101,B01010101,B01010100,B00000000,B00000000,B00000000,B00000000,B00000000,B00011111, + B11111100,B11010101,B01010101,B01010110,B10000100,B00010000,B01000100,B10000100,B00010000,B01000110,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111, + B11111100,B11111111,B11111111,B11111100,B11000100,B00010000,B01000110,B11000100,B00010000,B01000100,B11111111,B11111111,B11111111,B11111111,B11111111,B10011111, + B11111110,B00000000,B00000000,B00000110,B10000100,B00010000,B01000100,B10000100,B00010000,B01000110,B11010101,B01010101,B01010101,B01010101,B01010101,B10111111, + B11111101,B01010101,B01010101,B01010100,B11010101,B01010101,B01010110,B10000100,B00010000,B01000100,B10000100,B00010000,B01000001,B00000100,B00010000,B10011111, + B11111111,B11111111,B11111111,B11111100,B11111111,B11111111,B11111100,B11000100,B00010000,B01000110,B11000100,B00010000,B01000001,B00000100,B00010001,B10111111, + B11111111,B11111111,B11111111,B11111110,B00000000,B00000000,B00000110,B10000100,B00010000,B01000100,B10000100,B00010000,B01000001,B00000100,B00010000,B10011111, + B11111111,B11111111,B11111111,B11111101,B01010101,B01010101,B01010100,B11010101,B01010101,B01010110,B10000100,B00010000,B01000001,B00000100,B00010000,B10011111, + B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111100,B11111111,B11111111,B11111100,B11000100,B00010000,B01000001,B00000100,B00010001,B10111111, + B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111110,B00000000,B00000000,B00000110,B10000100,B00010000,B01000001,B00000100,B00010000,B10011111, + B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111101,B01010101,B01010101,B01010100,B11010101,B01010101,B01010101,B01010101,B01010101,B10111111, + B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111100,B11111111,B11111111,B11111111,B11111111,B11111111,B10011111, + B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111110,B00000000,B00000000,B00000000,B00000000,B00000000,B00111111, + B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111101,B01010101,B01010101,B01010101,B01010101,B01010101,B01011111, + B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, + B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, + B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, + B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111, + B11100000,B00101110,B11111011,B01111101,B11111011,B11111011,B11001111,B11000001,B11011111,B10111011,B00111110,B11000000,B11100001,B11111110,B00111100,B00011111, + B11111101,B11101110,B01111011,B00111001,B11111001,B11110011,B11001111,B10011110,B11011111,B10111011,B00111110,B11011111,B11011110,B11111100,B11011101,B11100111, + B11111101,B11101110,B00111011,B10111011,B11111001,B11101011,B11010111,B10111111,B01011111,B10111011,B01011110,B11011111,B11011110,B11111101,B11101101,B11110111, + B11111101,B11101110,B10111011,B11010011,B11111010,B11101011,B10110111,B00111111,B11011111,B10111011,B01001110,B11011111,B11011111,B11111111,B11001101,B11110011, + B11111101,B11101110,B11011011,B11000111,B11111010,B11101011,B10111011,B01111111,B11000000,B00111011,B01101110,B11000000,B11100011,B11111111,B00011101,B11110011, + B11111101,B11101110,B11001011,B11101111,B11111010,B11011011,B10111011,B01111111,B11011111,B10111011,B01100110,B11011111,B11111000,B11111111,B11001101,B11110011, + B11111101,B11101110,B11101011,B11101111,B11111011,B01011011,B00000011,B00111111,B01011111,B10111011,B01110110,B11011111,B11111110,B01111111,B11101101,B11110011, + B11111101,B11101110,B11110011,B11101111,B11111011,B01011011,B01111001,B10111110,B11011111,B10111011,B01111010,B11011111,B11011110,B01111101,B11101101,B11110111, + B11111101,B11101110,B11110011,B11101111,B11111011,B10111010,B11111101,B10011110,B11011111,B10111011,B01111100,B11011111,B11011110,B11111101,B11001101,B11100111, + B11111101,B11101110,B11111011,B11101111,B11111011,B10111010,B11111101,B11000001,B11011111,B10111011,B01111110,B11000000,B11100000,B11111110,B00011100,B00011111 +}; diff --git a/Marlin/_Statusscreen.h b/Marlin/_Statusscreen.h new file mode 100644 index 0000000000..d0450837ab --- /dev/null +++ b/Marlin/_Statusscreen.h @@ -0,0 +1,74 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +/** + * Custom Status Screen bitmap + * + * Place this file in the root with your configuration files + * and enable CUSTOM_STATUS_SCREEN_IMAGE in Configuration.h. + * + * Use the Marlin Bitmap Converter to make your own: + * http://marlinfw.org/tools/u8glib/converter.html + */ + +// +// Status Screen Logo bitmap +// +#define STATUS_LOGO_Y 3 +#define STATUS_LOGO_WIDTH 24 + +const unsigned char status_logo_bmp[] PROGMEM = { + B11111111,B11111111,B11111111, + B10000000,B00000000,B00000001, + B10001110,B00000000,B11100001, + B10011111,B00000001,B11110001, + B10010011,B10000001,B00111001, + B10011111,B10000001,B11111001, + B10011111,B10000001,B11111001, + B10011111,B10111001,B11111001, + B10001111,B00101000,B11110001, + B10000000,B00111000,B00000001, + B10000000,B00000000,B00000001, + B10011111,B11111111,B11111001, + B10010001,B01110100,B10011001, + B10011011,B00000110,B10101001, + B10011011,B01010100,B10101001, + B10011011,B01010110,B10101001, + B10011011,B01010100,B10011001, + B10011111,B11111111,B11111001, + B11111111,B11111111,B11111111 +}; + +// +// Use default bitmaps +// +#define STATUS_HOTEND_ANIM +#define STATUS_BED_ANIM +#if HOTENDS < 2 + #define STATUS_LOGO_X 8 + #define STATUS_HEATERS_X 40 + #define STATUS_BED_X 72 +#else + #define STATUS_LOGO_X 0 + #define STATUS_HEATERS_X 32 + #define STATUS_BED_X 80 +#endif diff --git a/Marlin/src/lcd/extensible_ui/lib/Creality_DWIN.cpp b/Marlin/src/lcd/extensible_ui/lib/Creality_DWIN.cpp index 1de74801ad..4c81972bdf 100644 --- a/Marlin/src/lcd/extensible_ui/lib/Creality_DWIN.cpp +++ b/Marlin/src/lcd/extensible_ui/lib/Creality_DWIN.cpp @@ -1055,7 +1055,7 @@ SERIAL_ECHOLN(PSTR("BeginSwitch")); } else if (recdat.data[0] == 4) //Language { - //Language change not supported + //Just loads language screen, now used for tools } else if (recdat.data[0] == 5) //Printer Information { @@ -1138,33 +1138,40 @@ SERIAL_ECHOLN(PSTR("BeginSwitch")); waitway = 3; //only for prohibiting to receive massage RTS_SndData(3, AutolevelIcon); bool zig = true; - for (uint8_t yCount = 0, showcount = 0; yCount < GRID_MAX_POINTS_Y; yCount++) - { - int8_t inStart, inStop, inInc; + for (uint8_t yCount = 0, showcount = 0; yCount < GRID_MAX_POINTS_Y; yCount++) + { + int8_t inStart, inStop, inInc; + if (zig) + { // away from origin + inStart = 0; + inStop = GRID_MAX_POINTS_X; + inInc = 1; + } + else + { // towards origin + inStart = GRID_MAX_POINTS_X - 1; + inStop = -1; + inInc = -1; + } - if (zig) - { // away from origin - inStart = 0; - inStop = GRID_MAX_POINTS_X; - inInc = 1; - } - else - { // towards origin - inStart = GRID_MAX_POINTS_X - 1; - inStop = -1; - inInc = -1; - } - - zig ^= true; // zag - for (int8_t xCount = inStart; xCount != inStop; xCount += inInc) - { - if ((showcount++) < (GRID_MAX_POINTS_X * GRID_MAX_POINTS_X)) - { - rtscheck.RTS_SndData(ExtUI::getMeshPoint(xCount, yCount) * 1000, AutolevelVal + (showcount - 1) * 2); - //rtscheck.RTS_SndData(showcount, AutolevelIcon); - } - } + zig ^= true; // zag + for (int8_t xCount = inStart; xCount != inStop; xCount += inInc) + { + if ((showcount+1) < (GRID_MAX_POINTS_X * GRID_MAX_POINTS_X)) + { + if ( + #if ENABLED(ABL_UBL) + xCount != (GRID_MAX_POINTS_X - 1) && yCount != (GRID_MAX_POINTS_Y - 1) + #else + true + #endif + ){ + showcount++; + rtscheck.RTS_SndData(ExtUI::getMeshPoint(xCount, yCount) * 1000, AutolevelVal + (showcount - 1) * 2); } + } + } + } RTS_SndData(ExchangePageBase + 85, ExchangepageAddr); injectCommands_P(PSTR(USER_GCODE_1)); break; @@ -1383,6 +1390,34 @@ SERIAL_ECHOLN(PSTR("BeginSwitch")); injectCommands_P(PSTR("M300")); }*/ // may at some point use language change screens to save eeprom explicitly + switch(recdat.data[0]) + { + case 0: + SERIAL_ECHOLN("Chinese Not Supported"); + break; + case 1: + SERIAL_ECHOLN("English Already Set"); + break; + case 2: + //PID Hotend + injectCommands_P(PSTR("M303E0S215C8U")); + break; + case 3: + //Init EEPROM + injectCommands_P(PSTR("M502\nM500")); + break; + case 4: + //BLTouch Reset + injectCommands_P(PSTR("M999")); + break; + case 5: + //PID Bed + injectCommands_P(PSTR("M303E-1S65C4U")); + break; + default: + SERIAL_ECHOLN("Invalid Option"); + break; + } break; case No_Filement: SERIAL_ECHOLN("\n No Filament"); @@ -1661,7 +1696,11 @@ void onMediaRemoved() SERIAL_ECHOLN("***Card Removed***"); } -void onPlayTone(const uint16_t frequency, const uint16_t duration) {} +void onPlayTone(const uint16_t frequency, const uint16_t duration) { + + SERIAL_ECHOLN("***CPlay Tone***"); + rtscheck.RTS_SndData(StartSoundSet, SoundAddr); +} void onPrintTimerStarted() { @@ -1788,10 +1827,18 @@ void onMeshUpdate(const uint8_t xpos, const uint8_t ypos, const float zval) zig ^= true; // zag for (int8_t xCount = inStart; xCount != inStop; xCount += inInc) { - if ((showcount++) < (GRID_MAX_POINTS_X * GRID_MAX_POINTS_X)) + if ((showcount+1) < (GRID_MAX_POINTS_X * GRID_MAX_POINTS_X)) { - rtscheck.RTS_SndData(ExtUI::getMeshPoint(xCount, yCount) * 1000, AutolevelVal + (showcount - 1) * 2); - //rtscheck.RTS_SndData(showcount, AutolevelIcon); + if ( + #if ENABLED(ABL_UBL) + xCount != (GRID_MAX_POINTS_X - 1) && yCount != (GRID_MAX_POINTS_Y - 1) + #else + true + #endif + ){ + showcount++; + rtscheck.RTS_SndData(ExtUI::getMeshPoint(xCount, yCount) * 1000, AutolevelVal + (showcount - 1) * 2); + } } } } @@ -1831,46 +1878,54 @@ void onConfigurationStoreWritten(bool success) void onConfigurationStoreRead(bool success) { SERIAL_ECHOLN("==onConfigurationStoreRead=="); - #if HAS_MESH && (ANY(MachineCR10SPro, MachineEnder5Plus, MachineCR10Max) || ENABLED(Force10SProDisplay)) - if (ExtUI::getMeshValid()) - { - bool zig = true; - for (uint8_t yCount = 0, showcount = 0; yCount < GRID_MAX_POINTS_Y; yCount++) - { - int8_t inStart, inStop, inInc; + #if HAS_MESH && (ANY(MachineCR10SPro, MachineEnder5Plus, MachineCR10Max) || ENABLED(Force10SProDisplay)) + if (ExtUI::getMeshValid()) + { + bool zig = true; + for (uint8_t yCount = 0, showcount = 0; yCount < GRID_MAX_POINTS_Y; yCount++) + { + int8_t inStart, inStop, inInc; - if (zig) - { // away from origin - inStart = 0; - inStop = GRID_MAX_POINTS_X; - inInc = 1; - } - else - { // towards origin - inStart = GRID_MAX_POINTS_X - 1; - inStop = -1; - inInc = -1; - } - - zig ^= true; // zag - for (int8_t xCount = inStart; xCount != inStop; xCount += inInc) - { - if ((showcount++) < (GRID_MAX_POINTS_X * GRID_MAX_POINTS_X)) - { - rtscheck.RTS_SndData(ExtUI::getMeshPoint(xCount, yCount) * 1000, AutolevelVal + (showcount - 1) * 2); - //rtscheck.RTS_SndData(showcount, AutolevelIcon); - } - } - } - rtscheck.RTS_SndData(3, AutoLevelIcon); //2=On, 3=Off - setLevelingActive(true); + if (zig) + { // away from origin + inStart = 0; + inStop = GRID_MAX_POINTS_X; + inInc = 1; } else - { - rtscheck.RTS_SndData(2, AutoLevelIcon); /*Off*/ - setLevelingActive(false); + { // towards origin + inStart = GRID_MAX_POINTS_X - 1; + inStop = -1; + inInc = -1; } - #endif + + zig ^= true; // zag + for (int8_t xCount = inStart; xCount != inStop; xCount += inInc) + { + if ((showcount+1) < (GRID_MAX_POINTS_X * GRID_MAX_POINTS_X)) + { + if ( + #if ENABLED(ABL_UBL) + xCount != (GRID_MAX_POINTS_X - 1) && yCount != (GRID_MAX_POINTS_Y - 1) + #else + true + #endif + ){ + showcount++; + rtscheck.RTS_SndData(ExtUI::getMeshPoint(xCount, yCount) * 1000, AutolevelVal + (showcount - 1) * 2); + } + } + } + } + rtscheck.RTS_SndData(3, AutoLevelIcon); //2=On, 3=Off + setLevelingActive(true); + } + else + { + rtscheck.RTS_SndData(2, AutoLevelIcon); /*Off*/ + setLevelingActive(false); + } + #endif SERIAL_ECHOLNPAIR("\n init zprobe_zoffset = ", getZOffset_mm()); rtscheck.RTS_SndData(getZOffset_mm() * 100, 0x1026); diff --git a/Marlin/src/lcd/ultralcd.cpp b/Marlin/src/lcd/ultralcd.cpp index a02e827098..f201c1b2a0 100644 --- a/Marlin/src/lcd/ultralcd.cpp +++ b/Marlin/src/lcd/ultralcd.cpp @@ -1535,13 +1535,17 @@ void MarlinUI::update() { #if HAS_PRINT_PROGRESS uint8_t MarlinUI::get_progress() { - #if ENABLED(SDSUPPORT) - if (IS_SD_PRINTING()) return card.percentDone(); - #endif #if ENABLED(LCD_SET_PROGRESS_MANUALLY) - return progress_bar_percent; + uint8_t &progress = progress_bar_percent; + #define _PLIMIT(P) ((P) & 0x7F) + #else + #define _PLIMIT(P) P + uint8_t progress = 0; #endif - return 0; + #if ENABLED(SDSUPPORT) + if (IS_SD_PRINTING()) progress = card.percentDone(); + #endif + return _PLIMIT(progress); } #endif diff --git a/Marlin/src/lcd/ultralcd.h b/Marlin/src/lcd/ultralcd.h index 947ec29caf..4d0a541e19 100644 --- a/Marlin/src/lcd/ultralcd.h +++ b/Marlin/src/lcd/ultralcd.h @@ -296,8 +296,8 @@ public: #if ENABLED(LCD_SET_PROGRESS_MANUALLY) static uint8_t progress_bar_percent; static void set_progress(const uint8_t progress) { progress_bar_percent = _MIN(progress, 100); } - static void set_progress_done() { set_progress(100); } - static void progress_reset() { set_progress(0); } + static void set_progress_done() { set_progress(0x80 + 100); } + static void progress_reset() { if (progress_bar_percent & 0x80) set_progress(0); } #endif static uint8_t get_progress(); #else