Help setting up IDEX dual printing
-
Hello everyone.
I am new to the world of Duet and RRF athough i've been onto 3d printing for a few years on and off...
I have recently designed and built a 3d printer with HaqXY kinematics (https://hackaday.io/project/19543-haq-xy).I have everything pretty much set up and configured. Now I am trying to configure the machine to print in duplication mode (i.e. printing two copies of the same object, each one with one print head). I have followed the guide at https://duet3d.dozuki.com/Wiki/ConfiguringMultipleIndependentXcarriagesCartesian#Section_Creating_a_tool_that_uses_more_than_one_carriage_to_print_multiple_copies_of_an_object but something weird is happening when I change to the tool (T2) that uses both print heads.
My X and U axes limits are [-76.6, 305] and [-5, 368.7] respectively (as configured per M208 in config.g). My bed is 300x300. The homing macro moves the X and U carriages to positions -75 and 365 respectively after homing. Let's call this the 'parking' state. No tool is selected.
At this moment, if I select tool 2 (T2), carriage X moves right and U left to approximately the center of their respective half of the bed. In DWC reported positions are X=U=145.First question: Why are the carriages moving? t2pre.g and t2post.g have no code at all. Also, why this 145? I think that it might be the middle point of the two tool positions before beginning tool change ((-75+365)/2=220), but why?
Now if I jog X axis, both carriages move together correctly. If I send G0 X0 gcode both carriages move equally to the left and stop when the X carriage reaches its parking position. Reported positions: X=0 U=145.
Second question: why is the X=0 position here and not at the left edge of the bed?
Finally, if I unselect T2 (T-1) the following happens: Each carriage moves to their respective homing positions (X=-76.6 and U=368.7).
Third question: Why are the carriages moving to this position if t2free.g has this line in it: "G1 X-75 U365 F6000"This is the tool configuration in config.g:
M563 P2 D0:1 H0:1 X0:3 F0:1 S"Copy" ; tool 2 uses both extruders and hot end heaters, maps X to both X and U, and uses both print cooling fans G10 P2 X75 Y0 U-75 Z0 ; set tool 0 axis offsets G10 P2 R100 S200 ; set initial tool 0 active and standby temperatures to 0C M567 P2 E1:1 ; set mix ratio 100% on both extruders
This is tfree2.g:
G91 ; relative axis movement G1 Z3 F500 ; up 3mm G90 ; absolute axis movement G1 X-75 U365 F6000 ; park the X and U carriages
Also, my configuration files are available here: https://drive.google.com/file/d/1SL1spnpqUtGiZOQqQyA_clke441v4Es_/view?usp=sharing
(haven't been able to upload directly here)I feel like there are a bunch of things not going the way they are expected which leads me to think that I have some higher level problem in my config files.
Thank you very much.
-
@kru96 when selecting T2 you are selecting ditto tool (t0 is left probably, t1 is right and T2 is both...)
They move each on aproximate center of their bedhalves because in Tool definition you are setting the offsets and that positions them accordingly.The bed center is in the middle of the bed for ditto/mirror mode to function.
-
@kru96 said in Help setting up IDEX dual printing:
At this moment, if I select tool 2 (T2), carriage X moves right and U left to approximately the center of their respective half of the bed. In DWC reported positions are X=U=145.
First question: Why are the carriages moving? t2pre.g and t2post.g have no code at all. Also, why this 145? I think that it might be the middle point of the two tool positions before beginning tool change ((-75+365)/2=220), but why?
This, to me, is expected behavior.
Now if I jog X axis, both carriages move together correctly. If I send G0 X0 gcode both carriages move equally to the left and stop when the X carriage reaches its parking position. Reported positions: X=0 U=145.
Second question: why is the X=0 position here and not at the left edge of the bed?
X=0 will be defined here, as this is derived from your T2 offsets:
G10 P2 X75 Y0 U-75 Z0
This bit can be tough to wrap ones head about... I have to stop and think each time I revisit mirror/duplication mode.
Finally, if I unselect T2 (T-1) the following happens: Each carriage moves to their respective homing positions (X=-76.6 and U=368.7).
Third question: Why are the carriages moving to this position if t2free.g has this line in it: "G1 X-75 U365 F6000"Try G1 H2 X-75 U365 F6000 (Individual motor mode) - this is the only part that isn't acting the way it should. I could be wrong here though.
-
@maracmb said in Help setting up IDEX dual printing:
The bed center is in the middle of the bed for ditto/mirror mode to function.
Is this consequence of my config files or is it because RRF says so?
@sebkritikel Thanks for your reply. I have just tried this and when releasing tool 2, the X and U carriages crash into its respective end. Reported positions: X=-225,U=515
One thing I have tried and has improved behavior is defining T2 offsets as:
G10 P2 X0 Y0 U-150 Z0
With this modification, after selecting T2, each carriage moves to the center of its respective half of the bed and reported positions are X=U=71.8.
If i send G0 X0 Y0, X carriage moves to the bottom left of the bed and the U carriage to the bottom center (approximately). To me, this is expected behavior.
If I unselect T2, Carriadge X moves to parking position (reported X=-75) and U to homing position (U=368.7). There's the same problem as the other day but just with the U carriage.
The thing is that I really don't get my head around this Tool Offset thing. For example here (https://duet3d.dozuki.com/Wiki/Gcode#Section_T_Select_Tool), the tool changing sequence is explained. Step 6 is Apply tool offset. What does this mean exactly? I haven't been able to find anywhere where this is explained better.
-
@sebkritikel said in Help setting up IDEX dual printing:
X=0 will be defined here, as this is derived from your T2 offsets:
Also, what do you mean by derived from T2 offsets?
Thanks.
-
@kru96 said in Help setting up IDEX dual printing:
@maracmb said in Help setting up IDEX dual printing:
The bed center is in the middle of the bed for ditto/mirror mode to function.
Is this consequence of my config files or is it because RRF says so?
In my eyes this is a little controversial (and because we can write our config.g in so many ways, it truly depends on how you (we) want to set it up). Maybe more on that later
@sebkritikel Thanks for your reply. I have just tried this and when releasing tool 2, the X and U carriages crash into its respective end. Reported positions: X=-225,U=515
One thing I have tried and has improved behavior is defining T2 offsets as:
G10 P2 X0 Y0 U-150 Z0
With this modification, after selecting T2, each carriage moves to the center of its respective half of the bed and reported positions are X=U=71.8.
If i send G0 X0 Y0, X carriage moves to the bottom left of the bed and the U carriage to the bottom center (approximately). To me, this is expected behavior.
If I unselect T2, Carriadge X moves to parking position (reported X=-75) and U to homing position (U=368.7). There's the same problem as the other day but just with the U carriage.
This is actually how I ended up setting my T2 G10 after some goofing off with some slicer settings (rater than putting an offset on both X and U). Why I selected -263.5 - somewhat arbitrary and not quite correct, but close enough.
G10 P2 X0 Y0 U-263.5 S0 R0
At the risk of further confusing things, I'll link a post on why I did it that way: https://forum.duet3d.com/topic/13696/new-large-format-idex-printer-project/22?_=1604856833941
In essence, it echos your thoughts on what should be expected (and perhaps intuitive) when selecting T2.
Now, as far as when you unselect T2, do you still have it as "G1 X-75 U365 F6000" OR "G1 H2 X-75 U365 F6000" ? I tested my tfree2.g by having it go a few mm off the homing position, and it worked as expect (i.e. it went to U365 and NOT U368.7).
The thing is that I really don't get my head around this Tool Offset thing. For example here (https://duet3d.dozuki.com/Wiki/Gcode#Section_T_Select_Tool), the tool changing sequence is explained. Step 6 is Apply tool offset. What does this mean exactly? I haven't been able to find anywhere where this is explained better.
Step 6 is exactly what you see when you select T2. If you have a negative offset, your axis will move in the positive direction (subtract a negative number), if you have a positive offset, your axis will move in the negative direction (subtract a positive number). In my case, with X0, U-263.5, when I select T2, the U axis moves to "current X position minus the U offset" meaning "current X position minus -263.5", so when X is at -260 (x minimum on my machine), U is at -260 - -263.5= -260+263.5=3.5
Now, what if I had my G10 for T2 like this?
G10 P2 X131.75 Y0 U-131.75 S0 R0
If I were to command G1 X0 in my console after selecting T2, where would the nozzles actually be?
For X axis: 0-131.75 = -131.75
For U axis: 0- -131.75= 131.75The "X0" reference is directly between the two nozzles.
Now, why have offsets in G10 at all? Like with IDEX, there may be situations where you have your nozzle/tool carriage, but it won't align exactly perfectly to your reference point due to machine size, your axis minima or maxima, etc. For T1 for example, you may need some small corrections to align it relative to T0 (for multiple color prints with T0, or support material, etc).
-
Thank you for your in-depth answer. Sorry I haven't replied earlier. I haven't been able to work on this for a few days.
Regarding this question you asked me:
Now, as far as when you unselect T2, do you still have it as "G1 X-75 U365 F6000" OR "G1 H2 X-75 U365 F6000" ? I tested my tfree2.g by having it go a few mm off the homing position, and it worked as expect (i.e. it went to U365 and NOT U368.7).
At the time you asked the question, my tfree2.g was like this:
G91 ; relative axis movement G1 Z3 F500 ; up 3mm G90 ; absolute axis movement G1 X-75 U365 F6000 ; park the X and U carriages
However, I have just tried playing around with the U value of the G1 command and found that with U215, after unselecting T2, the U carriage moves to its parking position and reported position is U=365. i.e. works correctly to me.
My possible explanation for this is that this command in tfree2.g is executed still with the offsets applied. As a reminder, my G10 command for T2 is: G10 P2 X0 Y0 U-150 Z0. So, 215+150= 365.
Also, I haved tried adding the H2 parameter on tfree2.g but the carriadges kept crashing onto the ends. I guess that by playing around a little I would have found a value that also ended up with the carriadges parked in the correct position, but went the other way instead.
I think I am going to leave it like this for the time being.
Also, I have another question. In my tfree2.g, Z is raised 3mm. The machine does so correctly. However, after finishing releasing T2, it moves the Z back down. Is this something done automatically by RRF?
Thank you once again.