Fix switching extruder

`DONT_SWITCH` got lost along the way. Replace it with `DO_SWITCH_EXTRUDER` and adjust the code.
2.0.x
GMagician 7 years ago committed by Scott Lahteine
parent 8f18854d4d
commit 3c76bda2d8

@ -146,7 +146,7 @@
#include "feature/fanmux.h" #include "feature/fanmux.h"
#endif #endif
#if (ENABLED(SWITCHING_EXTRUDER) && !DONT_SWITCH) || ENABLED(SWITCHING_NOZZLE) || ENABLED(PARKING_EXTRUDER) #if DO_SWITCH_EXTRUDER || ENABLED(SWITCHING_NOZZLE) || ENABLED(PARKING_EXTRUDER)
#include "module/tool_change.h" #include "module/tool_change.h"
#endif #endif
@ -864,7 +864,7 @@ void setup() {
setup_endstop_interrupts(); setup_endstop_interrupts();
#endif #endif
#if ENABLED(SWITCHING_EXTRUDER) && !DONT_SWITCH #if DO_SWITCH_EXTRUDER
move_extruder_servo(0); // Initialize extruder servo move_extruder_servo(0); // Initialize extruder servo
#endif #endif

@ -37,7 +37,7 @@
* T<tool> * T<tool>
* X<xoffset> * X<xoffset>
* Y<yoffset> * Y<yoffset>
* Z<zoffset> - Available with DUAL_X_CARRIAGE and SWITCHING_NOZZLE * Z<zoffset> - Available with DUAL_X_CARRIAGE, SWITCHING_NOZZLE and PARKING_EXTRUDER
*/ */
void GcodeSuite::M218() { void GcodeSuite::M218() {
if (get_target_extruder_from_command() || target_extruder == 0) return; if (get_target_extruder_from_command() || target_extruder == 0) return;

@ -445,6 +445,8 @@
#define E_MANUAL EXTRUDERS #define E_MANUAL EXTRUDERS
#endif #endif
#define DO_SWITCH_EXTRUDER (ENABLED(SWITCHING_EXTRUDER) && (DISABLED(SWITCHING_NOZZLE) || SWITCHING_EXTRUDER_SERVO_NR != SWITCHING_NOZZLE_SERVO_NR))
/** /**
* DISTINCT_E_FACTORS affects how some E factors are accessed * DISTINCT_E_FACTORS affects how some E factors are accessed
*/ */

@ -3270,7 +3270,7 @@ void lcd_quick_feedback(const bool clear_buttons) {
else else
MENU_ITEM(gcode, MSG_AUTO_HOME, PSTR("G28")); MENU_ITEM(gcode, MSG_AUTO_HOME, PSTR("G28"));
#if ENABLED(SWITCHING_EXTRUDER) #if ENABLED(SWITCHING_EXTRUDER) || ENABLED(SWITCHING_NOZZLE)
#if EXTRUDERS == 4 #if EXTRUDERS == 4
switch (active_extruder) { switch (active_extruder) {

@ -2126,7 +2126,7 @@ void MarlinSettings::reset(PORTARG_SOLO) {
SERIAL_ECHOPAIR_P(port, " M218 T", (int)e); SERIAL_ECHOPAIR_P(port, " M218 T", (int)e);
SERIAL_ECHOPAIR_P(port, " X", LINEAR_UNIT(hotend_offset[X_AXIS][e])); SERIAL_ECHOPAIR_P(port, " X", LINEAR_UNIT(hotend_offset[X_AXIS][e]));
SERIAL_ECHOPAIR_P(port, " Y", LINEAR_UNIT(hotend_offset[Y_AXIS][e])); SERIAL_ECHOPAIR_P(port, " Y", LINEAR_UNIT(hotend_offset[Y_AXIS][e]));
#if ENABLED(DUAL_X_CARRIAGE) || ENABLED(SWITCHING_NOZZLE) ||ENABLED(PARKING_EXTRUDER) #if ENABLED(DUAL_X_CARRIAGE) || ENABLED(SWITCHING_NOZZLE) || ENABLED(PARKING_EXTRUDER)
SERIAL_ECHOPAIR_P(port, " Z", LINEAR_UNIT(hotend_offset[Z_AXIS][e])); SERIAL_ECHOPAIR_P(port, " Z", LINEAR_UNIT(hotend_offset[Z_AXIS][e]));
#endif #endif
SERIAL_EOL_P(port); SERIAL_EOL_P(port);

@ -57,7 +57,7 @@
#include "../feature/fanmux.h" #include "../feature/fanmux.h"
#endif #endif
#if ENABLED(SWITCHING_EXTRUDER) #if DO_SWITCH_EXTRUDER
#if EXTRUDERS > 3 #if EXTRUDERS > 3
#define REQ_ANGLES 4 #define REQ_ANGLES 4
@ -347,8 +347,6 @@ inline void invalid_extruder_error(const uint8_t e) {
#endif // DUAL_X_CARRIAGE #endif // DUAL_X_CARRIAGE
#define DO_SWITCH_EXTRUDER (SWITCHING_EXTRUDER_SERVO_NR != SWITCHING_NOZZLE_SERVO_NR)
/** /**
* Perform a tool-change, which may result in moving the * Perform a tool-change, which may result in moving the
* previous tool out of the way and the new tool into place. * previous tool out of the way and the new tool into place.

@ -25,7 +25,7 @@
#include "../inc/MarlinConfig.h" #include "../inc/MarlinConfig.h"
#if ENABLED(SWITCHING_EXTRUDER) #if DO_SWITCH_EXTRUDER
void move_extruder_servo(const uint8_t e); void move_extruder_servo(const uint8_t e);
#endif #endif

Loading…
Cancel
Save