mirror of
https://github.com/MarlinFirmware/Marlin.git
synced 2025-12-31 11:50:37 -07:00
🎨 DGUS/MKS cosmetic fixes, most
This commit is contained in:
parent
c6dad4d1aa
commit
c080518b12
27 changed files with 941 additions and 1004 deletions
|
|
@ -658,11 +658,8 @@
|
|||
#define IF_ELSE(TF) _IF_ELSE(_BOOL(TF))
|
||||
#define _IF_ELSE(TF) _CAT(_IF_, TF)
|
||||
|
||||
#define _IF_1(V...) V _IF_1_ELSE
|
||||
#define _IF_0(...) _IF_0_ELSE
|
||||
|
||||
#define _IF_1_ELSE(...)
|
||||
#define _IF_0_ELSE(V...) V
|
||||
#define _IF_1(V...) V OMIT
|
||||
#define _IF_0(...) EMIT
|
||||
|
||||
#define HAS_ARGS(V...) _BOOL(FIRST(_END_OF_ARGUMENTS_ V)())
|
||||
#define _END_OF_ARGUMENTS_() 0
|
||||
|
|
|
|||
|
|
@ -115,7 +115,7 @@
|
|||
else if (!parser.seen('W')) // if no S or W parameter, the DXC mode gets reset to the user's default
|
||||
dual_x_carriage_mode = DEFAULT_DUAL_X_CARRIAGE_MODE;
|
||||
|
||||
#ifdef DEBUG_DXC_MODE
|
||||
#if ENABLED(DEBUG_DXC_MODE)
|
||||
|
||||
if (parser.seen('W')) {
|
||||
DEBUG_ECHO_START();
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@
|
|||
|
||||
DGUSDisplay dgus;
|
||||
|
||||
#ifdef DEBUG_DGUS_COMM
|
||||
#if ENABLED(DEBUG_DGUS_COMM)
|
||||
#define DEBUGLCDCOMM_ECHOPGM DEBUG_ECHOPGM
|
||||
#else
|
||||
#define DEBUGLCDCOMM_ECHOPGM(...) NOOP
|
||||
|
|
@ -76,7 +76,22 @@ void DGUSDisplay::initDisplay() {
|
|||
requestScreen(TERN(SHOW_BOOTSCREEN, DGUS_SCREEN_BOOT, DGUS_SCREEN_MAIN));
|
||||
}
|
||||
|
||||
void DGUSDisplay::writeVariable(uint16_t adr, const void *values, uint8_t valueslen, bool isstr) {
|
||||
void DGUSDisplay::writeVariable_P(uint16_t adr, const void *values, uint8_t valueslen, bool isstr/*=false*/) {
|
||||
const char* myvalues = static_cast<const char*>(values);
|
||||
bool strend = !myvalues;
|
||||
writeHeader(adr, DGUS_CMD_WRITEVAR, valueslen);
|
||||
while (valueslen--) {
|
||||
char x;
|
||||
if (!strend) x = pgm_read_byte(myvalues++);
|
||||
if ((isstr && !x) || strend) {
|
||||
strend = true;
|
||||
x = ' ';
|
||||
}
|
||||
LCD_SERIAL.write(x);
|
||||
}
|
||||
}
|
||||
|
||||
void DGUSDisplay::writeVariable(uint16_t adr, const void *values, uint8_t valueslen, bool isstr/*=false*/) {
|
||||
const char* myvalues = static_cast<const char*>(values);
|
||||
bool strend = !myvalues;
|
||||
writeHeader(adr, DGUS_CMD_WRITEVAR, valueslen);
|
||||
|
|
@ -120,21 +135,6 @@ void DGUSDisplay::writeVariable(uint16_t adr, long value) {
|
|||
writeVariable(adr, static_cast<const void*>(&tmp), sizeof(long));
|
||||
}
|
||||
|
||||
void DGUSDisplay::writeVariablePGM(uint16_t adr, const void *values, uint8_t valueslen, bool isstr) {
|
||||
const char* myvalues = static_cast<const char*>(values);
|
||||
bool strend = !myvalues;
|
||||
writeHeader(adr, DGUS_CMD_WRITEVAR, valueslen);
|
||||
while (valueslen--) {
|
||||
char x;
|
||||
if (!strend) x = pgm_read_byte(myvalues++);
|
||||
if ((isstr && !x) || strend) {
|
||||
strend = true;
|
||||
x = ' ';
|
||||
}
|
||||
LCD_SERIAL.write(x);
|
||||
}
|
||||
}
|
||||
|
||||
void DGUSDisplay::processRx() {
|
||||
|
||||
#if ENABLED(SERIAL_STATS_RX_BUFFER_OVERRUNS)
|
||||
|
|
|
|||
|
|
@ -60,15 +60,28 @@ public:
|
|||
static void initDisplay();
|
||||
|
||||
// Variable access.
|
||||
static void writeVariable_P(uint16_t adr, const void *values, uint8_t valueslen, bool isstr=false);
|
||||
static void writeVariable(uint16_t adr, const void *values, uint8_t valueslen, bool isstr=false);
|
||||
static void writeVariablePGM(uint16_t adr, const void *values, uint8_t valueslen, bool isstr=false);
|
||||
static void writeVariable(uint16_t adr, int16_t value);
|
||||
static void writeVariable(uint16_t adr, uint16_t value);
|
||||
static void writeVariable(uint16_t adr, uint8_t value);
|
||||
static void writeVariable(uint16_t adr, int8_t value);
|
||||
static void writeVariable(uint16_t adr, long value);
|
||||
|
||||
// Utility functions for bridging ui_api and dbus
|
||||
static void writeStringVar_P(uint16_t adr, PGM_P const pstr, uint8_t vallen=32) {
|
||||
writeVariable_P(adr, (const void *)pstr, vallen, true);
|
||||
}
|
||||
static void writeStringVar(uint16_t adr, const char * const cstr, uint8_t vallen=32) {
|
||||
writeVariable(adr, (const void *)cstr, vallen, true);
|
||||
}
|
||||
static void writeStringVar(uint16_t adr, const uint16_t * const zhstr, uint8_t vallen=16) {
|
||||
writeVariable(adr, (const void *)zhstr, vallen, true);
|
||||
}
|
||||
static void writeVariable(uint16_t adr, FSTR_P const fstr, uint8_t vallen=32) {
|
||||
writeStringVar_P(adr, FTOP(fstr), vallen);
|
||||
}
|
||||
|
||||
// Utility functions for bridging ui_api and dgus
|
||||
template<typename T, float(*Getter)(const T), T selector, typename WireType=uint16_t>
|
||||
static void setVariable(DGUS_VP_Variable &var) {
|
||||
writeVariable(var.VP, (WireType)Getter(selector));
|
||||
|
|
|
|||
|
|
@ -101,7 +101,7 @@ void DGUSScreenHandler::setStatusMessage(const char *msg) {
|
|||
}
|
||||
}
|
||||
|
||||
void DGUSScreenHandler::setstatusmessagePGM(PGM_P const msg) {
|
||||
void DGUSScreenHandler::setStatusMessage_P(PGM_P const msg) {
|
||||
DGUS_VP_Variable ramcopy;
|
||||
if (populate_VPVar(VP_M117, &ramcopy)) {
|
||||
ramcopy.memadr = (void*) msg;
|
||||
|
|
@ -164,10 +164,11 @@ void DGUSScreenHandler::sendStringToDisplay(DGUS_VP_Variable &var) {
|
|||
// overwrite the remainings with spaces.// var.size has the display buffer size!
|
||||
void DGUSScreenHandler::sendStringToDisplayPGM(DGUS_VP_Variable &var) {
|
||||
char *tmp = (char*) var.memadr;
|
||||
dgus.writeVariablePGM(var.VP, tmp, var.size, true);
|
||||
dgus.writeVariable_P(var.VP, tmp, var.size, true);
|
||||
}
|
||||
|
||||
#if HAS_PID_HEATING
|
||||
|
||||
void DGUSScreenHandler::sendTemperaturePID(DGUS_VP_Variable &var) {
|
||||
float value = *(float *)var.memadr;
|
||||
value /= 10;
|
||||
|
|
@ -200,7 +201,8 @@ void DGUSScreenHandler::sendStringToDisplayPGM(DGUS_VP_Variable &var) {
|
|||
tmp[1] = endian.lb[0];
|
||||
dgus.writeVariable(var.VP, tmp, 2);
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif // HAS_PID_HEATING
|
||||
|
||||
#if ENABLED(PRINTCOUNTER)
|
||||
|
||||
|
|
@ -221,7 +223,7 @@ void DGUSScreenHandler::sendStringToDisplayPGM(DGUS_VP_Variable &var) {
|
|||
dgus.writeVariable(VP_PrintsTotal, buf, var.size, true);
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif // PRINTCOUNTER
|
||||
|
||||
// Send fan status value to the display.
|
||||
#if HAS_FAN
|
||||
|
|
@ -249,8 +251,7 @@ void DGUSScreenHandler::sendHeaterStatusToDisplay(DGUS_VP_Variable &var) {
|
|||
|
||||
void DGUSScreenHandler::sendWaitingStatusToDisplay(DGUS_VP_Variable &var) {
|
||||
// In FYSETC UI design there are 10 statuses to loop
|
||||
static uint16_t period = 0;
|
||||
static uint16_t index = 0;
|
||||
static uint16_t period = 0, index = 0;
|
||||
if (period++ > DGUS_UI_WAITING_STATUS_PERIOD) {
|
||||
dgus.writeVariable(var.VP, index);
|
||||
if (++index >= DGUS_UI_WAITING_STATUS) index = 0;
|
||||
|
|
@ -270,9 +271,9 @@ void DGUSScreenHandler::sendHeaterStatusToDisplay(DGUS_VP_Variable &var) {
|
|||
return;
|
||||
}
|
||||
|
||||
// if we are printing, we jump to two screens after the requested one.
|
||||
// This should host e.g a print pause / print abort / print resume dialog.
|
||||
// This concept allows to recycle this hook for other file
|
||||
// If we are printing we jump to two screens after the requested one.
|
||||
// This should host, e.g., a print pause / print abort / print resume dialog.
|
||||
// This concept allows to recycle this hook for other files.
|
||||
if (ExtUI::isPrintingFromMedia() && !card.flag.abort_sd_printing) {
|
||||
gotoScreen(DGUS_SCREEN_SDPRINTMANIPULATION);
|
||||
return;
|
||||
|
|
@ -324,7 +325,7 @@ void DGUSScreenHandler::sendHeaterStatusToDisplay(DGUS_VP_Variable &var) {
|
|||
|
||||
void DGUSScreenHandler::sdCardError() {
|
||||
DGUSScreenHandler::sdCardRemoved();
|
||||
sendInfoScreen(F("NOTICE"), nullptr, F("SD card error"), nullptr, true, true, true, true);
|
||||
sendInfoScreen(F("NOTICE"), nullptr, F("SD card error"), nullptr);
|
||||
setupConfirmAction(nullptr);
|
||||
gotoScreen(DGUS_SCREEN_POPUP);
|
||||
}
|
||||
|
|
@ -432,9 +433,9 @@ void DGUSScreenHandler::handleManualExtrude(DGUS_VP_Variable &var, void *val_ptr
|
|||
switch (var.VP) {
|
||||
#if HAS_HOTEND
|
||||
case VP_MOVE_E0: target_extruder = ExtUI::extruder_t::E0; break;
|
||||
#if HAS_MULTI_EXTRUDER
|
||||
case VP_MOVE_E1: target_extruder = ExtUI::extruder_t::E1; break;
|
||||
#endif
|
||||
#endif
|
||||
#if HAS_MULTI_EXTRUDER
|
||||
case VP_MOVE_E1: target_extruder = ExtUI::extruder_t::E1; break;
|
||||
#endif
|
||||
default: return;
|
||||
}
|
||||
|
|
@ -491,12 +492,12 @@ void DGUSScreenHandler::handleSettings(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
ExtUI::extruder_t extruder;
|
||||
switch (var.VP) {
|
||||
default: return;
|
||||
#if HAS_EXTRUDERS
|
||||
case VP_E0_STEP_PER_MM: extruder = ExtUI::extruder_t::E0; break;
|
||||
#if HAS_MULTI_EXTRUDER
|
||||
case VP_E1_STEP_PER_MM: extruder = ExtUI::extruder_t::E1; break;
|
||||
#endif
|
||||
#endif
|
||||
#if HAS_EXTRUDERS
|
||||
case VP_E0_STEP_PER_MM: extruder = ExtUI::extruder_t::E0; break;
|
||||
#endif
|
||||
#if HAS_MULTI_EXTRUDER
|
||||
case VP_E1_STEP_PER_MM: extruder = ExtUI::extruder_t::E1; break;
|
||||
#endif
|
||||
}
|
||||
ExtUI::setAxisSteps_per_mm(value, extruder);
|
||||
skipVP = var.VP; // don't overwrite value the next update time as the display might autoincrement in parallel
|
||||
|
|
@ -506,21 +507,17 @@ void DGUSScreenHandler::handleSettings(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
|
||||
#if HAS_PID_HEATING
|
||||
void DGUSScreenHandler::handlePIDAutotune(DGUS_VP_Variable &var, void *val_ptr) {
|
||||
char buf[32] = {0};
|
||||
|
||||
switch (var.VP) {
|
||||
default: break;
|
||||
#if ENABLED(PIDTEMP)
|
||||
#if HAS_HOTEND
|
||||
case VP_PID_AUTOTUNE_E0: // Autotune Extruder 0
|
||||
sprintf_P(buf, PSTR("M303 E%d C5 S210 U1"), ExtUI::extruder_t::E0);
|
||||
queue.enqueue_one_now(buf);
|
||||
queue.enqueue_one_now(F("M303 E0 C5 S210 U1"));
|
||||
break;
|
||||
#endif
|
||||
#if HAS_MULTI_HOTEND
|
||||
case VP_PID_AUTOTUNE_E1:
|
||||
sprintf_P(buf, PSTR("M303 E%d C5 S210 U1"), ExtUI::extruder_t::E1);
|
||||
queue.enqueue_one_now(buf);
|
||||
queue.enqueue_one_now(F("M303 E1 C5 S210 U1"));
|
||||
break;
|
||||
#endif
|
||||
#endif
|
||||
|
|
@ -536,6 +533,7 @@ void DGUSScreenHandler::handleSettings(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
gotoScreen(DGUS_SCREEN_WAITING);
|
||||
#endif
|
||||
}
|
||||
|
||||
#endif // HAS_PID_HEATING
|
||||
|
||||
#if HAS_BED_PROBE
|
||||
|
|
@ -607,7 +605,7 @@ void DGUSScreenHandler::handleHeaterControl(DGUS_VP_Variable &var, void *val_ptr
|
|||
uint16_t value = BE16_P(val_ptr);
|
||||
if (value) {
|
||||
queue.inject(F("M1000"));
|
||||
dgus.writeVariable(VP_SD_Print_Filename, filelist.filename(), 32, true);
|
||||
dgus.writeStringVar(VP_SD_Print_Filename, filelist.filename());
|
||||
gotoScreen(PLR_SCREEN_RECOVER);
|
||||
}
|
||||
else {
|
||||
|
|
|
|||
|
|
@ -32,10 +32,10 @@
|
|||
#if ENABLED(DGUS_FILAMENT_LOADUNLOAD)
|
||||
|
||||
typedef struct {
|
||||
ExtUI::extruder_t extruder; // which extruder to operate
|
||||
uint8_t action; // load or unload
|
||||
bool heated; // heating done ?
|
||||
float purge_length; // the length to extrude before unload, prevent filament jam
|
||||
uint8_t extruder; // Which extruder index to operate
|
||||
uint8_t action; // Load or unload
|
||||
bool heated; // Heating done?
|
||||
float purge_length; // The length to extrude before unload, prevent filament jam
|
||||
} filament_data_t;
|
||||
|
||||
extern filament_data_t filament_data;
|
||||
|
|
|
|||
|
|
@ -37,21 +37,21 @@ public:
|
|||
|
||||
// Send all 4 strings that are displayed on the infoscreen, confirmation screen and kill screen
|
||||
// The bools specifying whether the strings are in RAM or FLASH.
|
||||
static void sendInfoScreen_P(PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool liinflash);
|
||||
static void sendInfoScreen(FSTR_P const line1, FSTR_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool liinflash) {
|
||||
sendInfoScreen_P(FTOP(line1), FTOP(line2), line3, line4, l1inflash, l2inflash, l3inflash, liinflash);
|
||||
static void sendInfoScreen_P(PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool l4inflash);
|
||||
static void sendInfoScreen(FSTR_P const line1, FSTR_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool l4inflash) {
|
||||
sendInfoScreen_P(FTOP(line1), FTOP(line2), line3, line4, l1inflash, l2inflash, l3inflash, l4inflash);
|
||||
}
|
||||
static void sendInfoScreen(FSTR_P const line1, FSTR_P const line2, FSTR_P const line3, FSTR_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool liinflash) {
|
||||
sendInfoScreen_P(FTOP(line1), FTOP(line2), FTOP(line3), FTOP(line4), l1inflash, l2inflash, l3inflash, liinflash);
|
||||
static void sendInfoScreen(FSTR_P const line1, FSTR_P const line2, FSTR_P const line3, FSTR_P const line4) {
|
||||
sendInfoScreen_P(FTOP(line1), FTOP(line2), FTOP(line3), FTOP(line4), true, true, true, true);
|
||||
}
|
||||
|
||||
static void handleUserConfirmationPopUp(uint16_t confirmVP, PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool liinflash);
|
||||
static void handleUserConfirmationPopUp(uint16_t confirmVP, PGM_P const line1, PGM_P const line2, PGM_P const line3, PGM_P const line4, bool l1inflash, bool l2inflash, bool l3inflash, bool l4inflash);
|
||||
|
||||
// "M117" Message -- msg is a RAM ptr.
|
||||
static void setStatusMessage(const char *msg);
|
||||
// The same for messages from Flash
|
||||
static void setstatusmessagePGM(PGM_P const msg);
|
||||
static void setStatusMessage(FSTR_P const fmsg) { setstatusmessagePGM(FTOP(fmsg)); }
|
||||
static void setStatusMessage_P(PGM_P const msg);
|
||||
static void setStatusMessage(FSTR_P const fmsg) { setStatusMessage_P(FTOP(fmsg)); }
|
||||
// Callback for VP "Display wants to change screen on idle printer"
|
||||
static void screenChangeHookIfIdle(DGUS_VP_Variable &var, void *val_ptr);
|
||||
// Callback for VP "Screen has been changed"
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ namespace ExtUI {
|
|||
void onIdle() { screen.loop(); }
|
||||
|
||||
void onPrinterKilled(FSTR_P const error, FSTR_P const) {
|
||||
screen.sendInfoScreen(GET_TEXT_F(MSG_HALTED), error, FPSTR(NUL_STR), GET_TEXT_F(MSG_PLEASE_RESET), true, true, true, true);
|
||||
screen.sendInfoScreen(GET_TEXT_F(MSG_HALTED), error, FPSTR(NUL_STR), GET_TEXT_F(MSG_PLEASE_RESET));
|
||||
screen.gotoScreen(DGUS_SCREEN_KILL);
|
||||
while (!screen.loop()); // Wait while anything is left to be sent
|
||||
}
|
||||
|
|
@ -75,13 +75,11 @@ namespace ExtUI {
|
|||
}
|
||||
|
||||
// For fancy LCDs include an icon ID, message, and translated button title
|
||||
void onUserConfirmRequired(const int icon, const char * const cstr, FSTR_P const fBtn) {
|
||||
void onUserConfirmRequired(const int, const char * const cstr, FSTR_P const) {
|
||||
onUserConfirmRequired(cstr);
|
||||
UNUSED(icon); UNUSED(fBtn);
|
||||
}
|
||||
void onUserConfirmRequired(const int icon, FSTR_P const fstr, FSTR_P const fBtn) {
|
||||
void onUserConfirmRequired(const int, FSTR_P const fstr, FSTR_P const) {
|
||||
onUserConfirmRequired(fstr);
|
||||
UNUSED(icon); UNUSED(fBtn);
|
||||
}
|
||||
|
||||
#if ENABLED(ADVANCED_PAUSE_FEATURE)
|
||||
|
|
|
|||
|
|
@ -340,7 +340,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = {
|
|||
VPHELPER(VP_MOVE_Z, nullptr, screen.handleManualMove, nullptr),
|
||||
VPHELPER(VP_HOME_ALL, nullptr, screen.handleManualMove, nullptr),
|
||||
#endif
|
||||
VPHELPER(VP_MOTOR_LOCK_UNLOK, nullptr, screen.handleMotorLockUnlock, nullptr),
|
||||
VPHELPER(VP_MOTOR_LOCK_UNLOCK, nullptr, screen.handleMotorLockUnlock, nullptr),
|
||||
#if ENABLED(POWER_LOSS_RECOVERY)
|
||||
VPHELPER(VP_POWER_LOSS_RECOVERY, nullptr, screen.handlePowerLossRecovery, nullptr),
|
||||
#endif
|
||||
|
|
@ -361,7 +361,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = {
|
|||
#if HAS_HOTEND
|
||||
VPHELPER(VP_T_E0_Is, &thermalManager.temp_hotend[0].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>),
|
||||
VPHELPER(VP_T_E0_Set, &thermalManager.temp_hotend[0].target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_Flowrate_E0, &planner.flow_percentage[ExtUI::extruder_t::E0], screen.handleFlowRateChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_Flowrate_E0, &planner.flow_percentage[0], screen.handleFlowRateChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_EPos, &destination.e, nullptr, screen.sendFloatAsLongValueToDisplay<2>),
|
||||
VPHELPER(VP_MOVE_E0, nullptr, screen.handleManualExtrude, nullptr),
|
||||
VPHELPER(VP_E0_CONTROL, &thermalManager.temp_hotend[0].target, screen.handleHeaterControl, nullptr),
|
||||
|
|
@ -382,7 +382,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = {
|
|||
#if HAS_MULTI_HOTEND
|
||||
VPHELPER(VP_T_E1_Is, &thermalManager.temp_hotend[1].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>),
|
||||
VPHELPER(VP_T_E1_Set, &thermalManager.temp_hotend[1].target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_Flowrate_E1, &planner.flow_percentage[ExtUI::extruder_t::E1], screen.handleFlowRateChanged, screen.sendWordValueToDisplay), // ERROR: Flow is per-extruder, not per-hotend
|
||||
VPHELPER(VP_Flowrate_E1, &planner.flow_percentage[1], screen.handleFlowRateChanged, screen.sendWordValueToDisplay), // ERROR: Flow is per-extruder, not per-hotend
|
||||
VPHELPER(VP_MOVE_E1, nullptr, screen.handleManualExtrude, nullptr),
|
||||
VPHELPER(VP_E1_CONTROL, &thermalManager.temp_hotend[1].target, screen.handleHeaterControl, nullptr),
|
||||
VPHELPER(VP_E1_STATUS, &thermalManager.temp_hotend[1].target, nullptr, screen.sendHeaterStatusToDisplay),
|
||||
|
|
|
|||
|
|
@ -116,7 +116,7 @@ constexpr uint16_t VP_MOVE_E1 = 0x2112;
|
|||
//constexpr uint16_t VP_MOVE_E4 = 0x2118;
|
||||
//constexpr uint16_t VP_MOVE_E5 = 0x211A;
|
||||
constexpr uint16_t VP_HOME_ALL = 0x2120;
|
||||
constexpr uint16_t VP_MOTOR_LOCK_UNLOK = 0x2130;
|
||||
constexpr uint16_t VP_MOTOR_LOCK_UNLOCK = 0x2130;
|
||||
|
||||
// Power loss recovery
|
||||
constexpr uint16_t VP_POWER_LOSS_RECOVERY = 0x2180;
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@ void DGUSScreenHandler::screenChangeHook(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
|
||||
updateNewScreen(target);
|
||||
|
||||
#ifdef DEBUG_DGUSLCD
|
||||
#if ENABLED(DEBUG_DGUSLCD)
|
||||
if (!findScreenVPMapList(target)) DEBUG_ECHOLNPGM("WARNING: No screen Mapping found for ", target);
|
||||
#endif
|
||||
}
|
||||
|
|
@ -288,7 +288,9 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
#endif
|
||||
break;
|
||||
case 1: // Load ABS
|
||||
TERN_(PREHEAT_2_TEMP_HOTEND, e_temp = PREHEAT_2_TEMP_HOTEND);
|
||||
#ifdef PREHEAT_2_TEMP_HOTEND
|
||||
e_temp = PREHEAT_2_TEMP_HOTEND;
|
||||
#endif
|
||||
break;
|
||||
case 2: // Load PET
|
||||
#ifdef PREHEAT_3_TEMP_HOTEND
|
||||
|
|
@ -308,9 +310,9 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
|
||||
if (filament_data.action == 0) { // Go back to utility screen
|
||||
#if HAS_HOTEND
|
||||
thermalManager.setTargetHotend(e_temp, ExtUI::extruder_t::E0);
|
||||
thermalManager.setTargetHotend(e_temp, 0);
|
||||
#if HAS_MULTI_HOTEND
|
||||
thermalManager.setTargetHotend(e_temp, ExtUI::extruder_t::E1);
|
||||
thermalManager.setTargetHotend(e_temp, 1);
|
||||
#endif
|
||||
#endif
|
||||
gotoScreen(DGUS_SCREEN_UTILITY);
|
||||
|
|
@ -320,13 +322,13 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
default: return;
|
||||
#if HAS_HOTEND
|
||||
case VP_E0_FILAMENT_LOAD_UNLOAD:
|
||||
filament_data.extruder = ExtUI::extruder_t::E0;
|
||||
filament_data.extruder = 0;
|
||||
thermalManager.setTargetHotend(e_temp, filament_data.extruder);
|
||||
break;
|
||||
#endif
|
||||
#if HAS_MULTI_HOTEND
|
||||
case VP_E1_FILAMENT_LOAD_UNLOAD:
|
||||
filament_data.extruder = ExtUI::extruder_t::E1;
|
||||
filament_data.extruder = 1;
|
||||
thermalManager.setTargetHotend(e_temp, filament_data.extruder);
|
||||
break;
|
||||
#endif
|
||||
|
|
@ -348,7 +350,7 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
//gotoScreen(DGUS_SCREEN_FILAMENT_LOADING);
|
||||
filament_data.heated = true;
|
||||
}
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder) + movevalue;
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder ? ExtUI::extruder_t::E1 : ExtUI::extruder_t::E0) + movevalue;
|
||||
}
|
||||
else { // unload filament
|
||||
if (!filament_data.heated) {
|
||||
|
|
@ -357,14 +359,14 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
}
|
||||
// Before unloading extrude to prevent jamming
|
||||
if (filament_data.purge_length >= 0) {
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder) + movevalue;
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder ? ExtUI::extruder_t::E1 : ExtUI::extruder_t::E0) + movevalue;
|
||||
filament_data.purge_length -= movevalue;
|
||||
}
|
||||
else {
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder) - movevalue;
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder ? ExtUI::extruder_t::E1 : ExtUI::extruder_t::E0) - movevalue;
|
||||
}
|
||||
}
|
||||
ExtUI::setAxisPosition_mm(movevalue, filament_data.extruder);
|
||||
ExtUI::setAxisPosition_mm(movevalue, filament_data.extruder ? ExtUI::extruder_t::E1 : ExtUI::extruder_t::E0);
|
||||
}
|
||||
}
|
||||
#endif // DGUS_FILAMENT_LOADUNLOAD
|
||||
|
|
|
|||
|
|
@ -338,7 +338,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = {
|
|||
VPHELPER(VP_MOVE_Z, nullptr, screen.handleManualMove, nullptr),
|
||||
VPHELPER(VP_HOME_ALL, nullptr, screen.handleManualMove, nullptr),
|
||||
#endif
|
||||
VPHELPER(VP_MOTOR_LOCK_UNLOK, nullptr, screen.handleMotorLockUnlock, nullptr),
|
||||
VPHELPER(VP_MOTOR_LOCK_UNLOCK, nullptr, screen.handleMotorLockUnlock, nullptr),
|
||||
#if ENABLED(POWER_LOSS_RECOVERY)
|
||||
VPHELPER(VP_POWER_LOSS_RECOVERY, nullptr, screen.handlePowerLossRecovery, nullptr),
|
||||
#endif
|
||||
|
|
@ -358,7 +358,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = {
|
|||
#if HAS_HOTEND
|
||||
VPHELPER(VP_T_E0_Is, &thermalManager.temp_hotend[0].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>),
|
||||
VPHELPER(VP_T_E0_Set, &thermalManager.temp_hotend[0].target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_Flowrate_E0, &planner.flow_percentage[ExtUI::extruder_t::E0], screen.handleFlowRateChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_Flowrate_E0, &planner.flow_percentage[0], screen.handleFlowRateChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_EPos, &destination.e, nullptr, screen.sendFloatAsLongValueToDisplay<2>),
|
||||
VPHELPER(VP_MOVE_E0, nullptr, screen.handleManualExtrude, nullptr),
|
||||
VPHELPER(VP_E0_CONTROL, &thermalManager.temp_hotend[0].target, screen.handleHeaterControl, nullptr),
|
||||
|
|
@ -379,7 +379,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = {
|
|||
#if HAS_MULTI_HOTEND
|
||||
VPHELPER(VP_T_E1_Is, &thermalManager.temp_hotend[1].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>),
|
||||
VPHELPER(VP_T_E1_Set, &thermalManager.temp_hotend[1].target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_Flowrate_E1, nullptr, screen.handleFlowRateChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_Flowrate_E1, &planner.flow_percentage[1], screen.handleFlowRateChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_MOVE_E1, nullptr, screen.handleManualExtrude, nullptr),
|
||||
VPHELPER(VP_E1_CONTROL, &thermalManager.temp_hotend[1].target, screen.handleHeaterControl, nullptr),
|
||||
VPHELPER(VP_E1_STATUS, &thermalManager.temp_hotend[1].target, nullptr, screen.sendHeaterStatusToDisplay),
|
||||
|
|
|
|||
|
|
@ -116,7 +116,7 @@ constexpr uint16_t VP_MOVE_E1 = 0x2112;
|
|||
//constexpr uint16_t VP_MOVE_E4 = 0x2118;
|
||||
//constexpr uint16_t VP_MOVE_E5 = 0x211A;
|
||||
constexpr uint16_t VP_HOME_ALL = 0x2120;
|
||||
constexpr uint16_t VP_MOTOR_LOCK_UNLOK = 0x2130;
|
||||
constexpr uint16_t VP_MOTOR_LOCK_UNLOCK = 0x2130;
|
||||
|
||||
// Power loss recovery
|
||||
constexpr uint16_t VP_POWER_LOSS_RECOVERY = 0x2180;
|
||||
|
|
|
|||
|
|
@ -143,7 +143,7 @@ void DGUSScreenHandler::screenChangeHook(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
|
||||
updateNewScreen(target);
|
||||
|
||||
#ifdef DEBUG_DGUSLCD
|
||||
#if ENABLED(DEBUG_DGUSLCD)
|
||||
if (!findScreenVPMapList(target)) DEBUG_ECHOLNPGM("WARNING: No screen Mapping found for ", target);
|
||||
#endif
|
||||
}
|
||||
|
|
@ -290,7 +290,9 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
#endif
|
||||
break;
|
||||
case 1: // Load ABS
|
||||
TERN_(PREHEAT_2_TEMP_HOTEND, e_temp = PREHEAT_2_TEMP_HOTEND);
|
||||
#ifdef PREHEAT_2_TEMP_HOTEND
|
||||
e_temp = PREHEAT_2_TEMP_HOTEND;
|
||||
#endif
|
||||
break;
|
||||
case 2: // Load PET
|
||||
#ifdef PREHEAT_3_TEMP_HOTEND
|
||||
|
|
@ -310,9 +312,9 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
|
||||
if (filament_data.action == 0) { // Go back to utility screen
|
||||
#if HAS_HOTEND
|
||||
thermalManager.setTargetHotend(e_temp, ExtUI::extruder_t::E0);
|
||||
thermalManager.setTargetHotend(e_temp, 0);
|
||||
#if HAS_MULTI_HOTEND
|
||||
thermalManager.setTargetHotend(e_temp, ExtUI::extruder_t::E1);
|
||||
thermalManager.setTargetHotend(e_temp, 1);
|
||||
#endif
|
||||
#endif
|
||||
gotoScreen(DGUS_SCREEN_UTILITY);
|
||||
|
|
@ -322,13 +324,13 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
default: return;
|
||||
#if HAS_HOTEND
|
||||
case VP_E0_FILAMENT_LOAD_UNLOAD:
|
||||
filament_data.extruder = ExtUI::extruder_t::E0;
|
||||
filament_data.extruder = 0;
|
||||
thermalManager.setTargetHotend(e_temp, filament_data.extruder);
|
||||
break;
|
||||
#endif
|
||||
#if HAS_MULTI_HOTEND
|
||||
case VP_E1_FILAMENT_LOAD_UNLOAD:
|
||||
filament_data.extruder = ExtUI::extruder_t::E1;
|
||||
filament_data.extruder = 1;
|
||||
thermalManager.setTargetHotend(e_temp, filament_data.extruder);
|
||||
break;
|
||||
#endif
|
||||
|
|
@ -350,7 +352,7 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
//gotoScreen(DGUS_SCREEN_FILAMENT_LOADING);
|
||||
filament_data.heated = true;
|
||||
}
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder) + movevalue;
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder ? ExtUI::extruder_t::E1 : ExtUI::extruder_t::E0) + movevalue;
|
||||
}
|
||||
else { // unload filament
|
||||
if (!filament_data.heated) {
|
||||
|
|
@ -359,11 +361,11 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
}
|
||||
// Before unloading extrude to prevent jamming
|
||||
if (filament_data.purge_length >= 0) {
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder) + movevalue;
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder ? ExtUI::extruder_t::E1 : ExtUI::extruder_t::E0) + movevalue;
|
||||
filament_data.purge_length -= movevalue;
|
||||
}
|
||||
else {
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder) - movevalue;
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder ? ExtUI::extruder_t::E1 : ExtUI::extruder_t::E0) - movevalue;
|
||||
}
|
||||
}
|
||||
ExtUI::setAxisPosition_mm(movevalue, filament_data.extruder);
|
||||
|
|
|
|||
|
|
@ -180,7 +180,7 @@ const uint16_t MKSList_Tool[] PROGMEM = {
|
|||
0x0000
|
||||
};
|
||||
|
||||
const uint16_t MKSList_EXTRUE[] PROGMEM = {
|
||||
const uint16_t MKSList_EXTRUDE[] PROGMEM = {
|
||||
// E Temp
|
||||
REPEAT(EXTRUDERS, MKSLIST_E_ITEM)
|
||||
// HB Temp
|
||||
|
|
@ -265,7 +265,7 @@ const uint16_t MKSList_TempOnly[] PROGMEM = {
|
|||
0x0000
|
||||
};
|
||||
|
||||
const uint16_t MKSList_Pluse[] PROGMEM = {
|
||||
const uint16_t MKSList_Pulse[] PROGMEM = {
|
||||
// E Temp
|
||||
REPEAT(EXTRUDERS, MKSLIST_E_ITEM)
|
||||
// HB Temp
|
||||
|
|
@ -273,7 +273,7 @@ const uint16_t MKSList_Pluse[] PROGMEM = {
|
|||
// FAN
|
||||
VP_Fan0_Percentage,
|
||||
|
||||
// Pluse
|
||||
// Steps/mm
|
||||
VP_X_STEP_PER_MM,
|
||||
VP_Y_STEP_PER_MM,
|
||||
VP_Z_STEP_PER_MM,
|
||||
|
|
@ -291,7 +291,7 @@ const uint16_t MKSList_MaxSpeed[] PROGMEM = {
|
|||
// FAN
|
||||
VP_Fan0_Percentage,
|
||||
|
||||
// Pluse
|
||||
// Max Speed
|
||||
VP_X_MAX_SPEED,
|
||||
VP_Y_MAX_SPEED,
|
||||
VP_Z_MAX_SPEED,
|
||||
|
|
@ -463,16 +463,16 @@ const struct VPMapping VPMap[] PROGMEM = {
|
|||
{ MKSLCD_SCREEN_HOME, MKSList_Home }, // Home, Page 1
|
||||
{ MKSLCD_SCREEN_SETTING, MKSList_Setting }, // Setting, Page 2
|
||||
{ MKSLCD_SCREEM_TOOL, MKSList_Tool }, // Page 3
|
||||
{ MKSLCD_SCREEN_EXTRUDE_P1, MKSList_EXTRUE }, // Page 4
|
||||
{ MKSLCD_SCREEN_EXTRUDE_P2, MKSList_EXTRUE }, // Page 11
|
||||
{ MKSLCD_PAUSE_SETTING_EX, MKSList_EXTRUE }, // Page 57
|
||||
{ MKSLCD_PAUSE_SETTING_EX2, MKSList_EXTRUE }, // Page 61
|
||||
{ MKSLCD_SCREEN_EXTRUDE_P1, MKSList_EXTRUDE }, // Page 4
|
||||
{ MKSLCD_SCREEN_EXTRUDE_P2, MKSList_EXTRUDE }, // Page 11
|
||||
{ MKSLCD_PAUSE_SETTING_EX, MKSList_EXTRUDE }, // Page 57
|
||||
{ MKSLCD_PAUSE_SETTING_EX2, MKSList_EXTRUDE }, // Page 61
|
||||
{ MKSLCD_SCREEN_LEVEL, MKSList_LEVEL }, // Page 5
|
||||
{ MKSLCD_SCREEN_MOVE, MKSList_MOVE }, // Page 6
|
||||
{ MKSLCD_SCREEN_PRINT, MKSList_Print }, // Page 7
|
||||
{ MKSLCD_SCREEN_PAUSE, MKSList_Print }, // Page 26
|
||||
{ MKSLCD_SCREEN_CHOOSE_FILE, MKSList_SD_File }, // Page 15
|
||||
{ MKSLCD_SCREEN_MOTOR_PLUSE, MKSList_Pluse }, // Page 51
|
||||
{ MKSLCD_SCREEN_MOTOR_PULSE, MKSList_Pulse }, // Page 51
|
||||
{ MKSLCD_SCREEN_MOTOR_SPEED, MKSList_MaxSpeed }, // Page 55
|
||||
{ MKSLCD_SCREEN_MOTOR_ACC_MAX, MKSList_MaxAcc }, // Page 53
|
||||
{ MKSLCD_SCREEN_LEVEL_DATA, MKSList_Level_Point }, // Page 48
|
||||
|
|
@ -522,7 +522,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = {
|
|||
|
||||
VPHELPER(VP_MOVE_DISTANCE, &manualMoveStep, screen.getManualMovestep, nullptr),
|
||||
|
||||
VPHELPER(VP_MOTOR_LOCK_UNLOK, nullptr, screen.handleManualMove, nullptr),
|
||||
VPHELPER(VP_MOTOR_LOCK_UNLOCK, nullptr, screen.handleManualMove, nullptr),
|
||||
VPHELPER(VP_LEVEL_POINT, nullptr, screen.manualAssistLeveling, nullptr),
|
||||
|
||||
#if ENABLED(POWER_LOSS_RECOVERY)
|
||||
|
|
@ -545,7 +545,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = {
|
|||
#if HAS_HOTEND
|
||||
VPHELPER(VP_T_E0_Is, &thermalManager.temp_hotend[0].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>),
|
||||
VPHELPER(VP_T_E0_Set, &thermalManager.temp_hotend[0].target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_Flowrate_E0, &planner.flow_percentage[ExtUI::extruder_t::E0], screen.handleFlowRateChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_Flowrate_E0, &planner.flow_percentage[0], screen.handleFlowRateChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_EPos, &destination.e, nullptr, screen.sendFloatAsLongValueToDisplay<2>),
|
||||
VPHELPER(VP_MOVE_E0, nullptr, screen.handleManualExtrude, nullptr),
|
||||
VPHELPER(VP_E0_CONTROL, &thermalManager.temp_hotend[0].target, screen.handleHeaterControl, nullptr),
|
||||
|
|
@ -570,7 +570,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = {
|
|||
#if HAS_MULTI_HOTEND
|
||||
VPHELPER(VP_T_E1_Is, &thermalManager.temp_hotend[1].celsius, nullptr, screen.sendFloatAsLongValueToDisplay<0>),
|
||||
VPHELPER(VP_T_E1_Set, &thermalManager.temp_hotend[1].target, screen.handleTemperatureChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_Flowrate_E1, &planner.flow_percentage[ExtUI::extruder_t::E1], screen.handleFlowRateChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_Flowrate_E1, &planner.flow_percentage[1], screen.handleFlowRateChanged, screen.sendWordValueToDisplay),
|
||||
VPHELPER(VP_MOVE_E1, nullptr, screen.handleManualExtrude, nullptr),
|
||||
VPHELPER(VP_E1_CONTROL, &thermalManager.temp_hotend[1].target, screen.handleHeaterControl, nullptr),
|
||||
VPHELPER(VP_E1_STATUS, &thermalManager.temp_hotend[1].target, nullptr, screen.sendHeaterStatusToDisplay),
|
||||
|
|
|
|||
|
|
@ -53,25 +53,9 @@ extern xyz_int_t tmc_step;
|
|||
|
||||
extern uint16_t lcd_default_light;
|
||||
|
||||
#if X_HAS_STEALTHCHOP
|
||||
extern uint16_t tmc_x_current;
|
||||
#endif
|
||||
#if Y_HAS_STEALTHCHOP
|
||||
extern uint16_t tmc_y_current;
|
||||
#endif
|
||||
#if Z_HAS_STEALTHCHOP
|
||||
extern uint16_t tmc_z_current;
|
||||
#endif
|
||||
#if E0_HAS_STEALTHCHOP
|
||||
extern uint16_t tmc_e0_current;
|
||||
#endif
|
||||
#if E1_HAS_STEALTHCHOP
|
||||
extern uint16_t tmc_e1_current;
|
||||
#endif
|
||||
|
||||
typedef enum {
|
||||
EX_HEATING,
|
||||
EX_HEAT_STARUS,
|
||||
EX_HEAT_STATUS,
|
||||
EX_CHANGING,
|
||||
EX_CHANGE_STATUS,
|
||||
EX_NONE,
|
||||
|
|
@ -80,7 +64,7 @@ typedef enum {
|
|||
typedef struct {
|
||||
//uint8_t ex_change_flag:1;
|
||||
//uint8_t ex_heat_flag:1;
|
||||
uint8_t ex_load_unload_flag:1; //0:unload 1:load
|
||||
uint8_t ex_load_unload_flag:1; // 0:unload 1:load
|
||||
EX_STATUS_DEF ex_status;
|
||||
uint32_t ex_tick_start;
|
||||
uint32_t ex_tick_end;
|
||||
|
|
@ -121,118 +105,118 @@ extern NOZZLE_PARK_DEF nozzle_park_mks;
|
|||
enum DGUS_ScreenID : uint8_t {
|
||||
#if ENABLED(USE_MKS_GREEN_UI)
|
||||
|
||||
DGUS_SCREEN_BOOT = 33,
|
||||
DGUS_SCREEN_MAIN = 60,
|
||||
DGUS_SCREEN_STATUS = 60,
|
||||
DGUS_SCREEN_STATUS2 = 60,
|
||||
DGUS_SCREEN_PREHEAT = 18,
|
||||
DGUS_SCREEN_POWER_LOSS = 100,
|
||||
DGUS_SCREEN_MANUALMOVE = 192,
|
||||
DGUS_SCREEN_UTILITY = 120,
|
||||
DGUS_SCREEN_FILAMENT_UNLOADING = 158,
|
||||
DGUS_SCREEN_SDFILELIST = 15,
|
||||
DGUS_SCREEN_SDPRINTMANIPULATION = 15,
|
||||
DGUS_SCREEN_SDPRINTTUNE = 17,
|
||||
DGUS_SCREEN_BOOT = 33,
|
||||
DGUS_SCREEN_MAIN = 60,
|
||||
DGUS_SCREEN_STATUS = 60,
|
||||
DGUS_SCREEN_STATUS2 = 60,
|
||||
DGUS_SCREEN_PREHEAT = 18,
|
||||
DGUS_SCREEN_POWER_LOSS = 100,
|
||||
DGUS_SCREEN_MANUALMOVE = 192,
|
||||
DGUS_SCREEN_UTILITY = 120,
|
||||
DGUS_SCREEN_FILAMENT_UNLOADING = 158,
|
||||
DGUS_SCREEN_SDFILELIST = 15,
|
||||
DGUS_SCREEN_SDPRINTMANIPULATION = 15,
|
||||
DGUS_SCREEN_SDPRINTTUNE = 17,
|
||||
|
||||
MKSLCD_SCREEN_BOOT = 33,
|
||||
MKSLCD_SCREEN_HOME = 60, // MKS main page
|
||||
MKSLCD_SCREEN_SETTING = 62, // MKS Setting page / no wifi whit
|
||||
MKSLCD_SCREEM_TOOL = 64, // MKS Tool page
|
||||
MKSLCD_SCREEN_EXTRUDE_P1 = 75,
|
||||
MKSLCD_SCREEN_EXTRUDE_P2 = 77,
|
||||
MKSLCD_SCREEN_LEVEL = 73,
|
||||
MKSLCD_AUTO_LEVEL = 81,
|
||||
MKSLCD_SCREEN_MOVE = 66,
|
||||
MKSLCD_SCREEN_PRINT = 68,
|
||||
MKSLCD_SCREEN_PAUSE = 70,
|
||||
MKSLCD_SCREEN_CHOOSE_FILE = 87,
|
||||
MKSLCD_SCREEN_NO_CHOOSE_FILE = 88,
|
||||
MKSLCD_SCREEN_Config = 101,
|
||||
MKSLCD_SCREEN_Config_MOTOR = 103,
|
||||
MKSLCD_SCREEN_MOTOR_PLUSE = 104,
|
||||
MKSLCD_SCREEN_MOTOR_SPEED = 102,
|
||||
MKSLCD_SCREEN_MOTOR_ACC_MAX = 105,
|
||||
MKSLCD_SCREEN_PRINT_CONFIG = 72,
|
||||
MKSLCD_SCREEN_LEVEL_DATA = 106,
|
||||
MKSLCD_PrintPause_SET = 107,
|
||||
MKSLCD_FILAMENT_DATA = 50,
|
||||
MKSLCD_ABOUT = 83,
|
||||
MKSLCD_PID = 108,
|
||||
MKSLCD_PAUSE_SETTING_MOVE = 98,
|
||||
MKSLCD_PAUSE_SETTING_EX = 96,
|
||||
MKSLCD_PAUSE_SETTING_EX2 = 97,
|
||||
MKSLCD_SCREEN_PRINT_CONFIRM = 94,
|
||||
MKSLCD_SCREEN_EX_CONFIG = 112,
|
||||
MKSLCD_SCREEN_EEP_Config = 89,
|
||||
MKSLCD_SCREEN_PrintDone = 92,
|
||||
MKSLCD_SCREEN_TMC_Config = 111,
|
||||
MKSLCD_Screen_Offset_Config = 109,
|
||||
MKSLCD_Screen_PMove = 98,
|
||||
MKSLCD_Screen_Baby = 79,
|
||||
MKSLCD_SCREEN_BOOT = 33,
|
||||
MKSLCD_SCREEN_HOME = 60, // MKS main page
|
||||
MKSLCD_SCREEN_SETTING = 62, // MKS Setting page / no wifi whit
|
||||
MKSLCD_SCREEM_TOOL = 64, // MKS Tool page
|
||||
MKSLCD_SCREEN_EXTRUDE_P1 = 75,
|
||||
MKSLCD_SCREEN_EXTRUDE_P2 = 77,
|
||||
MKSLCD_SCREEN_LEVEL = 73,
|
||||
MKSLCD_AUTO_LEVEL = 81,
|
||||
MKSLCD_SCREEN_MOVE = 66,
|
||||
MKSLCD_SCREEN_PRINT = 68,
|
||||
MKSLCD_SCREEN_PAUSE = 70,
|
||||
MKSLCD_SCREEN_CHOOSE_FILE = 87,
|
||||
MKSLCD_SCREEN_NO_CHOOSE_FILE = 88,
|
||||
MKSLCD_SCREEN_Config = 101,
|
||||
MKSLCD_SCREEN_Config_MOTOR = 103,
|
||||
MKSLCD_SCREEN_MOTOR_PULSE = 104,
|
||||
MKSLCD_SCREEN_MOTOR_SPEED = 102,
|
||||
MKSLCD_SCREEN_MOTOR_ACC_MAX = 105,
|
||||
MKSLCD_SCREEN_PRINT_CONFIG = 72,
|
||||
MKSLCD_SCREEN_LEVEL_DATA = 106,
|
||||
MKSLCD_PrintPause_SET = 107,
|
||||
MKSLCD_FILAMENT_DATA = 50,
|
||||
MKSLCD_ABOUT = 83,
|
||||
MKSLCD_PID = 108,
|
||||
MKSLCD_PAUSE_SETTING_MOVE = 98,
|
||||
MKSLCD_PAUSE_SETTING_EX = 96,
|
||||
MKSLCD_PAUSE_SETTING_EX2 = 97,
|
||||
MKSLCD_SCREEN_PRINT_CONFIRM = 94,
|
||||
MKSLCD_SCREEN_EX_CONFIG = 112,
|
||||
MKSLCD_SCREEN_EEP_Config = 89,
|
||||
MKSLCD_SCREEN_PrintDone = 92,
|
||||
MKSLCD_SCREEN_TMC_Config = 111,
|
||||
MKSLCD_Screen_Offset_Config = 109,
|
||||
MKSLCD_Screen_PMove = 98,
|
||||
MKSLCD_Screen_Baby = 79,
|
||||
|
||||
#else
|
||||
|
||||
DGUS_SCREEN_BOOT = 120,
|
||||
DGUS_SCREEN_MAIN = 1,
|
||||
DGUS_SCREEN_BOOT = 120,
|
||||
DGUS_SCREEN_MAIN = 1,
|
||||
|
||||
DGUS_SCREEN_STATUS = 1,
|
||||
DGUS_SCREEN_STATUS2 = 1,
|
||||
DGUS_SCREEN_PREHEAT = 18,
|
||||
DGUS_SCREEN_POWER_LOSS = 100,
|
||||
DGUS_SCREEN_MANUALMOVE = 192,
|
||||
DGUS_SCREEN_UTILITY = 120,
|
||||
DGUS_SCREEN_FILAMENT_UNLOADING = 158,
|
||||
DGUS_SCREEN_SDFILELIST = 15,
|
||||
DGUS_SCREEN_SDPRINTMANIPULATION = 15,
|
||||
DGUS_SCREEN_SDPRINTTUNE = 17,
|
||||
DGUS_SCREEN_STATUS = 1,
|
||||
DGUS_SCREEN_STATUS2 = 1,
|
||||
DGUS_SCREEN_PREHEAT = 18,
|
||||
DGUS_SCREEN_POWER_LOSS = 100,
|
||||
DGUS_SCREEN_MANUALMOVE = 192,
|
||||
DGUS_SCREEN_UTILITY = 120,
|
||||
DGUS_SCREEN_FILAMENT_UNLOADING = 158,
|
||||
DGUS_SCREEN_SDFILELIST = 15,
|
||||
DGUS_SCREEN_SDPRINTMANIPULATION = 15,
|
||||
DGUS_SCREEN_SDPRINTTUNE = 17,
|
||||
|
||||
MKSLCD_SCREEN_BOOT = 0,
|
||||
MKSLCD_SCREEN_HOME = 1, // MKS main page
|
||||
MKSLCD_SCREEN_SETTING = 2, // MKS Setting page / no wifi whit
|
||||
MKSLCD_SCREEM_TOOL = 3, // MKS Tool page
|
||||
MKSLCD_SCREEN_EXTRUDE_P1 = 4,
|
||||
MKSLCD_SCREEN_EXTRUDE_P2 = 11,
|
||||
MKSLCD_SCREEN_LEVEL = 5,
|
||||
MKSLCD_AUTO_LEVEL = 73,
|
||||
MKSLCD_SCREEN_LEVEL_PRESS = 9,
|
||||
MKSLCD_SCREEN_MOVE = 6,
|
||||
MKSLCD_SCREEN_PRINT = 7,
|
||||
MKSLCD_SCREEN_PRINT_PRESS = 13,
|
||||
MKSLCD_SCREEN_PAUSE = 26,
|
||||
MKSLCD_SCREEN_PAUSE_PRESS = 26,
|
||||
MKSLCD_SCREEN_CHOOSE_FILE = 15,
|
||||
MKSLCD_SCREEN_NO_CHOOSE_FILE = 17,
|
||||
MKSLCD_SCREEN_Config = 46,
|
||||
MKSLCD_SCREEN_Config_MOTOR = 47,
|
||||
MKSLCD_SCREEN_MOTOR_PLUSE = 51,
|
||||
MKSLCD_SCREEN_MOTOR_SPEED = 55,
|
||||
MKSLCD_SCREEN_MOTOR_ACC_MAX = 53,
|
||||
MKSLCD_SCREEN_PRINT_CONFIG = 60,
|
||||
MKSLCD_SCREEN_LEVEL_DATA = 48,
|
||||
MKSLCD_PrintPause_SET = 49,
|
||||
MKSLCD_FILAMENT_DATA = 50,
|
||||
MKSLCD_ABOUT = 36,
|
||||
MKSLCD_PID = 56,
|
||||
MKSLCD_PAUSE_SETTING_MOVE = 58,
|
||||
MKSLCD_PAUSE_SETTING_EX = 57,
|
||||
MKSLCD_PAUSE_SETTING_EX2 = 61,
|
||||
MKSLCD_SCREEN_NO_FILE = 42,
|
||||
MKSLCD_SCREEN_PRINT_CONFIRM = 43,
|
||||
MKSLCD_SCREEN_EX_CONFIG = 65,
|
||||
MKSLCD_SCREEN_EEP_Config = 20,
|
||||
MKSLCD_SCREEN_PrintDone = 25,
|
||||
MKSLCD_SCREEN_TMC_Config = 70,
|
||||
MKSLCD_Screen_Offset_Config = 30,
|
||||
MKSLCD_Screen_PMove = 64,
|
||||
MKSLCD_Screen_Baby = 71,
|
||||
MKSLCD_SCREEN_BOOT = 0,
|
||||
MKSLCD_SCREEN_HOME = 1, // MKS main page
|
||||
MKSLCD_SCREEN_SETTING = 2, // MKS Setting page / no wifi whit
|
||||
MKSLCD_SCREEM_TOOL = 3, // MKS Tool page
|
||||
MKSLCD_SCREEN_EXTRUDE_P1 = 4,
|
||||
MKSLCD_SCREEN_EXTRUDE_P2 = 11,
|
||||
MKSLCD_SCREEN_LEVEL = 5,
|
||||
MKSLCD_AUTO_LEVEL = 73,
|
||||
MKSLCD_SCREEN_LEVEL_PRESS = 9,
|
||||
MKSLCD_SCREEN_MOVE = 6,
|
||||
MKSLCD_SCREEN_PRINT = 7,
|
||||
MKSLCD_SCREEN_PRINT_PRESS = 13,
|
||||
MKSLCD_SCREEN_PAUSE = 26,
|
||||
MKSLCD_SCREEN_PAUSE_PRESS = 26,
|
||||
MKSLCD_SCREEN_CHOOSE_FILE = 15,
|
||||
MKSLCD_SCREEN_NO_CHOOSE_FILE = 17,
|
||||
MKSLCD_SCREEN_Config = 46,
|
||||
MKSLCD_SCREEN_Config_MOTOR = 47,
|
||||
MKSLCD_SCREEN_MOTOR_PULSE = 51,
|
||||
MKSLCD_SCREEN_MOTOR_SPEED = 55,
|
||||
MKSLCD_SCREEN_MOTOR_ACC_MAX = 53,
|
||||
MKSLCD_SCREEN_PRINT_CONFIG = 60,
|
||||
MKSLCD_SCREEN_LEVEL_DATA = 48,
|
||||
MKSLCD_PrintPause_SET = 49,
|
||||
MKSLCD_FILAMENT_DATA = 50,
|
||||
MKSLCD_ABOUT = 36,
|
||||
MKSLCD_PID = 56,
|
||||
MKSLCD_PAUSE_SETTING_MOVE = 58,
|
||||
MKSLCD_PAUSE_SETTING_EX = 57,
|
||||
MKSLCD_PAUSE_SETTING_EX2 = 61,
|
||||
MKSLCD_SCREEN_NO_FILE = 42,
|
||||
MKSLCD_SCREEN_PRINT_CONFIRM = 43,
|
||||
MKSLCD_SCREEN_EX_CONFIG = 65,
|
||||
MKSLCD_SCREEN_EEP_Config = 20,
|
||||
MKSLCD_SCREEN_PrintDone = 25,
|
||||
MKSLCD_SCREEN_TMC_Config = 70,
|
||||
MKSLCD_Screen_Offset_Config = 30,
|
||||
MKSLCD_Screen_PMove = 64,
|
||||
MKSLCD_Screen_Baby = 71,
|
||||
|
||||
#endif
|
||||
|
||||
DGUS_SCREEN_CONFIRM = 240,
|
||||
DGUS_SCREEN_KILL = 250, //!< Kill Screen. Must always be 250 (to be able to display "Error wrong LCD Version")
|
||||
DGUS_SCREEN_WAITING = 251,
|
||||
DGUS_SCREEN_POPUP = 252, //!< special target, popup screen will also return this code to say "return to previous screen"
|
||||
DGUS_SCREEN_UNUSED = 255
|
||||
DGUS_SCREEN_CONFIRM = 240,
|
||||
DGUS_SCREEN_KILL = 250, //!< Kill Screen. Must always be 250 (to be able to display "Error wrong LCD Version")
|
||||
DGUS_SCREEN_WAITING = 251,
|
||||
DGUS_SCREEN_POPUP = 252, //!< special target, popup screen will also return this code to say "return to previous screen"
|
||||
DGUS_SCREEN_UNUSED = 255
|
||||
};
|
||||
|
||||
// Place for status messages.
|
||||
|
|
@ -290,7 +274,7 @@ constexpr uint16_t SP_T_Bed_Set = 0x5040;
|
|||
constexpr uint8_t VP_MSGSTR4_LEN = 0x20;
|
||||
|
||||
constexpr uint16_t VP_MARLIN_VERSION = 0x1A00;
|
||||
constexpr uint8_t VP_MARLIN_VERSION_LEN = 16; // there is more space on the display, if needed.
|
||||
constexpr uint8_t VP_MARLIN_VERSION_LEN = 16; // there is more space on the display, if needed.
|
||||
|
||||
constexpr uint16_t VP_SCREENCHANGE_ASK = 0x1500;
|
||||
constexpr uint16_t VP_SCREENCHANGE = 0x1501; // Key-Return button to new menu pressed. Data contains target screen in low byte and info in high byte.
|
||||
|
|
@ -347,8 +331,9 @@ constexpr uint16_t SP_T_Bed_Set = 0x5040;
|
|||
constexpr uint16_t VP_MOVE_E5 = 0x231A;
|
||||
constexpr uint16_t VP_MOVE_E6 = 0x231C;
|
||||
constexpr uint16_t VP_MOVE_E7 = 0x231E;
|
||||
|
||||
constexpr uint16_t VP_HOME_ALL = 0x2320;
|
||||
constexpr uint16_t VP_MOTOR_LOCK_UNLOK = 0x2330;
|
||||
constexpr uint16_t VP_MOTOR_LOCK_UNLOCK = 0x2330;
|
||||
constexpr uint16_t VP_MOVE_DISTANCE = 0x2334;
|
||||
constexpr uint16_t VP_X_HOME = 0x2336;
|
||||
constexpr uint16_t VP_Y_HOME = 0x2338;
|
||||
|
|
@ -383,7 +368,7 @@ constexpr uint16_t SP_T_Bed_Set = 0x5040;
|
|||
constexpr uint16_t VP_E0_FILAMENT_LOAD_UNLOAD = 0x2500;
|
||||
constexpr uint16_t VP_E1_FILAMENT_LOAD_UNLOAD = 0x2504;
|
||||
constexpr uint16_t VP_LOAD_Filament = 0x2508;
|
||||
// constexpr uint16_t VP_LOAD_UNLOAD_Cancle = 0x250A;
|
||||
//constexpr uint16_t VP_LOAD_UNLOAD_Cancel = 0x250A;
|
||||
constexpr uint16_t VP_UNLOAD_Filament = 0x250B;
|
||||
constexpr uint16_t VP_Filament_distance = 0x2600;
|
||||
constexpr uint16_t VP_Filament_speed = 0x2604;
|
||||
|
|
@ -467,10 +452,10 @@ constexpr uint16_t SP_T_Bed_Set = 0x5040;
|
|||
constexpr uint16_t VP_SD_Print_Filename = 0x32C0;
|
||||
|
||||
// X Y Z Point
|
||||
constexpr uint16_t VP_XPos = 0x3300; // 4 Byte Fixed point number; format xxx.yy
|
||||
constexpr uint16_t VP_YPos = 0x3302; // 4 Byte Fixed point number; format xxx.yy
|
||||
constexpr uint16_t VP_ZPos = 0x3304; // 4 Byte Fixed point number; format xxx.yy
|
||||
constexpr uint16_t VP_EPos = 0x3306; // 4 Byte Fixed point number; format xxx.yy
|
||||
constexpr uint16_t VP_XPos = 0x3300; // 4 Byte Fixed point number; format xxx.yy
|
||||
constexpr uint16_t VP_YPos = 0x3302; // 4 Byte Fixed point number; format xxx.yy
|
||||
constexpr uint16_t VP_ZPos = 0x3304; // 4 Byte Fixed point number; format xxx.yy
|
||||
constexpr uint16_t VP_EPos = 0x3306; // 4 Byte Fixed point number; format xxx.yy
|
||||
|
||||
// Print
|
||||
constexpr uint16_t VP_PrintProgress_Percentage = 0x3330; // 2 Byte Integer (0..100)
|
||||
|
|
@ -481,16 +466,16 @@ constexpr uint16_t SP_T_Bed_Set = 0x5040;
|
|||
constexpr uint16_t VP_PrintsTotal = 0x3380;
|
||||
constexpr uint16_t VP_PrintsTotal_LEN = 16;
|
||||
|
||||
constexpr uint16_t VP_File_Pictutr0 = 0x3400;
|
||||
constexpr uint16_t VP_File_Pictutr1 = 0x3402;
|
||||
constexpr uint16_t VP_File_Pictutr2 = 0x3404;
|
||||
constexpr uint16_t VP_File_Pictutr3 = 0x3406;
|
||||
constexpr uint16_t VP_File_Pictutr4 = 0x3408;
|
||||
constexpr uint16_t VP_File_Pictutr5 = 0x340A;
|
||||
constexpr uint16_t VP_File_Pictutr6 = 0x340C;
|
||||
constexpr uint16_t VP_File_Pictutr7 = 0x340E;
|
||||
constexpr uint16_t VP_File_Pictutr8 = 0x3410;
|
||||
constexpr uint16_t VP_File_Pictutr9 = 0x3412;
|
||||
constexpr uint16_t VP_File_Picture0 = 0x3400;
|
||||
constexpr uint16_t VP_File_Picture1 = 0x3402;
|
||||
constexpr uint16_t VP_File_Picture2 = 0x3404;
|
||||
constexpr uint16_t VP_File_Picture3 = 0x3406;
|
||||
constexpr uint16_t VP_File_Picture4 = 0x3408;
|
||||
constexpr uint16_t VP_File_Picture5 = 0x340A;
|
||||
constexpr uint16_t VP_File_Picture6 = 0x340C;
|
||||
constexpr uint16_t VP_File_Picture7 = 0x340E;
|
||||
constexpr uint16_t VP_File_Picture8 = 0x3410;
|
||||
constexpr uint16_t VP_File_Picture9 = 0x3412;
|
||||
|
||||
constexpr uint16_t VP_BED_STATUS = 0x341C;
|
||||
|
||||
|
|
@ -512,101 +497,103 @@ constexpr uint16_t SP_T_Bed_Set = 0x5040;
|
|||
constexpr uint16_t VP_PrintTime_S = 0x3504;
|
||||
|
||||
// PIDs
|
||||
constexpr uint16_t VP_E0_PID_P = 0x3700; // at the moment , uint16_t , 0~1638.4
|
||||
constexpr uint16_t VP_E0_PID_I = 0x3702;
|
||||
constexpr uint16_t VP_E0_PID_D = 0x3704;
|
||||
constexpr uint16_t VP_E1_PID_P = 0x3706; // at the moment , uint16_t , 0~1638.4
|
||||
constexpr uint16_t VP_E1_PID_I = 0x3708;
|
||||
constexpr uint16_t VP_E1_PID_D = 0x370A;
|
||||
constexpr uint16_t VP_BED_PID_P = 0x3710;
|
||||
constexpr uint16_t VP_BED_PID_I = 0x3712;
|
||||
constexpr uint16_t VP_BED_PID_D = 0x3714;
|
||||
constexpr uint16_t VP_E0_PID_P = 0x3700; // at the moment , uint16_t , 0~1638.4
|
||||
constexpr uint16_t VP_E0_PID_I = 0x3702;
|
||||
constexpr uint16_t VP_E0_PID_D = 0x3704;
|
||||
constexpr uint16_t VP_E1_PID_P = 0x3706; // at the moment , uint16_t , 0~1638.4
|
||||
constexpr uint16_t VP_E1_PID_I = 0x3708;
|
||||
constexpr uint16_t VP_E1_PID_D = 0x370A;
|
||||
constexpr uint16_t VP_BED_PID_P = 0x3710;
|
||||
constexpr uint16_t VP_BED_PID_I = 0x3712;
|
||||
constexpr uint16_t VP_BED_PID_D = 0x3714;
|
||||
|
||||
constexpr uint16_t VP_EEPROM_CTRL = 0x3720;
|
||||
constexpr uint16_t VP_EEPROM_CTRL = 0x3720;
|
||||
|
||||
constexpr uint16_t VP_OFFSET_X = 0x3724;
|
||||
constexpr uint16_t VP_OFFSET_Y = 0x3728;
|
||||
constexpr uint16_t VP_OFFSET_Z = 0x372B;
|
||||
constexpr uint16_t VP_OFFSET_X = 0x3724;
|
||||
constexpr uint16_t VP_OFFSET_Y = 0x3728;
|
||||
constexpr uint16_t VP_OFFSET_Z = 0x372B;
|
||||
|
||||
// PID autotune
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_E0 = 0x3800;
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_E1 = 0x3802;
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_E2 = 0x3804;
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_E3 = 0x3806;
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_E4 = 0x3808;
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_E5 = 0x380A;
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_BED = 0x380C;
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_E0 = 0x3800;
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_E1 = 0x3802;
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_E2 = 0x3804;
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_E3 = 0x3806;
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_E4 = 0x3808;
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_E5 = 0x380A;
|
||||
constexpr uint16_t VP_PID_AUTOTUNE_BED = 0x380C;
|
||||
|
||||
// Calibrate Z
|
||||
constexpr uint16_t VP_Z_CALIBRATE = 0x3810;
|
||||
constexpr uint16_t VP_Z_CALIBRATE = 0x3810;
|
||||
|
||||
constexpr uint16_t VP_AutoTurnOffSw = 0x3812;
|
||||
constexpr uint16_t VP_LCD_BLK = 0x3814;
|
||||
constexpr uint16_t VP_AutoTurnOffSw = 0x3812;
|
||||
constexpr uint16_t VP_LCD_BLK = 0x3814;
|
||||
|
||||
constexpr uint16_t VP_X_PARK_POS = 0x3900;
|
||||
constexpr uint16_t VP_Y_PARK_POS = 0x3902;
|
||||
constexpr uint16_t VP_Z_PARK_POS = 0x3904;
|
||||
constexpr uint16_t VP_X_PARK_POS = 0x3900;
|
||||
constexpr uint16_t VP_Y_PARK_POS = 0x3902;
|
||||
constexpr uint16_t VP_Z_PARK_POS = 0x3904;
|
||||
|
||||
/* -------------------------------0x4000-0x4FFF------------------------------- */
|
||||
// Heater Control Buttons , triged between "cool down" and "heat PLA" state
|
||||
constexpr uint16_t VP_E0_CONTROL = 0x4010;
|
||||
constexpr uint16_t VP_E1_CONTROL = 0x4012;
|
||||
constexpr uint16_t VP_E0_CONTROL = 0x4010;
|
||||
constexpr uint16_t VP_E1_CONTROL = 0x4012;
|
||||
//constexpr uint16_t VP_E2_CONTROL = 0x2214;
|
||||
//constexpr uint16_t VP_E3_CONTROL = 0x2216;
|
||||
//constexpr uint16_t VP_E4_CONTROL = 0x2218;
|
||||
//constexpr uint16_t VP_E5_CONTROL = 0x221A;
|
||||
constexpr uint16_t VP_BED_CONTROL = 0x401C;
|
||||
constexpr uint16_t VP_BED_CONTROL = 0x401C;
|
||||
|
||||
// Preheat
|
||||
constexpr uint16_t VP_E0_BED_PREHEAT = 0x4020;
|
||||
constexpr uint16_t VP_E1_BED_PREHEAT = 0x4022;
|
||||
constexpr uint16_t VP_E0_BED_PREHEAT = 0x4020;
|
||||
constexpr uint16_t VP_E1_BED_PREHEAT = 0x4022;
|
||||
//constexpr uint16_t VP_E2_BED_PREHEAT = 0x4024;
|
||||
//constexpr uint16_t VP_E3_BED_PREHEAT = 0x4026;
|
||||
//constexpr uint16_t VP_E4_BED_PREHEAT = 0x4028;
|
||||
//constexpr uint16_t VP_E5_BED_PREHEAT = 0x402A;
|
||||
|
||||
// Filament load and unload
|
||||
// constexpr uint16_t VP_E0_FILAMENT_LOAD_UNLOAD = 0x4030;
|
||||
// constexpr uint16_t VP_E1_FILAMENT_LOAD_UNLOAD = 0x4032;
|
||||
//constexpr uint16_t VP_E0_FILAMENT_LOAD_UNLOAD = 0x4030;
|
||||
//constexpr uint16_t VP_E1_FILAMENT_LOAD_UNLOAD = 0x4032;
|
||||
|
||||
// Settings store , reset
|
||||
|
||||
// Level data
|
||||
constexpr uint16_t VP_Level_Point_One_X = 0x4100;
|
||||
constexpr uint16_t VP_Level_Point_One_Y = 0x4102;
|
||||
constexpr uint16_t VP_Level_Point_Two_X = 0x4104;
|
||||
constexpr uint16_t VP_Level_Point_Two_Y = 0x4106;
|
||||
constexpr uint16_t VP_Level_Point_Three_X = 0x4108;
|
||||
constexpr uint16_t VP_Level_Point_Three_Y = 0x410A;
|
||||
constexpr uint16_t VP_Level_Point_Four_X = 0x410C;
|
||||
constexpr uint16_t VP_Level_Point_Four_Y = 0x410E;
|
||||
constexpr uint16_t VP_Level_Point_Five_X = 0x4110;
|
||||
constexpr uint16_t VP_Level_Point_Five_Y = 0x4112;
|
||||
constexpr uint16_t VP_Level_Point_One_X = 0x4100;
|
||||
constexpr uint16_t VP_Level_Point_One_Y = 0x4102;
|
||||
constexpr uint16_t VP_Level_Point_Two_X = 0x4104;
|
||||
constexpr uint16_t VP_Level_Point_Two_Y = 0x4106;
|
||||
constexpr uint16_t VP_Level_Point_Three_X = 0x4108;
|
||||
constexpr uint16_t VP_Level_Point_Three_Y = 0x410A;
|
||||
constexpr uint16_t VP_Level_Point_Four_X = 0x410C;
|
||||
constexpr uint16_t VP_Level_Point_Four_Y = 0x410E;
|
||||
constexpr uint16_t VP_Level_Point_Five_X = 0x4110;
|
||||
constexpr uint16_t VP_Level_Point_Five_Y = 0x4112;
|
||||
|
||||
/* H43 Version */
|
||||
constexpr uint16_t VP_MKS_H43_VERSION = 0x4A00; // MKS H43 V1.0.0
|
||||
constexpr uint16_t VP_MKS_H43_VERSION_LEN = 16;
|
||||
constexpr uint16_t VP_MKS_H43_UpdataVERSION = 0x4A10; // MKS H43 V1.0.0
|
||||
constexpr uint16_t VP_MKS_H43_UpdataVERSION_LEN = 16;
|
||||
constexpr uint16_t VP_MKS_H43_VERSION = 0x4A00; // MKS H43 V1.0.0
|
||||
constexpr uint16_t VP_MKS_H43_VERSION_LEN = 16;
|
||||
constexpr uint16_t VP_MKS_H43_UpdataVERSION = 0x4A10; // MKS H43 V1.0.0
|
||||
constexpr uint16_t VP_MKS_H43_UpdataVERSION_LEN = 16;
|
||||
|
||||
/* -------------------------------0x5000-0xFFFF------------------------------- */
|
||||
constexpr uint16_t VP_HOME_Dis = 0x5000;
|
||||
constexpr uint16_t VP_Setting_Dis = 0x5010;
|
||||
constexpr uint16_t VP_Tool_Dis = 0x5020;
|
||||
constexpr uint16_t VP_Printing_Dis = 0x5030;
|
||||
constexpr uint16_t VP_Print_Dis = 0x5250;
|
||||
|
||||
constexpr uint16_t VP_Language_Dis = 0x5080;
|
||||
constexpr uint16_t VP_LossPoint_Dis = 0x5090;
|
||||
|
||||
constexpr uint16_t VP_PrintPauseConfig_Dis = 0x5120;
|
||||
constexpr uint16_t VP_MotorPluse_Dis = 0x5140;
|
||||
constexpr uint16_t VP_MotorPulse_Dis = 0x5140;
|
||||
constexpr uint16_t VP_MotorMaxSpeed_Dis = 0x5150;
|
||||
constexpr uint16_t VP_MotorMaxAcc_Dis = 0x5160;
|
||||
|
||||
constexpr uint16_t VP_X_Pluse_Dis = 0x5170;
|
||||
constexpr uint16_t VP_Y_Pluse_Dis = 0x5180;
|
||||
constexpr uint16_t VP_Z_Pluse_Dis = 0x5190;
|
||||
constexpr uint16_t VP_E0_Pluse_Dis = 0x51A0;
|
||||
constexpr uint16_t VP_E1_Pluse_Dis = 0x51B0;
|
||||
constexpr uint16_t VP_X_Pulse_Dis = 0x5170;
|
||||
constexpr uint16_t VP_Y_Pulse_Dis = 0x5180;
|
||||
constexpr uint16_t VP_Z_Pulse_Dis = 0x5190;
|
||||
constexpr uint16_t VP_E0_Pulse_Dis = 0x51A0;
|
||||
constexpr uint16_t VP_E1_Pulse_Dis = 0x51B0;
|
||||
|
||||
constexpr uint16_t VP_X_Max_Speed_Dis = 0x5280;
|
||||
constexpr uint16_t VP_Y_Max_Speed_Dis = 0x5290;
|
||||
|
|
@ -614,11 +601,11 @@ constexpr uint16_t SP_T_Bed_Set = 0x5040;
|
|||
constexpr uint16_t VP_E0_Max_Speed_Dis = 0x52B0;
|
||||
constexpr uint16_t VP_E1_Max_Speed_Dis = 0x52C0;
|
||||
|
||||
constexpr uint16_t VP_X_Max_Acc_Speed_Dis = 0x51E0;
|
||||
constexpr uint16_t VP_Y_Max_Acc_Speed_Dis = 0x51F0;
|
||||
constexpr uint16_t VP_Z_Max_Acc_Speed_Dis = 0x5200;
|
||||
constexpr uint16_t VP_E0_Max_Acc_Speed_Dis = 0x5210;
|
||||
constexpr uint16_t VP_E1_Max_Acc_Speed_Dis = 0x5220;
|
||||
constexpr uint16_t VP_X_Max_Acc_Dis = 0x51E0;
|
||||
constexpr uint16_t VP_Y_Max_Acc_Dis = 0x51F0;
|
||||
constexpr uint16_t VP_Z_Max_Acc_Dis = 0x5200;
|
||||
constexpr uint16_t VP_E0_Max_Acc_Dis = 0x5210;
|
||||
constexpr uint16_t VP_E1_Max_Acc_Dis = 0x5220;
|
||||
|
||||
constexpr uint16_t VP_PrintTime_Dis = 0x5470;
|
||||
constexpr uint16_t VP_E0_Temp_Dis = 0x5310;
|
||||
|
|
@ -672,8 +659,8 @@ constexpr uint16_t SP_T_Bed_Set = 0x5040;
|
|||
|
||||
constexpr uint16_t VP_Length_Dis = 0x5B00;
|
||||
|
||||
constexpr uint16_t VP_PrintConfrim_Info_Dis = 0x5B90;
|
||||
constexpr uint16_t VP_StopPrintConfrim_Info_Dis = 0x5B80;
|
||||
constexpr uint16_t VP_PrintConfirm_Info_Dis = 0x5B90;
|
||||
constexpr uint16_t VP_StopPrintConfirm_Info_Dis = 0x5B80;
|
||||
|
||||
constexpr uint16_t VP_Point_One_Dis = 0x5BA0;
|
||||
constexpr uint16_t VP_Point_Two_Dis = 0x5BB0;
|
||||
|
|
@ -681,8 +668,6 @@ constexpr uint16_t SP_T_Bed_Set = 0x5040;
|
|||
constexpr uint16_t VP_Point_Four_Dis = 0x5BD0;
|
||||
constexpr uint16_t VP_Point_Five_Dis = 0x5BE0;
|
||||
|
||||
constexpr uint16_t VP_Print_Dis = 0x5250;
|
||||
|
||||
constexpr uint16_t VP_About_Dis = 0x5A00;
|
||||
constexpr uint16_t VP_Config_Dis = 0x5A10;
|
||||
constexpr uint16_t VP_Filament_Dis = 0x5A20;
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -25,6 +25,9 @@
|
|||
|
||||
enum DGUS_ScreenID : uint8_t;
|
||||
|
||||
enum MKS_Choose : uint8_t { MKS_Language_Choose, MKS_Language_NoChoose };
|
||||
enum MKS_Language : uint8_t { MKS_SimpleChinese, MKS_English };
|
||||
|
||||
class DGUSScreenHandlerMKS : public DGUSScreenHandler {
|
||||
public:
|
||||
DGUSScreenHandlerMKS() = default;
|
||||
|
|
@ -53,7 +56,7 @@ public:
|
|||
#if ENABLED(PREVENT_COLD_EXTRUSION)
|
||||
static void handleGetExMinTemp(DGUS_VP_Variable &var, void *val_ptr);
|
||||
#endif
|
||||
static void languageDisplay(uint8_t var);
|
||||
static void updateDisplayLanguage();
|
||||
static void tmcChangeConfig(DGUS_VP_Variable &var, void *val_ptr);
|
||||
static void getTurnOffCtrl(DGUS_VP_Variable &var, void *val_ptr);
|
||||
static void languagePInit();
|
||||
|
|
@ -105,9 +108,6 @@ public:
|
|||
static bool loop();
|
||||
};
|
||||
|
||||
enum MKS_Choose : uint8_t { MKS_Language_Choose, MKS_Language_NoChoose };
|
||||
enum MKS_Language : uint8_t { MKS_SimpleChinese, MKS_English };
|
||||
|
||||
extern MKS_Language mks_language_index;
|
||||
extern bool DGUSAutoTurnOff;
|
||||
|
||||
|
|
|
|||
|
|
@ -150,7 +150,7 @@ const struct DGUS_VP_Variable ListOfVP[] PROGMEM = {
|
|||
VPHELPER(VP_HOME_ALL, nullptr, screen.handleManualMove, nullptr),
|
||||
#endif
|
||||
|
||||
VPHELPER(VP_MOTOR_LOCK_UNLOK, nullptr, screen.handleMotorLockUnlock, nullptr),
|
||||
VPHELPER(VP_MOTOR_LOCK_UNLOCK, nullptr, screen.handleMotorLockUnlock, nullptr),
|
||||
#if ENABLED(POWER_LOSS_RECOVERY)
|
||||
VPHELPER(VP_POWER_LOSS_RECOVERY, nullptr, screen.handlePowerLossRecovery, nullptr),
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -111,7 +111,7 @@ constexpr uint16_t VP_MOVE_E1 = 0x2112;
|
|||
//constexpr uint16_t VP_MOVE_E4 = 0x2118;
|
||||
//constexpr uint16_t VP_MOVE_E5 = 0x211A;
|
||||
constexpr uint16_t VP_HOME_ALL = 0x2120;
|
||||
constexpr uint16_t VP_MOTOR_LOCK_UNLOK = 0x2130;
|
||||
constexpr uint16_t VP_MOTOR_LOCK_UNLOCK = 0x2130;
|
||||
|
||||
// Power loss recovery
|
||||
constexpr uint16_t VP_POWER_LOSS_RECOVERY = 0x2180;
|
||||
|
|
|
|||
|
|
@ -143,7 +143,7 @@ void DGUSScreenHandler::screenChangeHook(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
|
||||
updateNewScreen(target);
|
||||
|
||||
#ifdef DEBUG_DGUSLCD
|
||||
#if ENABLED(DEBUG_DGUSLCD)
|
||||
if (!findScreenVPMapList(target)) DEBUG_ECHOLNPGM("WARNING: No screen Mapping found for ", target);
|
||||
#endif
|
||||
}
|
||||
|
|
@ -290,7 +290,9 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
#endif
|
||||
break;
|
||||
case 1: // Load ABS
|
||||
TERN_(PREHEAT_2_TEMP_HOTEND, e_temp = PREHEAT_2_TEMP_HOTEND);
|
||||
#ifdef PREHEAT_2_TEMP_HOTEND
|
||||
e_temp = PREHEAT_2_TEMP_HOTEND;
|
||||
#endif
|
||||
break;
|
||||
case 2: // Load PET
|
||||
#ifdef PREHEAT_3_TEMP_HOTEND
|
||||
|
|
@ -310,9 +312,9 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
|
||||
if (filament_data.action == 0) { // Go back to utility screen
|
||||
#if HAS_HOTEND
|
||||
thermalManager.setTargetHotend(e_temp, ExtUI::extruder_t::E0);
|
||||
thermalManager.setTargetHotend(e_temp, 0);
|
||||
#if HAS_MULTI_HOTEND
|
||||
thermalManager.setTargetHotend(e_temp, ExtUI::extruder_t::E1);
|
||||
thermalManager.setTargetHotend(e_temp, 1);
|
||||
#endif
|
||||
#endif
|
||||
gotoScreen(DGUS_SCREEN_UTILITY);
|
||||
|
|
@ -322,13 +324,13 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
default: return;
|
||||
#if HAS_HOTEND
|
||||
case VP_E0_FILAMENT_LOAD_UNLOAD:
|
||||
filament_data.extruder = ExtUI::extruder_t::E0;
|
||||
filament_data.extruder = 0;
|
||||
thermalManager.setTargetHotend(e_temp, filament_data.extruder);
|
||||
break;
|
||||
#endif
|
||||
#if HAS_MULTI_HOTEND
|
||||
case VP_E1_FILAMENT_LOAD_UNLOAD:
|
||||
filament_data.extruder = ExtUI::extruder_t::E1;
|
||||
filament_data.extruder = 1;
|
||||
thermalManager.setTargetHotend(e_temp, filament_data.extruder);
|
||||
break;
|
||||
#endif
|
||||
|
|
@ -350,7 +352,7 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
//gotoScreen(DGUS_SCREEN_FILAMENT_LOADING);
|
||||
filament_data.heated = true;
|
||||
}
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder) + movevalue;
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder ? ExtUI::extruder_t::E1 : ExtUI::extruder_t::E0) + movevalue;
|
||||
}
|
||||
else { // unload filament
|
||||
if (!filament_data.heated) {
|
||||
|
|
@ -359,14 +361,14 @@ void DGUSScreenHandler::handleManualMove(DGUS_VP_Variable &var, void *val_ptr) {
|
|||
}
|
||||
// Before unloading extrude to prevent jamming
|
||||
if (filament_data.purge_length >= 0) {
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder) + movevalue;
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder ? ExtUI::extruder_t::E1 : ExtUI::extruder_t::E0) + movevalue;
|
||||
filament_data.purge_length -= movevalue;
|
||||
}
|
||||
else {
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder) - movevalue;
|
||||
movevalue = ExtUI::getAxisPosition_mm(filament_data.extruder ? ExtUI::extruder_t::E1 : ExtUI::extruder_t::E0) - movevalue;
|
||||
}
|
||||
}
|
||||
ExtUI::setAxisPosition_mm(movevalue, filament_data.extruder);
|
||||
ExtUI::setAxisPosition_mm(movevalue, filament_data.extruder ? ExtUI::extruder_t::E1 : ExtUI::extruder_t::E0);
|
||||
}
|
||||
}
|
||||
#endif // DGUS_FILAMENT_LOADUNLOAD
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ void DGUS_SDCardHandler::Reset() {
|
|||
currentSeekPos++;
|
||||
}
|
||||
|
||||
#ifdef DEBUG_DGUSLCD
|
||||
#if ENABLED(DEBUG_DGUSLCD)
|
||||
DEBUG_ECHOPGM("Reset() :", fileCount);
|
||||
DEBUG_CHAR('/');
|
||||
DEBUG_ECHOLN(currentSeekPos);
|
||||
|
|
@ -71,7 +71,7 @@ void DGUS_SDCardHandler::onPageLoad(DGUS_SDCardHandler::page_t page) {
|
|||
uint16_t currentSeekPos = 0;
|
||||
uint16_t entriesCount = fileList.count();
|
||||
|
||||
#ifdef DEBUG_DGUSLCD
|
||||
#if ENABLED(DEBUG_DGUSLCD)
|
||||
DEBUG_ECHOLNPGM("onPageLoad(): seek page ", pageIndex);
|
||||
#endif
|
||||
while (currentFilePos < pageIndex * DGUS_E3S1PRO_BASIC_SDCARD_FILES_PER_PAGE
|
||||
|
|
@ -83,7 +83,7 @@ void DGUS_SDCardHandler::onPageLoad(DGUS_SDCardHandler::page_t page) {
|
|||
currentFilePos++;
|
||||
}
|
||||
|
||||
#ifdef DEBUG_DGUSLCD
|
||||
#if ENABLED(DEBUG_DGUSLCD)
|
||||
DEBUG_ECHOPGM("onPageLoad() :", currentFilePos);
|
||||
DEBUG_CHAR('/');
|
||||
DEBUG_ECHOLN(currentSeekPos - 1);
|
||||
|
|
|
|||
|
|
@ -208,7 +208,7 @@ void DGUSScreenHandler::userConfirmation() {
|
|||
if (confirm_return_screen >= DGUS_ScreenID::FILE1 && confirm_return_screen <= DGUS_ScreenID::FILE4)
|
||||
dgus_sdcard_handler.onPageLoad(DGUS_SCREEN_TO_PAGE(confirm_return_screen));
|
||||
|
||||
#ifdef DEBUG_DGUSLCD
|
||||
#if ENABLED(DEBUG_DGUSLCD)
|
||||
DEBUG_ECHOLNPGM("trig confirmed, ret:", (uint16_t)confirm_return_screen);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -112,7 +112,7 @@ void menu_advanced_settings();
|
|||
#else
|
||||
#define S1_SPACE(I)
|
||||
#endif
|
||||
#define STOP_ITEM(A,I,M,L) TERN(HAS_##A##I##_##M##_STATE, _STOP_ITEM, _IF_1_ELSE)(STRINGIFY(A) STRINGIFY(I) S1_SPACE(I) " " L, A##I##_##M)
|
||||
#define STOP_ITEM(A,I,M,L) TERN(HAS_##A##I##_##M##_STATE, _STOP_ITEM, OMIT)(STRINGIFY(A) STRINGIFY(I) S1_SPACE(I) " " L, A##I##_##M)
|
||||
#define STOP_MINMAX(A,I) STOP_ITEM(A,I,MIN,"Min") STOP_ITEM(A,I,MAX,"Max")
|
||||
#define FIL_ITEM(N) PSTRING_ITEM_N_P(N-1, MSG_FILAMENT_EN, FILAMENT_IS_OUT(N) ? PSTR("out") : PSTR("PRESENT"), SS_FULL);
|
||||
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
#define ES_ENUM(A,M) _ES_ENUM(A,M)
|
||||
|
||||
#define _ES_ITEM(N) , N
|
||||
#define ES_ITEM(K,N) TERN(K,_ES_ITEM,_IF_1_ELSE)(N)
|
||||
#define ES_ITEM(K,N) TERN(K,_ES_ITEM,OMIT)(N)
|
||||
|
||||
#define _ESN_ITEM(K,A,M) ES_ITEM(K,ES_ENUM(A,M))
|
||||
#define ES_MINMAX(A) ES_ITEM(HAS_##A##_MIN_STATE, ES_ENUM(A,MIN)) ES_ITEM(HAS_##A##_MAX_STATE, ES_ENUM(A,MAX))
|
||||
|
|
|
|||
|
|
@ -128,7 +128,7 @@
|
|||
#endif
|
||||
|
||||
// Verify that drivers match the hardware
|
||||
#if (HAS_X_AXIS && !AXIS_DRIVER_TYPE_X(DRV8825)) || (HAS_Y_AXIS && !AXIS_DRIVER_TYPE_Y(DRV8825)) || (HAS_Z_AXIS && !AXIS_DRIVER_TYPE_Z(DRV8825)) || (HAS_EXTRUDER && !AXIS_DRIVER_TYPE_E0(DRV8825))
|
||||
#if (HAS_X_AXIS && !AXIS_DRIVER_TYPE_X(DRV8825)) || (HAS_Y_AXIS && !AXIS_DRIVER_TYPE_Y(DRV8825)) || (HAS_Z_AXIS && !AXIS_DRIVER_TYPE_Z(DRV8825)) || (HAS_EXTRUDERS && !AXIS_DRIVER_TYPE_E0(DRV8825))
|
||||
#error "Minitronics v2.0 has hard-wired DRV8825 drivers. Comment out this line to continue."
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -13,6 +13,13 @@ restore_configs
|
|||
opt_set MOTHERBOARD BOARD_FYSETC_F6_13 LCD_SERIAL_PORT 1 DGUS_LCD_UI FYSETC
|
||||
exec_test $1 $2 "DGUS (FYSETC)" "$3"
|
||||
|
||||
#
|
||||
# Test DGUS_LCD_UI MKS
|
||||
#
|
||||
restore_configs
|
||||
opt_set MOTHERBOARD BOARD_FYSETC_F6_13 LCD_SERIAL_PORT 1 DGUS_LCD_UI MKS
|
||||
exec_test $1 $2 "DGUS (MKS)" "$3"
|
||||
|
||||
#
|
||||
# Test DGUS_LCD_UI RELOADED
|
||||
#
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue