Sidekick, TAZ6, Pro offsets. Park nozzle in LCD

This commit is contained in:
Brian Kahl 2021-08-27 13:22:13 -05:00
parent 41c4f060d5
commit 032497ed20
5 changed files with 54 additions and 45 deletions

View File

@ -97,7 +97,7 @@
// Author info of this build printed to the host during boot and M115
#define STRING_CONFIG_H_AUTHOR "Lulzbot" // Who made the changes.
#define CUSTOM_VERSION_FILE Version.h // Path from the root directory (no quotes)
#define LULZBOT_FW_VERSION "2.0.9.0"
#define LULZBOT_FW_VERSION "2.0.9.0.1"
/**
* *** VENDORS PLEASE READ ***
@ -1547,7 +1547,7 @@
#elif ANY(TAZPro, TAZProXT)
#define NOZZLE_TO_PROBE_OFFSET { 0, 0, -1.102 }
#elif ANY(Sidekick_289, Sidekick_747)
#define NOZZLE_TO_PROBE_OFFSET { -6.25, 50, -1.10 }
#define NOZZLE_TO_PROBE_OFFSET { -1, 50, -2.5 }
#endif
// Most probes should stay away from the edges of the bed, but
@ -1558,11 +1558,11 @@
#if ENABLED(MiniV2)
#define PROBING_MARGIN -10
#elif ENABLED(TAZ6)
#define PROBING_MARGIN -10
#define PROBING_MARGIN -8
#elif ENABLED(Workhorse)
#define PROBING_MARGIN -10
#else
#define PROBING_MARGIN -3
#elif ANY(TAZPro, TAZProXT)
#define PROBING_MARGIN -9
#endif
#endif
// X and Y axis travel speed (mm/min) between probes
@ -1638,7 +1638,7 @@
#define Z_PROBE_LOW_POINT -4 // Farthest distance below the trigger-point to go before stopping
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -3
#define Z_PROBE_OFFSET_RANGE_MIN -5
#define Z_PROBE_OFFSET_RANGE_MAX 5
// Enable the M48 repeatability test to test probe accuracy
@ -1791,13 +1791,13 @@
#elif ENABLED(TAZ6)
#define X_BED_SIZE 280
#define Y_BED_SIZE 280
#define Y_BED_SIZE 285
// Travel limits (mm) after homing, corresponding to endstop positions.
#define LULZBOT_X_MIN_POS -21.6
#define LULZBOT_X_MIN_POS -20.1
#define LULZBOT_Y_MIN_POS -15.6
#define LULZBOT_Z_MIN_POS 0
#define LULZBOT_X_MAX_POS 299.5
#define LULZBOT_Y_MAX_POS 302.5
#define LULZBOT_Y_MAX_POS 303.5
#define LULZBOT_Z_MAX_POS 270
#elif ENABLED(Workhorse)
@ -1812,19 +1812,19 @@
#define LULZBOT_Z_MAX_POS 299
#elif ENABLED(TAZPro)
#define X_BED_SIZE 281
#define Y_BED_SIZE 283
#define X_BED_SIZE 284
#define Y_BED_SIZE 286
// Travel limits (mm) after homing, corresponding to endstop positions.
#define LULZBOT_X_MIN_POS -1
#define LULZBOT_Y_MIN_POS -13
#define LULZBOT_Y_MIN_POS -9
#define LULZBOT_X_MAX_POS 313
#define LULZBOT_Y_MAX_POS 315
#define LULZBOT_Y_MAX_POS 318
#define LULZBOT_Z_MIN_POS -9
#define LULZBOT_Z_MAX_POS 299
#elif ENABLED(TAZProXT)
#define X_BED_SIZE 281
#define Y_BED_SIZE 283
#define X_BED_SIZE 280
#define Y_BED_SIZE 280
// Travel limits (mm) after homing, corresponding to endstop positions.
#define LULZBOT_X_MIN_POS -1
#define LULZBOT_Y_MIN_POS -13
@ -1834,13 +1834,13 @@
#define LULZBOT_Z_MAX_POS 600
#elif defined(Sidekick_289)
#define X_BED_SIZE 162
#define X_BED_SIZE 164
#define Y_BED_SIZE 164
// Travel limits (mm) after homing, corresponding to endstop positions.
#define LULZBOT_X_MAX_POS 168
#define LULZBOT_X_MIN_POS -3.5
#define LULZBOT_Y_MAX_POS 173
#define LULZBOT_Y_MIN_POS -36
#define LULZBOT_Y_MIN_POS -29
#define LULZBOT_Z_MIN_POS 0
#define LULZBOT_Z_MAX_POS 184.5
@ -1849,9 +1849,9 @@
#define Y_BED_SIZE 231
// Travel limits (mm) after homing, corresponding to endstop positions.
#define LULZBOT_X_MAX_POS 232
#define LULZBOT_X_MIN_POS -1
#define LULZBOT_X_MIN_POS -1.5
#define LULZBOT_Y_MAX_POS 240
#define LULZBOT_Y_MIN_POS -23
#define LULZBOT_Y_MIN_POS -16
#define LULZBOT_Z_MIN_POS 0
#define LULZBOT_Z_MAX_POS 246.5
#endif
@ -2249,8 +2249,8 @@
#if ENABLED(Z_SAFE_HOMING)
#if ENABLED(TAZ6)
#define Z_SAFE_HOMING_X_POINT -21.6 // X point for Z homing
#define Z_SAFE_HOMING_Y_POINT 263.5 // Y point for Z homing
#define Z_SAFE_HOMING_X_POINT -20.1 // X point for Z homing
#define Z_SAFE_HOMING_Y_POINT 259.5 // Y point for Z homing
#elif ANY(Sidekick_289, Sisdekick_747)
#define Z_SAFE_HOMING_X_POINT (X_CENTER) // X point for Z homing
#define Z_SAFE_HOMING_Y_POINT (Y_BED_SIZE/2) // Y point for Z homing
@ -2459,7 +2459,7 @@
#endif
#if ENABLED(NOZZLE_CLEAN_FEATURE)
#define CLEAN_SCRIPT "M117 Hot end heating...\nM104 S170\nG28 O1\nM117 Wiping nozzle\nT0\nG1 X-17 Y25 Z10 F4000\nM109 R170\nG1 Z1\nM114\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 Z15\nM400\nM106 S255\nG0 X-10.0 Y-9.0M109 R160\nM107"
#define CLEAN_SCRIPT "M117 Hot end heating...\nM104 S170\nG28 O\nG12"
// Default number of pattern repetitions
#define NOZZLE_CLEAN_STROKES 12
@ -2472,7 +2472,10 @@
#if ENABLED(MiniV2)
#define NOZZLE_CLEAN_START_POINT { 45, 175, 0 }
#define NOZZLE_CLEAN_END_POINT { 115, 175, 0 }
#elif ENABLED(TAZPro, TAZProXT)
#elif ANY(TAZPro, TAZProXT) && ENABLED(LULZBOT_UNIVERSAL_TOOLHEAD)
#define NOZZLE_CLEAN_START_POINT { 300, 95, 1 }
#define NOZZLE_CLEAN_END_POINT { 300, 25, 1 }
#elif ANY(TAZPro, TAZProXT) && ENABLED(TOOLHEAD_Quiver_DualExtruder)
#define NOZZLE_CLEAN_START_POINT {{ -17, 95, 1 }, { 297, 95, 1 }}
#define NOZZLE_CLEAN_END_POINT {{ -17, 25, 1 }, { 297, 25, 1 }}
#else
@ -2502,17 +2505,16 @@
// Explicit wipe G-code script applies to a G12 with no arguments.
#if ENABLED(MiniV2)
#define WIPE_SEQUENCE_COMMANDS "M117 Hot end heating...\nM104 S170\nG28 O1\nM117 Wiping nozzle\nT0\nG1 X115 Y175 Z10 F4000\nM109 R170\nG1 Z1\nM114\nG1 X115 Y175\nG1 X45 Y175\nG1 X115 Y175\nG1 X45 Y175\nG1 X115 Y175\nG1 X45 Y175\nG1 X115 Y175\nG1 X45 Y175\nG1 X115 Y175\nG1 X45 Y175\nG1 X115 Y175\nG1 X45 Y175\nG1 Z15\nM400\nM106 S255\nM107"
#define WIPE_SEQUENCE_COMMANDS "G28O\n M117 Hot end heating...\nM104 S170\nM117 Wiping nozzle\nT0\nG1 X115 Y175 Z10 F4000\nM109 R170\nG1 Z1\nM114\nG1 X115 Y175\nG1 X45 Y175\nG1 X115 Y175\nG1 X45 Y175\nG1 X115 Y175\nG1 X45 Y175\nG1 X115 Y175\nG1 X45 Y175\nG1 X115 Y175\nG1 X45 Y175\nG1 X115 Y175\nG1 X45 Y175\nG1 Z15\nM400\nM106 S255\nM109 R160\nM107\nM117 Wipe Complete"
#elif ENABLED(TAZ6)
#define WIPE_SEQUENCE_COMMANDS "M117 Hot end heating...\nM104 S170\nG28 O1\nM117 Wiping nozzle\nT0\nG1 X-19 Y25 Z10 F4000\nM109 R170\nG1 Z1\nM114\nG1 X-19 Y25\nG1 X-19 Y95\nG1 X-19 Y25\nG1 X-19 Y95\nG1 X-19 Y25\nG1 X-19 Y95\nG1 X-19 Y25\nG1 X-19 Y95\nG1 X-19 Y25\nG1 X-19 Y95\nG1 X-19 Y25\nG1 X-19 Y95\nG1 Z15\nM400\nM106 S255\nM107"
#define WIPE_SEQUENCE_COMMANDS "G28O\n M117 Hot end heating...\nM104 S170\nM117 Wiping nozzle\nT0\nG1 X-17 Y25 Z10 F4000\nM109 R170\nG1 Z1\nM114\nG1 Y25\nG1 Y95\nG1 Y25\nG1 Y95\nG1 Y25\nG1 Y95\nG1 Y25\nG1 Y95\nG1 Y25\nG1 Y95\nG1 Y25\nG1 Y95\nG1 Z15\nM400\nM106 S255\nM109 R160\nM107\nM117 Wipe Complete"
#elif ENABLED(Workhorse)
#define WIPE_SEQUENCE_COMMANDS "M117 Hot end heating...\nM104 S170\nG28 O1\nM117 Wiping nozzle\nT0\nG1 X-17 Y25 Z10 F4000\nM109 R170\nG1 Z1\nM114\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 Z15\nM400\nM106 S255\nM107"
#elif ENABLED(TAZPro) && ENABLED(LULZBOT_UNIVERSAL_TOOLHEAD)
#define WIPE_SEQUENCE_COMMANDS "G1 X301 Y25 Z10 F4000\nM109 R170 \nG1 Z-1\nM114\nG1 X301 Y25\nG1 X301 Y95\nG1 X301 Y25\nG1 X301 Y95\nG1 X301 Y25\nG1 X301 Y95\nG1 X301 Y25\nG1 X301 Y95\nG1 X301 Y25\nG1 X301 Y95\nG1 X301 Y25\nG1 X301 Y95\nG1 Z15\nM400\nM106 S255 \nM106 S255\nG0 Y-9.0\nM109 R160\nM107"
#elif ENABLED(TAZPro) && ENABLED(TOOLHEAD_Quiver_DualExtruder)
#define WIPE_SEQUENCE_COMMANDS "G1 X-10.5 Y25 Z10 F4000\nM109 R170 T0\nG1 Z-1\nM114\nG1 X-10.5 Y25\nG1 X-10.5 Y95\nG1 X-10.5 Y25\nG1 X-10.5 Y95\nG1 X-10.5 Y25\nG1 X-10.5 Y95\nG1 X-10.5 Y25\nG1 X-10.5 Y95\nG1 X-10.5 Y25\nG1 X-10.5 Y95\nG1 X-10.5 Y25\nG1 X-10.5 Y95\nG1 Z15\nM400\nM106 S255 \nT0\nM106 S255\nM109 R160 T0\nM107"
#define WIPE_SEQUENCE_COMMANDS "G28O\n M117 Hot end heating...\nM104 S170\nM117 Wiping nozzle\nT0\nG1 X-17 Y25 Z10 F4000\nM109 R170\nG1 Z1\nM114\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 X-17 Y25\nG1 X-17 Y95\nG1 Z15\nM400\nM106 S255\nM109 R160\nM107\nM117 Wipe Complete"
#elif ANY(TAZPro, TAZProXT) && ENABLED(LULZBOT_UNIVERSAL_TOOLHEAD)
#define WIPE_SEQUENCE_COMMANDS "G28O\n M117 Hot end heating...\nM104 S170\nM117 Wiping nozzle\nT0\nG1 X300 Y25 Z10 F4000\nM109 R170 \nG1 Z-1 F4000\nM114\nG1 Y25 F4000\nG1 Y95 F4000\nG1 Y25 F4000\nG1 Y95 F4000\nG1 Y25 F4000\nG1 Y95 F4000\nG1 Y25 F4000\nG1 Y95 F4000\nG1 Y25 F4000\nG1 Y95 F4000\nG1 Y25 F4000\nG1 Y95 F4000\nG1 Z15 F4000\nM400\nM106 S255\nG0 Y-9.0 F4000\nM109 R160\nM107\nM117 Wipe Complete"
#elif ANY(TAZPro, TAZProXT) && ENABLED(TOOLHEAD_Quiver_DualExtruder)
#define WIPE_SEQUENCE_COMMANDS "G28O\n M117 Hot end heating...\nM104 S170\nM117 Wiping nozzle\nT0\nG1 X50 Y25 Z10 F4000\nM109 R170\nG1 Z-1\nM114\nG1 X-10.5 Y25\nG1 X-10.5 Y95\nG1 X-10.5 Y25\nG1 X-10.5 Y95\nG1 X-10.5 Y25\nG1 X-10.5 Y95\nG1 X-10.5 Y25\nG1 X-10.5 Y95\nG1 X-10.5 Y25\nG1 X-10.5 Y95\nG1 X-10.5 Y25\nG1 X-10.5 Y95\nG1 Z15\nM400\nM106 S255 \nT0\nM106 S255\nM109 R160 T0\nM107\nM117 Wipe Complete"
#endif
#endif
/**

View File

@ -2632,7 +2632,7 @@
#define INTERPOLATE true
#if AXIS_IS_TMC(X)
#define X_CURRENT 950 // (mA) RMS current. Multiply by 1.414 for peak current.
#define X_CURRENT 975 // (mA) RMS current. Multiply by 1.414 for peak current.
#define X_CURRENT_HOME X_CURRENT // (mA) RMS current for sensorless homing
#define X_MICROSTEPS 16 // 0..256
#define X_RSENSE 0.12
@ -2650,7 +2650,7 @@
#endif
#if AXIS_IS_TMC(Y)
#define Y_CURRENT 950
#define Y_CURRENT 975
#define Y_CURRENT_HOME Y_CURRENT
#define Y_MICROSTEPS 16
#define Y_RSENSE 0.12
@ -3847,30 +3847,30 @@
#define MAIN_MENU_ITEM_9_GCODE "M92E409\nM301" DEFAULT_PID "\nM906E" E_CURRENT_Aero "\nM500\nM117 H175|0.50mm|NKL-PL CU"
#else
#define MAIN_MENU_ITEM_3_DESC "M175v2|0.50mm|CRB CU"
#define MAIN_MENU_ITEM_3_GCODE "M92E415\nM301P24.54I2.52D61.75\nM907E" E_CURRENT_BMG "\nM500\nM117 M175v2|0.50mm|CRB CU"
#define MAIN_MENU_ITEM_3_GCODE "M92E415\nM206Y0\nM301P24.54I2.52D61.75\nM907E" E_CURRENT_BMG "\nM500\nM117 M175v2|0.50mm|CRB CU"
#define MAIN_MENU_ITEM_4_DESC "SL|0.25mm|NKL-PL CU"
#define MAIN_MENU_ITEM_4_GCODE "M92E420\nM301" DEFAULT_PID "\nM907E" E_CURRENT_Aero "\nM500\nM117 SL|0.25mm|NKL-PL CU"
#define MAIN_MENU_ITEM_4_GCODE "M92E420\nM206Y0\nM301" DEFAULT_PID "\nM907E" E_CURRENT_Aero "\nM500\nM117 SL|0.25mm|NKL-PL CU"
#define MAIN_MENU_ITEM_5_DESC "SE|0.50mm|NKL-PL CU"
#define MAIN_MENU_ITEM_5_GCODE "M92E420\nM301" DEFAULT_PID "\nM907E" E_CURRENT_Aero "\nM500\nM117 SE|0.50mm|NKL-PL CU"
#define MAIN_MENU_ITEM_5_GCODE "M92E420\nM206Y0\nM301" DEFAULT_PID "\nM907E" E_CURRENT_Aero "\nM500\nM117 SE|0.50mm|NKL-PL CU"
#define MAIN_MENU_ITEM_6_DESC "HE|0.50mm|HRD STEEL"
#define MAIN_MENU_ITEM_6_GCODE "M92E420\nM301" DEFAULT_PID "\nM907E" E_CURRENT_Aero "\nM500\nM117 HE|0.50mm|HRD STEEL"
#define MAIN_MENU_ITEM_6_GCODE "M92E420\nM206Y0\nM301" DEFAULT_PID "\nM907E" E_CURRENT_Aero "\nM500\nM117 HE|0.50mm|HRD STEEL"
#define MAIN_MENU_ITEM_7_DESC "HS|0.80mm|HRD STEEL"
#define MAIN_MENU_ITEM_7_GCODE "M92E420\nM301" DEFAULT_PID "\nM907E" E_CURRENT_Aero "\nM500\nM117 HS|0.80mm|HRD STEEL"
#define MAIN_MENU_ITEM_7_GCODE "M92E420\nM206Y0\nM301" DEFAULT_PID "\nM907E" E_CURRENT_Aero "\nM500\nM117 HS|0.80mm|HRD STEEL"
#define MAIN_MENU_ITEM_8_DESC "HS+|1.20mm|HRD STEEL"
#define MAIN_MENU_ITEM_8_GCODE "M92E420\nM301" DEFAULT_PID "\nM907E" E_CURRENT_Aero "\nM500\nM117 HS+|1.20mm|HRD STEEL"
#define MAIN_MENU_ITEM_8_GCODE "M92E420\nM206Y0\nM301" DEFAULT_PID "\nM907E" E_CURRENT_Aero "\nM500\nM117 HS+|1.20mm|HRD STEEL"
#define MAIN_MENU_ITEM_9_DESC "H175|0.50mm|NKL-PL CU"
#define MAIN_MENU_ITEM_9_GCODE "M92E409\nM301" DEFAULT_PID "\nM906E" E_CURRENT_Aero "\nM500\nM117 H175|0.50mm|NKL-PL CU"
#define MAIN_MENU_ITEM_9_GCODE "M92E409\nM206Y0\nM301" DEFAULT_PID "\nM906E" E_CURRENT_Aero "\nM500\nM117 H175|0.50mm|NKL-PL CU"
#endif
#if defined(TAZ6)
#define MAIN_MENU_ITEM_1_DESC "Standard|0.5mm"
#define MAIN_MENU_ITEM_1_GCODE "M92E814\nM206X0Y5\nM301" DEFAULT_PID "\nM907E" E_CURRENT_Std "\nM500\nM117 Standard|0.5mm"
#define MAIN_MENU_ITEM_1_GCODE "M92E814\nM206Y5\nM301" DEFAULT_PID "\nM907E" E_CURRENT_Std "\nM500\nM117 Standard|0.5mm"
#endif
#endif

View File

@ -106,7 +106,7 @@ bool MainMenu::onTouchEnd(uint8_t tag) {
case 1: SaveSettingsDialogBox::promptToSaveSettings(); break;
case 2: SpinnerDialogBox::enqueueAndWait_P(F("G28")); break;
#if ENABLED(NOZZLE_CLEAN_FEATURE)
case 3: injectCommands_P(PSTR("G12")); GOTO_SCREEN(StatusScreen); break;
case 3: injectCommands_P(PSTR("G28O\nG12\nM77")); GOTO_SCREEN(StatusScreen); break;
#endif
case 4: GOTO_SCREEN(MoveAxisScreen); break;
case 5: injectCommands_P(PSTR("M84")); break;

View File

@ -159,7 +159,7 @@ namespace Language_en {
PROGMEM Language_Str MSG_M48_DEVIATION = _UxGT("Deviation");
PROGMEM Language_Str MSG_IDEX_MENU = _UxGT("IDEX Mode");
PROGMEM Language_Str MSG_OFFSETS_MENU = _UxGT("Tool Offsets");
PROGMEM Language_Str MSG_IDEX_MODE_AUTOPARK = _UxGT("Auto-Park");
PROGMEM Language_Str MSG_IDEX_MODE_AUTOPARK = _UxGT("Park Nozzle");
PROGMEM Language_Str MSG_IDEX_MODE_DUPLICATE = _UxGT("Duplication");
PROGMEM Language_Str MSG_IDEX_MODE_MIRRORED_COPY = _UxGT("Mirrored Copy");
PROGMEM Language_Str MSG_IDEX_MODE_FULL_CTRL = _UxGT("Full Control");

View File

@ -364,6 +364,13 @@ void menu_motion() {
#endif
#endif
//
// Park Nozzle
//
#if ENABLED(PARK_NOZZLE_MENU_OPTION)
GCODES_ITEM(MSG_IDEX_MODE_AUTOPARK, PSTR("G28 O\nG27"));
#endif
//
// Auto-calibration
//
@ -400,7 +407,7 @@ void menu_motion() {
#elif HAS_LEVELING && DISABLED(SLIM_LCD_MENUS)
#if DISABLED(PROBE_MANUALLY)
GCODES_ITEM(MSG_LEVEL_BED, PSTR("G29N"));
GCODES_ITEM(MSG_LEVEL_BED, PSTR("G28O\nG29"));
#endif
if (all_axes_homed() && leveling_is_valid()) {