|
@@ -110,7 +110,7 @@ long position[NUM_AXIS]; // Rescaled from extern when axis_steps_p
|
110
|
110
|
static float previous_speed[NUM_AXIS]; // Speed of previous path line segment
|
111
|
111
|
static float previous_nominal_speed; // Nominal speed of previous path line segment
|
112
|
112
|
|
113
|
|
-unsigned char g_uc_extruder_last_move[4] = {0,0,0,0};
|
|
113
|
+uint8_t g_uc_extruder_last_move[EXTRUDERS] = { 0 };
|
114
|
114
|
|
115
|
115
|
#ifdef XY_FREQUENCY_LIMIT
|
116
|
116
|
// Used for the frequency limit
|
|
@@ -125,6 +125,10 @@ unsigned char g_uc_extruder_last_move[4] = {0,0,0,0};
|
125
|
125
|
static char meas_sample; //temporary variable to hold filament measurement sample
|
126
|
126
|
#endif
|
127
|
127
|
|
|
128
|
+#if ENABLED(DUAL_X_CARRIAGE)
|
|
129
|
+ extern bool extruder_duplication_enabled;
|
|
130
|
+#endif
|
|
131
|
+
|
128
|
132
|
//===========================================================================
|
129
|
133
|
//================================ functions ================================
|
130
|
134
|
//===========================================================================
|
|
@@ -628,6 +632,12 @@ float junction_deviation = 0.1;
|
628
|
632
|
switch(extruder) {
|
629
|
633
|
case 0:
|
630
|
634
|
enable_e0();
|
|
635
|
+ #if ENABLED(DUAL_X_CARRIAGE)
|
|
636
|
+ if (extruder_duplication_enabled) {
|
|
637
|
+ enable_e1();
|
|
638
|
+ g_uc_extruder_last_move[1] = BLOCK_BUFFER_SIZE * 2;
|
|
639
|
+ }
|
|
640
|
+ #endif
|
631
|
641
|
g_uc_extruder_last_move[0] = BLOCK_BUFFER_SIZE * 2;
|
632
|
642
|
#if EXTRUDERS > 1
|
633
|
643
|
if (g_uc_extruder_last_move[1] == 0) disable_e1();
|