Compare commits
20 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
0757a57122 | ||
|
dab8b979bf | ||
|
e7239ba96f | ||
|
9140808f2d | ||
|
0f53591818 | ||
|
f363260a49 | ||
|
bd2cb8080a | ||
|
697bc6f45c | ||
|
55521d3ab1 | ||
|
4801858c19 | ||
|
613d352308 | ||
|
c7373ccc8e | ||
|
e12fb83b78 | ||
|
5600a71514 | ||
|
52126609af | ||
|
aa57f4be9d | ||
|
f27545aee4 | ||
|
e4a828f32a | ||
|
5c0841a139 | ||
|
c65ec66cb1 |
@@ -923,7 +923,7 @@
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_X)
|
||||
#define DEFAULT_MAX_FEEDRATE { 120, 120, 8, 80 } // { 120, 120, 20, 80 }
|
||||
#define DEFAULT_MAX_FEEDRATE { 120, 120, 18, 80 } // thanks to Simon Geis
|
||||
#endif
|
||||
|
||||
|
||||
|
@@ -681,7 +681,7 @@
|
||||
* This feature was designed for Delta's with very fast Z moves however higher speed cartesians may function
|
||||
* If the machine cannot raise the probe fast enough after a trigger, it may enter a fault state.
|
||||
*/
|
||||
#define BLTOUCH_HS_MODE
|
||||
//#define BLTOUCH_HS_MODE
|
||||
|
||||
// Safety: Enable voltage mode settings in the LCD menu.
|
||||
//#define BLTOUCH_LCD_VOLTAGE_MENU
|
||||
|
@@ -41,11 +41,10 @@
|
||||
* here we define this default string as the date where the latest release
|
||||
* version was tagged.
|
||||
*/
|
||||
#define CUSTOM_BUILD_VERSION "1.1.4"
|
||||
#define CUSTOM_BUILD_VERSION "1.1.5"
|
||||
|
||||
#ifndef STRING_DISTRIBUTION_DATE
|
||||
//#define STRING_DISTRIBUTION_DATE "2020-07-09"
|
||||
#define STRING_DISTRIBUTION_DATE "2020-08-24"
|
||||
#define STRING_DISTRIBUTION_DATE "2020-08-27"
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
@@ -121,10 +121,10 @@ void AnycubicTouchscreenClass::Setup()
|
||||
pinMode(SD_DETECT_PIN, INPUT);
|
||||
WRITE(SD_DETECT_PIN, HIGH);
|
||||
#endif
|
||||
pinMode(19, INPUT);
|
||||
WRITE(19, HIGH);
|
||||
pinMode(FILAMENT_RUNOUT_PIN, INPUT);
|
||||
WRITE(FILAMENT_RUNOUT_PIN, HIGH);
|
||||
#if ENABLED(ANYCUBIC_FILAMENT_RUNOUT_SENSOR)
|
||||
if ((READ(19) == true) && FilamentSensorEnabled)
|
||||
if ((READ(FILAMENT_RUNOUT_PIN) == true) && FilamentSensorEnabled)
|
||||
{
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("J15"); //J15 FILAMENT LACK
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
@@ -134,9 +134,10 @@ void AnycubicTouchscreenClass::Setup()
|
||||
}
|
||||
#endif
|
||||
|
||||
currentTouchscreenSelection[0] = '\0';
|
||||
currentTouchscreenSelection[0] = 0;
|
||||
currentFileOrDirectory[0] = '\0';
|
||||
SpecialMenu = false;
|
||||
MMLMenu = false;
|
||||
FilamentSensorEnabled = true;
|
||||
MyFileNrCnt = 0;
|
||||
|
||||
@@ -447,7 +448,7 @@ void AnycubicTouchscreenClass::HandleSpecialMenu()
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_PID_HOTEND_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: PID Tune Hotend");
|
||||
queue.inject_P(PSTR("G28\nG90\nG1 Z20\nG1 X110 Y110 F4000\nG1 Z5\nM106 S172\nG4 P500\nM303 E0 S215 C15 U1\nG4 P500\nM107\nG28\nG1 Z10\nM84"));
|
||||
queue.inject_P(PSTR("G28\nG90\nG1 Z20\nG1 X110 Y110 F4000\nG1 Z5\nM106 S172\nG4 P500\nM303 E0 S215 C15 U1\nG4 P500\nM107\nG28\nG1 Z10\nM84\nM500"));
|
||||
buzzer.tone(200, 1108);
|
||||
buzzer.tone(200, 1661);
|
||||
buzzer.tone(200, 1108);
|
||||
@@ -457,7 +458,7 @@ void AnycubicTouchscreenClass::HandleSpecialMenu()
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_PID_BED_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: PID Tune Ultrabase");
|
||||
queue.inject_P(PSTR("M303 E-1 S60 C6 U1"));
|
||||
queue.inject_P(PSTR("M303 E-1 S60 C6 U1\nM500"));
|
||||
buzzer.tone(200, 1108);
|
||||
buzzer.tone(200, 1661);
|
||||
buzzer.tone(200, 1108);
|
||||
@@ -492,6 +493,7 @@ void AnycubicTouchscreenClass::HandleSpecialMenu()
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Start Mesh Leveling");
|
||||
queue.inject_P(PSTR("G29 S1"));
|
||||
MMLMenu = true;
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_MESH_NEXT_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_MESH_NEXT_S) != NULL))
|
||||
@@ -527,14 +529,12 @@ void AnycubicTouchscreenClass::HandleSpecialMenu()
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_Z_UP_001_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Z Up 0.01");
|
||||
//queue.inject_P(PSTR("G91\nG1 Z+0.01\nG90"));
|
||||
queue.inject_P(PSTR("G91\nG1 Z+0.03\nG4 P250\nG1 Z-0.02\nG90"));
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_Z_DN_001_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_Z_DN_001_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Z Down 0.01");
|
||||
//queue.inject_P(PSTR("G91\nG1 Z-0.01\nG90"));
|
||||
queue.inject_P(PSTR("G91\nG1 Z+0.02\nG4 P250\nG1 Z-0.03\nG90"));
|
||||
}
|
||||
#endif
|
||||
@@ -545,6 +545,8 @@ void AnycubicTouchscreenClass::HandleSpecialMenu()
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: BLTouch Leveling");
|
||||
queue.inject_P(PSTR("G28\nG29\nM500\nG90\nG1 Z30 F4000\nG1 X0 F4000\nG91\nM84"));
|
||||
buzzer.tone(105, 1108);
|
||||
buzzer.tone(210, 1661);
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -582,12 +584,47 @@ void AnycubicTouchscreenClass::HandleSpecialMenu()
|
||||
{
|
||||
SpecialMenu = false;
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_BACK_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_BACK_S) != NULL))
|
||||
{
|
||||
MMLMenu = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void AnycubicTouchscreenClass::PrintList()
|
||||
{
|
||||
if (SpecialMenu)
|
||||
if(MMLMenu)
|
||||
{
|
||||
switch (filenumber)
|
||||
{
|
||||
case 0: // Page 1
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_01_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_01_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_01_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_01_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_002_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_002_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_002_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_002_L);
|
||||
break;
|
||||
|
||||
case 4: // Page 2
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_001_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_001_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_001_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_001_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_NEXT_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_NEXT_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_BACK_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_BACK_L);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if (SpecialMenu)
|
||||
{
|
||||
switch (filenumber)
|
||||
{
|
||||
@@ -606,37 +643,17 @@ void AnycubicTouchscreenClass::PrintList()
|
||||
case 4: // Page 2
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_START_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_START_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_NEXT_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_NEXT_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_01_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_01_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_01_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_01_L);
|
||||
break;
|
||||
|
||||
case 8: // Page 3
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_002_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_002_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_002_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_002_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_001_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_001_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_001_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_001_L);
|
||||
break;
|
||||
|
||||
case 12: // Page 4
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PID_HOTEND_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PID_HOTEND_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PID_BED_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PID_BED_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SAVE_EEPROM_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SAVE_EEPROM_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_LOAD_DEFAULTS_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_LOAD_DEFAULTS_L);
|
||||
break;
|
||||
|
||||
case 16: // Page 5
|
||||
case 8: // Page 3
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_LOAD_DEFAULTS_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_LOAD_DEFAULTS_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_DIS_FILSENS_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_DIS_FILSENS_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EN_FILSENS_S);
|
||||
@@ -645,6 +662,7 @@ void AnycubicTouchscreenClass::PrintList()
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EXIT_L);
|
||||
break;
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_BLTOUCH)
|
||||
case 4: // Page 2
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_BLTOUCH_S);
|
||||
@@ -667,8 +685,7 @@ void AnycubicTouchscreenClass::PrintList()
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EXIT_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EXIT_L);
|
||||
break;
|
||||
#endif
|
||||
|
||||
#endif
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -973,7 +990,7 @@ void AnycubicTouchscreenClass::FilamentRunout()
|
||||
if (FilamentSensorEnabled == true)
|
||||
{
|
||||
#if ENABLED(ANYCUBIC_FILAMENT_RUNOUT_SENSOR)
|
||||
FilamentTestStatus = READ(19) & 0xff;
|
||||
FilamentTestStatus = READ(FILAMENT_RUNOUT_PIN) & 0xff;
|
||||
|
||||
if (FilamentTestStatus > FilamentTestLastStatus)
|
||||
{
|
||||
@@ -987,8 +1004,8 @@ void AnycubicTouchscreenClass::FilamentRunout()
|
||||
#ifdef ANYCUBIC_TFT_DEBUG
|
||||
SERIAL_ECHOLNPGM("DEBUG: Set filament trigger time");
|
||||
#endif
|
||||
// set the delayed timestamp to 3000ms later
|
||||
fil_delay = fil_ms + 3000UL;
|
||||
// set the delayed timestamp to 5000ms later
|
||||
fil_delay = fil_ms + 5000UL;
|
||||
// this doesn't need to run until the filament is recovered again
|
||||
FilamentSetMillis = false;
|
||||
}
|
||||
@@ -1000,7 +1017,7 @@ void AnycubicTouchscreenClass::FilamentRunout()
|
||||
if (!IsParked)
|
||||
{
|
||||
#ifdef ANYCUBIC_TFT_DEBUG
|
||||
SERIAL_ECHOLNPGM("DEBUG: 3000ms delay done");
|
||||
SERIAL_ECHOLNPGM("DEBUG: 5000ms delay done");
|
||||
#endif
|
||||
if (card.isPrinting())
|
||||
{
|
||||
@@ -1058,49 +1075,34 @@ void AnycubicTouchscreenClass::GetCommandFromTFT()
|
||||
if(!TFTcomment_mode)
|
||||
{
|
||||
TFTcomment_mode = false; //for new command
|
||||
|
||||
//TFTfromsd[TFTbufindw] = false;
|
||||
|
||||
|
||||
if(strchr(TFTcmdbuffer[TFTbufindw], 'N') != NULL)
|
||||
{
|
||||
/*
|
||||
TFTstrchr_pointer = strchr(TFTcmdbuffer[TFTbufindw], 'N');
|
||||
gcode_N = (strtol(&TFTcmdbuffer[TFTbufindw][TFTstrchr_pointer - TFTcmdbuffer[TFTbufindw] + 1], NULL, 10));
|
||||
if(gcode_N != gcode_LastN+1 && (strstr_P(TFTcmdbuffer[TFTbufindw], PSTR("M110")) == NULL) )
|
||||
if(strchr(TFTcmdbuffer[TFTbufindw], '*') != NULL)
|
||||
{
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
NEWFlushSerialRequestResend();
|
||||
serial3_count = 0;
|
||||
return;
|
||||
byte checksum = 0;
|
||||
byte count = 0;
|
||||
while(TFTcmdbuffer[TFTbufindw][count] != '*') checksum = checksum^TFTcmdbuffer[TFTbufindw][count++];
|
||||
TFTstrchr_pointer = strchr(TFTcmdbuffer[TFTbufindw], '*');
|
||||
|
||||
if( (int)(strtod(&TFTcmdbuffer[TFTbufindw][TFTstrchr_pointer - TFTcmdbuffer[TFTbufindw] + 1], NULL)) != checksum)
|
||||
{
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
HardwareSerial.flush();
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
HardwareSerial.flush();
|
||||
serial3_count = 0;
|
||||
return;
|
||||
}
|
||||
//if no errors, continue parsing
|
||||
}
|
||||
*/
|
||||
|
||||
if(strchr(TFTcmdbuffer[TFTbufindw], '*') != NULL)
|
||||
{
|
||||
byte checksum = 0;
|
||||
byte count = 0;
|
||||
while(TFTcmdbuffer[TFTbufindw][count] != '*') checksum = checksum^TFTcmdbuffer[TFTbufindw][count++];
|
||||
TFTstrchr_pointer = strchr(TFTcmdbuffer[TFTbufindw], '*');
|
||||
|
||||
if( (int)(strtod(&TFTcmdbuffer[TFTbufindw][TFTstrchr_pointer - TFTcmdbuffer[TFTbufindw] + 1], NULL)) != checksum)
|
||||
else
|
||||
{
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
HardwareSerial.flush();
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
HardwareSerial.flush();
|
||||
serial3_count = 0;
|
||||
return;
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
HardwareSerial.flush();
|
||||
serial3_count = 0;
|
||||
return;
|
||||
}
|
||||
//if no errors, continue parsing
|
||||
}
|
||||
else
|
||||
{
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
HardwareSerial.flush();
|
||||
serial3_count = 0;
|
||||
return;
|
||||
}
|
||||
//gcode_LastN = gcode_N;
|
||||
//if no errors, continue parsing
|
||||
}
|
||||
else // if we don't receive 'N' but still see '*'
|
||||
@@ -1215,12 +1217,7 @@ void AnycubicTouchscreenClass::GetCommandFromTFT()
|
||||
case 8: // A8 GET SD LIST
|
||||
#ifdef SDSUPPORT
|
||||
currentTouchscreenSelection[0] = 0;
|
||||
if (!IS_SD_INSERTED())
|
||||
{
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("J02"); // J02 SD Card initilized
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
}
|
||||
|
||||
|
||||
if (CodeSeen('S'))
|
||||
filenumber = CodeValue();
|
||||
|
||||
@@ -1619,15 +1616,6 @@ void AnycubicTouchscreenClass::GetCommandFromTFT()
|
||||
}
|
||||
|
||||
currentTouchscreenSelection[0] = 0;
|
||||
|
||||
if (!IS_SD_INSERTED())
|
||||
{
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("J02"); // J02 SD Card initilized
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
#ifdef ANYCUBIC_TFT_DEBUG
|
||||
SERIAL_ECHOLNPGM("TFT Serial Debug: SD card initialized... J02");
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
break;
|
||||
#ifdef SERVO_ENDSTOPS
|
||||
@@ -1646,7 +1634,7 @@ void AnycubicTouchscreenClass::GetCommandFromTFT()
|
||||
case 33: // A33 get version info
|
||||
{
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("J33 ");
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("Knutwurst-");
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("KW-");
|
||||
HARDWARE_SERIAL_PROTOCOLPGM(MSG_MY_VERSION);
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
}
|
||||
|
@@ -36,6 +36,8 @@ char *ftostr32(const float &);
|
||||
#define MSG_MY_VERSION CUSTOM_BUILD_VERSION
|
||||
#define MAX_PRINTABLE_FILENAME_LEN 30
|
||||
|
||||
#define FILAMENT_RUNOUT_PIN 19
|
||||
|
||||
#define ANYCUBIC_TFT_STATE_IDLE 0
|
||||
#define ANYCUBIC_TFT_STATE_SDPRINT 1
|
||||
#define ANYCUBIC_TFT_STATE_SDPAUSE 2
|
||||
@@ -87,51 +89,55 @@ char *ftostr32(const float &);
|
||||
#define SM_EN_FILSENS_S "<ENSEN>"
|
||||
#define SM_EXIT_L "<Exit>"
|
||||
#define SM_EXIT_S "<EXIT>"
|
||||
#define SM_BACK_L "<End Mesh Leveling>"
|
||||
#define SM_BACK_S "<BACK>"
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_DGUS2_TFT)
|
||||
#define SM_DIR_UP_L "<<< BACK <<<.gcode"
|
||||
#define SM_DIR_UP_L "<<< BACK <<< .gcode"
|
||||
#define SM_DIR_UP_S "DIR_UP~1.GCO"
|
||||
#define SM_SPECIAL_MENU_L "<Special Menu>.gcode"
|
||||
#define SM_SPECIAL_MENU_L "<Special Menu> .gcode"
|
||||
#define SM_SPECIAL_MENU_S "<SPECI~1.GCO"
|
||||
#define SM_PID_HOTEND_L "<PID Tune Hotend>.gcode"
|
||||
#define SM_PID_HOTEND_L "<PID Tune Hotend> .gcode"
|
||||
#define SM_PID_HOTEND_S "<PIDTU~1.GCO"
|
||||
#define SM_PID_BED_L "<PID Tune Ultrabase>.gcode"
|
||||
#define SM_PID_BED_S "<PIDTU~2.GCO"
|
||||
#define SM_SAVE_EEPROM_L "<Save EEPROM>.gcode"
|
||||
#define SM_SAVE_EEPROM_L "<Save EEPROM> .gcode"
|
||||
#define SM_SAVE_EEPROM_S "<SAVEE~1.GCO"
|
||||
#define SM_LOAD_DEFAULTS_L "<Load FW Defaults>.gcode"
|
||||
#define SM_LOAD_DEFAULTS_L "<Load FW Defaults> .gcode"
|
||||
#define SM_LOAD_DEFAULTS_S "<LOADF~1.GCO"
|
||||
#define SM_PREHEAT_BED_L "<Preheat Ultrabase>.gcode"
|
||||
#define SM_PREHEAT_BED_L "<Preheat Ultrabase> .gcode"
|
||||
#define SM_PREHEAT_BED_S "<PREHE~1.GCO"
|
||||
#define SM_MESH_START_L "<Start Mesh Leveling>.gcode"
|
||||
#define SM_MESH_START_L "<Mesh Leveling> .gcode"
|
||||
#define SM_MESH_START_S "<START~1.GCO"
|
||||
#define SM_MESH_NEXT_L "<Next Mesh Point>.gcode"
|
||||
#define SM_MESH_NEXT_L "<Next Mesh Point> .gcode"
|
||||
#define SM_MESH_NEXT_S "<NEXTM~1.GCO"
|
||||
#define SM_Z_UP_01_L "<Z Up 0.1>.gcode"
|
||||
#define SM_Z_UP_01_L "<Z Up 0.1> .gcode"
|
||||
#define SM_Z_UP_01_S "<ZUP01~1.GCO"
|
||||
#define SM_Z_DN_01_L "<Z Down 0.1>.gcode"
|
||||
#define SM_Z_DN_01_L "<Z Down 0.1> .gcode"
|
||||
#define SM_Z_DN_01_S "<ZDOWN~1.GCO"
|
||||
#define SM_Z_UP_002_L "<Z Up 0.02>.gcode"
|
||||
#define SM_Z_UP_002_L "<Z Up 0.02> .gcode"
|
||||
#define SM_Z_UP_002_S "<ZUP00~1.GCO"
|
||||
#define SM_Z_DN_002_L "<Z Down 0.02>.gcode"
|
||||
#define SM_Z_DN_002_L "<Z Down 0.02> .gcode"
|
||||
#define SM_Z_DN_002_S "<ZDOWN~2.GCO"
|
||||
#define SM_Z_UP_001_L "<Z Up 0.01>.gcode"
|
||||
#define SM_Z_UP_001_L "<Z Up 0.01> .gcode"
|
||||
#define SM_Z_UP_001_S "<ZUP00~2.GCO"
|
||||
#define SM_Z_DN_001_L "<Z Down 0.01>.gcode"
|
||||
#define SM_Z_DN_001_L "<Z Down 0.01> .gcode"
|
||||
#define SM_Z_DN_001_S "<ZDOWN~3.GCO"
|
||||
#define SM_BLTOUCH_L "<BLTouch Leveling>.gcode"
|
||||
#define SM_BLTOUCH_L "<BLTouch Leveling> .gcode"
|
||||
#define SM_BLTOUCH_S "<BLTOU~1.GCO"
|
||||
#define SM_PAUSE_L "<Fil. Change Pause>.gcode"
|
||||
#define SM_PAUSE_L "<Fil. Change Pause> .gcode"
|
||||
#define SM_PAUSE_S "<FILCH~2.GCO"
|
||||
#define SM_RESUME_L "<Fil. Change Resume>.gcode"
|
||||
#define SM_RESUME_S "<FILCH~1.GCO"
|
||||
#define SM_DIS_FILSENS_L "<Disable Fil. Sensor>.gcode"
|
||||
#define SM_DIS_FILSENS_L "<Disable Fil.Sensor>.gcode"
|
||||
#define SM_DIS_FILSENS_S "<DISAB~1.GCO"
|
||||
#define SM_EN_FILSENS_L "<Enable Fil. Sensor>.gcode"
|
||||
#define SM_EN_FILSENS_S "<ENABL~1.GCO"
|
||||
#define SM_EXIT_L "<Exit>.gcode"
|
||||
#define SM_EXIT_L "<Exit> .gcode"
|
||||
#define SM_EXIT_S "<EXIT_~1.GCO"
|
||||
#define SM_BACK_L "<End Mesh Leveling> .gcode"
|
||||
#define SM_BACK_S "<BACK_~1.GCO"
|
||||
#endif
|
||||
|
||||
|
||||
@@ -211,6 +217,7 @@ private:
|
||||
char currentFileOrDirectory[64];
|
||||
uint16_t MyFileNrCnt = 0;
|
||||
uint8_t SpecialMenu = false;
|
||||
uint8_t MMLMenu = false;
|
||||
uint8_t FilamentSensorEnabled = true;
|
||||
|
||||
|
||||
|
28
README.md
28
README.md
@@ -15,8 +15,8 @@
|
||||
- [Häufig gestellte Fragen (FAQ)](#häufig-gesellte-fragen-faq)
|
||||
- [Fotos / Bilder](#bilder)
|
||||
- [Spezial Menü](#spezial-menü)
|
||||
- [Manual Mesh Beld Leveling](#manuelles-leveln)
|
||||
- [BLTouch Beld Leveling](#automatisches-bltouch-leveln)
|
||||
- [Manual Mesh Bed Leveling](#manuelles-leveln)
|
||||
- [BLTouch Bed Leveling](#automatisches-bltouch-leveln)
|
||||
- [Downloads](#downloads)
|
||||
|
||||
|
||||
@@ -26,8 +26,8 @@
|
||||
- [Frequently asked questions (FAQ)](#faq)
|
||||
- [Photos / Pictures](#pictures)
|
||||
- [Special Menü](#special-menu)
|
||||
- [Manual Mesh Beld Leveling](#manual-mesh-beld-leveling)
|
||||
- [BLTouch Beld Leveling](#bltouch-beld-leveling)
|
||||
- [Manual Mesh Bed Leveling](#manual-mesh-bed-leveling)
|
||||
- [BLTouch Bed Leveling](#bltouch-bed-leveling)
|
||||
- [Download](#download)
|
||||
|
||||
|
||||
@@ -42,8 +42,7 @@
|
||||
* Babystepping während des Druckvorgangs
|
||||
* Bilinear Bed Leveling (BBL)
|
||||
* Manuelles Editieren der Messpunkte
|
||||
* Volle Anycubic Touchscreen Unterstützung
|
||||
* Unterstützung des neuen Anycubic Touchscreens (DGUS II)
|
||||
* Volle Unterstützung aller [Anycubic Touchscreens](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Types-of-Anycubic-Touchscreens)
|
||||
* Bauteilkühler läuft nun auf 100% statt maximal 70%
|
||||
* Pause & Filamentwechselfunktion
|
||||
* Automatische EEPROM Initialisierung
|
||||
@@ -52,6 +51,7 @@
|
||||
* [Druckbettgröße erweitert auf 225 x 220 x 210 mm](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Set-new-print-bed-size)
|
||||
* Automatischer 'Slowdown', falls Daten nicht schnell genug fließen
|
||||
* Vollautomatisches Hotend und Ultrabase PID Tuning
|
||||
* Optimierungen für [Trinamic TMC Schrittmotortreiber](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Schrittmotortreiber-gegen-TMC2xxx-tauschen)
|
||||
|
||||
|
||||
## Besser im Vergleich zu anderen Firmwares (Bugfixes):
|
||||
@@ -67,7 +67,7 @@
|
||||
* Keine "spezielle" BLTouch Firmware nötig. Hier ist alles drin
|
||||
* Konfiguration ganz einfach über Feature-Toggles
|
||||
* Man muss keine Grundkonfiguration per GCODE machen.
|
||||
* Man muss kein Werksreset durchführen
|
||||
* Man muss keinen Werksreset durchführen
|
||||
|
||||
---
|
||||
|
||||
@@ -159,7 +159,7 @@ Bei diesem Mapping ist man eben darauf angewiesen, dass die Funktionen, die man
|
||||
|
||||
# Downloads
|
||||
|
||||
Du kannst die fertigen Binärdateien hier herunterladen: https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/releases. Natürlich kannst du die Firmware mit PlatformIO oder der Arduino IDE auch selbst kompilieren.
|
||||
Du kannst die fertigen Binärdateien hier herunterladen: https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/releases. Natürlich kannst du die Firmware mit PlatformIO oder der Arduino IDE auch [selbst kompilieren](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Howto:-Compile-Firmware-with-PlatformIO).
|
||||
|
||||
Um es übersichtlich zu gestalten, beinhalten die Dateinamen die einzelnen Features.
|
||||
|
||||
@@ -196,8 +196,7 @@ Für (fast) jede Kombination gibt es eine passende Firmware im Download-Bereich.
|
||||
* Baby stepping during the printing process
|
||||
* Bilinear Bed Leveling (BBL)
|
||||
* Manual editing of the measuring points
|
||||
* Full Anycubic touchscreen support
|
||||
* Support for the new Anycubic Touchscreen (DGUS II)
|
||||
* Full Support for all [Anycubic Touchscreens](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Types-of-Anycubic-Touchscreens)
|
||||
* Part cooling fan now runs at 100% instead of 70%
|
||||
* Pause & filament change function
|
||||
* Automatic EEPROM initialization
|
||||
@@ -206,6 +205,7 @@ Für (fast) jede Kombination gibt es eine passende Firmware im Download-Bereich.
|
||||
* [Print bed size enlarged to 225 x 220 x 210 mm](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Set-new-print-bed-size)
|
||||
* Automatic 'slowdown' if data does not flow fast enough
|
||||
* Fully automatic hotend and ultrabase PID tuning
|
||||
* Optimizations for [Trinamic TMC Stepper drivers](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Swap-stepper-motor-driver-for-TMC2xxx)
|
||||
|
||||
### What's better in coparison to other firmwares (bug fixes):
|
||||
* Tidy special menu
|
||||
@@ -286,7 +286,7 @@ With this mapping, you have to rely on the fact that the functions you want to u
|
||||

|
||||

|
||||
|
||||
## Manual Mesh Beld Leveling
|
||||
## Manual Mesh Bed Leveling
|
||||
|
||||

|
||||

|
||||
@@ -300,7 +300,7 @@ With this mapping, you have to rely on the fact that the functions you want to u
|
||||

|
||||

|
||||
|
||||
## BLTouch Beld Leveling
|
||||
## BLTouch Bed Leveling
|
||||
|
||||

|
||||
|
||||
@@ -311,7 +311,7 @@ With this mapping, you have to rely on the fact that the functions you want to u
|
||||
|
||||
# Download
|
||||
|
||||
You can download the precompiled binary files from here: https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/releases. Of course you can also compile the firmware yourself with PlatformIO or the Arduino IDE.
|
||||
You can download the precompiled binary files from here: https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/releases. Of course you can also [compile the firmware yourself](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Howto:-Compile-Firmware-with-PlatformIO) with PlatformIO or the Arduino IDE.
|
||||
|
||||
In order to make it clear, the file names contain the individual features.
|
||||
|
||||
@@ -333,3 +333,5 @@ In order to make it clear, the file names contain the individual features.
|
||||
For (almost) every combination there is a suitable firmware in the download area. ;)
|
||||
|
||||
|
||||
### If you like what I do you can buy me a coffee: [](https://paypal.me/oliverkoester)
|
||||
<sub>*It doesn't have to be a generous donation. A few cents are enough to show me who is interested in further development. So the motivation stays and I just know that I am not programming for the bin ;)<sub>
|
||||
|
BIN
images/anycubic_touchscreen_back.jpg
Normal file
BIN
images/anycubic_touchscreen_back.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 MiB |
BIN
images/anycubic_touchscreen_front.jpg
Normal file
BIN
images/anycubic_touchscreen_front.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 857 KiB |
BIN
images/howto_build.jpg
Normal file
BIN
images/howto_build.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 834 KiB |
Reference in New Issue
Block a user