Welcome! Log In Create A New Profile

Advanced

Marlin - two extruder setup

Posted by Arnold 
Marlin - two extruder setup
May 26, 2019 08:44AM
Hi guys,
trying to setup marlin for two extruders. On my LCD after setting 2 extruders are:

EXTRUDER
EXTRUDER 1
EXTRUDER 2

If I choose move axis for example with EXTRUDER 1 to for example +2,
this number is shared also on EXTRUDER and EXTRUDER 2.

and now question, what is wrong ?





//=============================================================================
//============================== Movement Settings ============================
//=============================================================================
// @section motion

/**
* Default Settings
*
* These settings can be reset by M502
*
* Note that if EEPROM is enabled, saved values will override these.
*/

/**
* With this option each E stepper can have its own factors for the
* 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

/**
* Default Axis Steps Per Unit (steps/mm)
* Override with M92
* X, Y, Z, E0 [, E1[, E2[, E3[, E4]]]]
*/
#define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 800, 397.5, 397.5, }

/**
* Default Max Feed Rate (mm/s)
* Override with M203
* X, Y, Z, E0 [, E1[, E2[, E3[, E4]]]]
*/
#define DEFAULT_MAX_FEEDRATE { 300, 300, 5, 100, 100 }

/**
* Default Max Acceleration (change/s) change = mm/s
* (Maximum start speed for accelerated moves)
* Override with M201
* X, Y, Z, E0 [, E1[, E2[, E3[, E4]]]]
*/
#define DEFAULT_MAX_ACCELERATION { 3000, 3000, 100, 10000, 10000 }

/**
* Default Acceleration (change/s) change = mm/s
* Override with M204
*
* M204 P Acceleration
* M204 R Retract Acceleration
* M204 T Travel Acceleration
*/
#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E acceleration for printing moves
#define DEFAULT_RETRACT_ACCELERATION 3000 // E acceleration for retracts
#define DEFAULT_TRAVEL_ACCELERATION 3000 // X, Y, Z acceleration for travel (non printing) moves

/**
* Default Jerk (mm/s)
* Override with M205 X Y Z E
*
* "Jerk" specifies the minimum speed change that requires acceleration.
* When changing speed and direction, if the difference is less than the
* value set here, it may happen instantaneously.
*/
#define DEFAULT_XJERK 20.0
#define DEFAULT_YJERK 20.0
#define DEFAULT_ZJERK 0.4
#define DEFAULT_EJERK 5.0
Re: Marlin - two extruder setup
May 26, 2019 09:49AM
This is the issue I would suspect ----------------------------------------------------|
                                                                                                                   |
                                                                                                                   \/
#define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 800, 397.5, 397.5, }

the last , should not be there

Edited 2 time(s). Last edit at 05/26/2019 09:50AM by Dust.
Re: Marlin - two extruder setup
May 26, 2019 11:23AM
Tried to delete it, but still same, no difference.
Re: Marlin - two extruder setup
May 26, 2019 11:45AM
note: I use

BOARD_RAMPS_14_EEB 44 // RAMPS 1.4 (Power outputs: Hotend0, Hotend1, Bed)
Re: Marlin - two extruder setup
May 26, 2019 12:00PM
What does the line in configuration.h #define EXTRUDERS say?
Re: Marlin - two extruder setup
May 26, 2019 12:03PM
// This defines the number of extruders
// :[1, 2, 3, 4, 5]
#define EXTRUDERS 2
Re: Marlin - two extruder setup
May 26, 2019 12:19PM
What sort of LCD are you using? so I can see if I get the same thing...
Re: Marlin - two extruder setup
May 26, 2019 12:20PM
RepRapdiscount smart controller 2004 LCD
Re: Marlin - two extruder setup
May 27, 2019 03:35AM
I have replicated this... seems to be a bug...

Extruder is always in the menu, even when it should be replaced with Extruder1

Edited 1 time(s). Last edit at 05/27/2019 04:03AM by Dust.
Re: Marlin - two extruder setup
May 27, 2019 04:05AM
Can you read a patch diff file?

Give this a try, fixes the menus, but I don't have actual steppers attached to test fully.


+++ ultralcd.cpp	2019-05-27 19:53:43.636197612 +1200
@@ -3171,8 +3171,9 @@
   void lcd_move_get_x_amount()        { _lcd_move_distance_menu(X_AXIS, lcd_move_x); }
   void lcd_move_get_y_amount()        { _lcd_move_distance_menu(Y_AXIS, lcd_move_y); }
   void lcd_move_get_z_amount()        { _lcd_move_distance_menu(Z_AXIS, lcd_move_z); }
-  void lcd_move_get_e_amount()        { _lcd_move_distance_menu(E_AXIS, lcd_move_e); }
-  #if E_MANUAL > 1
+  #if E_MANUAL == 1	
+    void lcd_move_get_e_amount()        { _lcd_move_distance_menu(E_AXIS, lcd_move_e); }
+  #else if E_MANUAL > 1
     void lcd_move_get_e0_amount()     { _lcd_move_distance_menu(E_AXIS, lcd_move_e0); }
     void lcd_move_get_e1_amount()     { _lcd_move_distance_menu(E_AXIS, lcd_move_e1); }
     #if E_MANUAL > 2
@@ -3277,8 +3278,9 @@
     #else
 
       // Independent extruders with one E-stepper per hotend
-      MENU_ITEM(submenu, MSG_MOVE_E, lcd_move_get_e_amount);
-      #if E_MANUAL > 1
+      #if E_MANUAL == 1
+        MENU_ITEM(submenu, MSG_MOVE_E, lcd_move_get_e_amount);
+      #else if E_MANUAL > 1
         MENU_ITEM(submenu, MSG_MOVE_E MSG_MOVE_E1, lcd_move_get_e0_amount);
         MENU_ITEM(submenu, MSG_MOVE_E MSG_MOVE_E2, lcd_move_get_e1_amount);
         #if E_MANUAL > 2

If you can't read this it basically says edit ultralcd.cpp
Find the area it is talking about
lines starting with a single - means delete this line
lines starting with a single + means add this line
There are two sections to find and edit.

Edited 2 time(s). Last edit at 05/27/2019 04:13AM by Dust.
Re: Marlin - two extruder setup
May 27, 2019 06:03AM
I can read it, I will try it at this evening if it helps.
I will post result then.


That is strange bug, I thought a lot of people must have this setup...

thanks
Re: Marlin - two extruder setup
May 28, 2019 12:55AM
I mean I can read this file ultralcd.cpp smiling smiley, no code understanding.

But anyway:

Deleted - Lines
Added + Lines

Result is that there are really only EXTRUDER 1 and EXTRUDER 2.

But when I move with one extruder , the value is still shared with second one.
I mean if I turn with EXTRUDER 1 for example 2mm, EXTRUDER 2 has shared
2mm, it should be 0 ? Or not ? (Moving is independent, only value is shared)
Sorry, only registered users may post in this forum.

Click here to login