diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 1e8dee0cc..da3753f6f 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -515,7 +515,9 @@ * following movement settings. If fewer factors are given than the * total number of extruders, the last value applies to the rest. */ -//#define DISTINCT_E_FACTORS +#if defined(LULZBOT_DISTINCT_E_FACTORS) +#define DISTINCT_E_FACTORS LULZBOT_DISTINCT_E_FACTORS +#endif /** * Default Axis Steps Per Unit (steps/mm) diff --git a/Marlin/Configuration_LulzBot.h b/Marlin/Configuration_LulzBot.h index b724684a4..9371b6e98 100644 --- a/Marlin/Configuration_LulzBot.h +++ b/Marlin/Configuration_LulzBot.h @@ -336,6 +336,9 @@ // In the experimental Gladiola_GLCD, the encoder direction is reversed. #define LULZBOT_REVERSE_ENCODER_DIRECTION #endif + // Confusingly, Marlin shows three separate e-step settings: the active nozzle, nozzle1, nozzle2. + // We hide the first since it is redundant. + #define LULZBOT_HIDE_E_STEPS_FOR_ACTIVE_NOZZLE #endif /*********************************************** COMMON TOOLHEADS PARAMETERS *****************************/ @@ -471,6 +474,7 @@ #undef LULZBOT_WIPE_Y2 #define LULZBOT_WIPE_Y2 73 #define LULZBOT_X_MAX_ENDSTOP_INVERTING true + #define LULZBOT_DISTINCT_E_FACTORS #endif /* TOOLHEAD_Longfin_FlexyDually */ @@ -617,13 +621,11 @@ #endif // default steps per unit for LulzBot TAZ. -// LULZBOT_ESTEPS_PER_EXTRUDER is required for the tuning of FlexyDually -// but currently is not implemented in Marlin 1.1.4. -#if LULZBOT_EXTRUDERS == 1 || not defined(LULZBOT_ESTEPS_PER_EXTRUDER) - #define LULZBOT_DEFAULT_AXIS_STEPS_PER_UNIT {LULZBOT_XY_STEPS,LULZBOT_XY_STEPS,LULZBOT_Z_STEPS,LULZBOT_E_STEPS} -#elif LULZBOT_EXTRUDERS == 2 +#if defined(LULZBOT_DISTINCT_E_FACTORS) && LULZBOT_EXTRUDERS == 2 #define LULZBOT_DEFAULT_AXIS_STEPS_PER_UNIT {LULZBOT_XY_STEPS,LULZBOT_XY_STEPS,LULZBOT_Z_STEPS,LULZBOT_E_STEPS,LULZBOT_E_STEPS} +#else + #define LULZBOT_DEFAULT_AXIS_STEPS_PER_UNIT {LULZBOT_XY_STEPS,LULZBOT_XY_STEPS,LULZBOT_Z_STEPS,LULZBOT_E_STEPS} #endif // Gralco's customized Z Offset overlay (also requires dogm_bitmaps_Lulzbot.h) diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp index 399654a76..d501e7c36 100644 --- a/Marlin/ultralcd.cpp +++ b/Marlin/ultralcd.cpp @@ -3248,7 +3248,9 @@ void kill_screen(const char* lcd_msg) { MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_ZSTEPS, &planner.axis_steps_per_mm[Z_AXIS], 5, 9999, _planner_refresh_positioning); #if ENABLED(DISTINCT_E_FACTORS) + #if not defined(LULZBOT_HIDE_E_STEPS_FOR_ACTIVE_NOZZLE) MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_ESTEPS, &planner.axis_steps_per_mm[E_AXIS + active_extruder], 5, 9999, _planner_refresh_positioning); + #endif MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E1STEPS, &planner.axis_steps_per_mm[E_AXIS], 5, 9999, _planner_refresh_e0_positioning); MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E2STEPS, &planner.axis_steps_per_mm[E_AXIS + 1], 5, 9999, _planner_refresh_e1_positioning); #if E_STEPPERS > 2 diff --git a/README_LulzBot.md b/README_LulzBot.md index e6daca2db..62634139e 100644 --- a/README_LulzBot.md +++ b/README_LulzBot.md @@ -15,5 +15,4 @@ To select what firmware to build, modify lines 6 and 7 of "Configuration_LulzBot # Known Issues: 1. The Makefile does not work. Building must be done via the Arduino IDE (internal builds are being done with 1.8.3) -2. There is no way to tune the FlexyDually properly right now, as Marlin 1.1.4 does not support separate ESTEPs per extruder. -3. Printer needs to be power cycled to clear "clean nozzle" state. \ No newline at end of file +2. Printer needs to be power cycled to clear "clean nozzle" state. \ No newline at end of file