• Tags
  • Documentation
  • Order
  • Register
  • Login
Duet3D Logo Duet3D
  • Tags
  • Documentation
  • Order
  • Register
  • Login

Y Adapter filament switching

Scheduled Pinned Locked Moved
General Discussion
11
75
15.9k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • undefined
    dc42 administrators
    last edited by 13 Mar 2017, 14:44

    @kraegar:

    …I put on some e3d titans for the extra torque, and I could lower the temps down to 195c, but hit a new problem... I can't retract above 60mm/s without the stepper stalling out. (I'm running on 12v, perhaps at 24v I could? Don't know)

    If you are using a 0.9deg/step extruder motor then it's quite likely that you need 24V to maintain torque at high speed. See https://duet3d.com/wiki/Choosing_stepper_motors#How_to_work_out_the_power_supply_voltage_you_need.

    Duet WiFi hardware designer and firmware engineer
    Please do not ask me for Duet support via PM or email, use the forum
    http://www.escher3d.com, https://miscsolutions.wordpress.com

    1 Reply Last reply Reply Quote 0
    • undefined
      kraegar
      last edited by 13 Mar 2017, 14:46

      This are 1.8 degree steppers. I knew I'd need 24v for 0.9 degree, but with the titan's 3:1 gearing 60mm/s is about all I can do on them without stalling out, even with the 1.8 degree steppers.

      Co-Creator of the RailcoreII CoreXY printer
      https://www.thingiverse.com/thing:2407174

      1 Reply Last reply Reply Quote 0
      • undefined
        dc42 administrators
        last edited by 13 Mar 2017, 14:51

        Are you using a low current high inductance motor? That would also give reduced torque at high speeds. See the link I posted earlier.

        Duet WiFi hardware designer and firmware engineer
        Please do not ask me for Duet support via PM or email, use the forum
        http://www.escher3d.com, https://miscsolutions.wordpress.com

        1 Reply Last reply Reply Quote 0
        • undefined
          kraegar
          last edited by 13 Mar 2017, 15:05

          This is the stepper I'm using: http://www.automationtechnologiesinc.com/products-page/3d-printer/nema17-stepper-motor-kl17h247-150-4a-for-3d-printer

          Currents:
          M906 X1000 Y1000 Z1000 E1000:1000

          Co-Creator of the RailcoreII CoreXY printer
          https://www.thingiverse.com/thing:2407174

          1 Reply Last reply Reply Quote 0
          • undefined
            dc42 administrators
            last edited by 13 Mar 2017, 15:33

            If you are running it at 1A then at 60mm/sec the back emf due to inductance comes out at 11.8V and the back emf due to rotation comes out at 12.6V. So yes, you do need more voltage if you want to maintain torque. OTOH that motor is overkill, you could use a shorter one with lower inductance and lower rotor inertia. I use 34mm long motors with about 0.22Nm torque on my 3:1 geared extruders.

            Duet WiFi hardware designer and firmware engineer
            Please do not ask me for Duet support via PM or email, use the forum
            http://www.escher3d.com, https://miscsolutions.wordpress.com

            1 Reply Last reply Reply Quote 0
            • undefined
              kraegar
              last edited by 13 Mar 2017, 16:03

              The goal with going to the titan was to gain a little torque - wouldn't I lose some, or come out about even, with a smaller stepper like that?

              Co-Creator of the RailcoreII CoreXY printer
              https://www.thingiverse.com/thing:2407174

              1 Reply Last reply Reply Quote 0
              • undefined
                DjDemonD
                last edited by 13 Mar 2017, 16:38

                I'm using a 20mm pancake stepper with genuine and now a clone titan I am testing, works perfectly for almost everything but it can't extrude PLA faster than 30mm/s (just to unambiguous thats extruder speed not print speed - 30mm of filament per second). I will see if it can retract faster, I didn't test that. Im following this closely, I have a y splitter, but it looks much trickier than I thought it would be.

                Simon. Precision Piezo Z-Probe Technology
                www.precisionpiezo.co.uk
                PT1000 cartridge sensors NOW IN, just attach to your Duet board directly!

                1 Reply Last reply Reply Quote 0
                • undefined
                  kraegar
                  last edited by 13 Mar 2017, 16:56

                  The Y adapter has added a crazy amount of hysteresis, and is doing weird things with backpressure.

                  It works, but it's taking some definite re-tuning of retraction, including pressure advance, to get dialed in.

                  I went through my stepper collection, and I don't have any other small nema17's, just some nema14's. I may get a smaller Nema17 to test with.

                  Co-Creator of the RailcoreII CoreXY printer
                  https://www.thingiverse.com/thing:2407174

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    DjDemonD
                    last edited by 14 Mar 2017, 09:20

                    Do you think the hysteresis is cause by loose fit of the filament through the y-adaptor?

                    Simon. Precision Piezo Z-Probe Technology
                    www.precisionpiezo.co.uk
                    PT1000 cartridge sensors NOW IN, just attach to your Duet board directly!

                    1 Reply Last reply Reply Quote 0
                    • undefined
                      kraegar
                      last edited by 14 Mar 2017, 12:24

                      At the junction in the Y you can see the filament flex. Not really a way around it, I think it's about as constrained as you can make it.

                      I've been having a lot of issues around my retraction points, but now some testing is showing I get nicer results with slicer retracts than FW, despite the same settings. So perhaps not all of it is due to the added hysteresis, some might be good old tuning around the new setup.

                      I'm very close to having my prints back at the quality they were before I put it in, it's just taken some learning on what needed done.

                      Co-Creator of the RailcoreII CoreXY printer
                      https://www.thingiverse.com/thing:2407174

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        Yonkiman
                        last edited by 15 Mar 2017, 13:40

                        Today's the day I try to get this going on my new CoreXY with an E3D Lite6! Kraegar, I really appreciate all the work you've done and info you've provided. Since you're back to slicer retracting, could you share your S3D retraction settings? Better still would be an entire factory image for a working print - that would really help eliminate some of the model and process setup mistakes I'm bound to make (I know I'd still have to fine-tune settings for my system).

                        Regarding getting extra torque from your extruder without switching to 24V…since you're now using a Titan, I think you might be able to gain some torque by reducing the microstepping by a factor of ~4 (from 1/16 to 1/4 for example), with the Titan's gearing keeping your final resolution roughly the same. This is based on reading somewhere that microstepping increases precision at the cost of torque. I'm no expert on this - just a thought.

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          kraegar
                          last edited by 15 Mar 2017, 13:48

                          Well, I'm unhappy with the amount of retraction I'm having to do to combat the stringing. I was very low at it before, under 3mm.

                          http://imgur.com/CyrQmOy

                          I'm still getting some light stringing.

                          I'm starting to move things into the tool change script in S3D, rather than doing it all in firmware. I haven't moved much of it yet, though, but here's the start:

                          http://imgur.com/WpDV9A6

                          The idea being to move everything but the actual switch into the slicer eventually (move to the purge area, etc) rather than having it it tfree/tpost.

                          I'm still not exactly sure why changing to slicer based retraction cleaned up the blobs, that's the opposite of my past experiences. But it's working for now, so who knows. (David, I'd love some insight on the actual mechanics of how FW retraction runs… order of moves, speed of the z-hop, etc)

                          I'll play with microstepping, see if it lets me do a faster retraction without losing torque, that's not a bad idea. I'll probably also try some smaller steppers in between the monsters I have now, and the small ones David mentioned. Can never have too many spare steppers.

                          Co-Creator of the RailcoreII CoreXY printer
                          https://www.thingiverse.com/thing:2407174

                          1 Reply Last reply Reply Quote 0
                          • undefined
                            kraegar
                            last edited by 15 Mar 2017, 15:06

                            Now that the swapping part is working, I wanted to make it all a bit more logical, separating out the filament change itself from the print moves.

                            To do this, I put the following in the s3d tool change script:
                            http://imgur.com/q1xYeJk

                            That's doing a retract, zhop, move to purge zone, unretract & unhop. Then it runs the tool change.

                            Now tfreeX.g is just simply this (this is in both my tfree0.g and tfree1.g in /sys)
                            M83
                            G1 E-20 F1200 ;retract 20mm
                            G1 E20 F3600 ;pack the filament to eliminate the tail
                            G1 E-150 F3600 ; retract 150mm

                            tpost is unchanged (this is in my tpost0g. and tpost1.g in /sys)
                            M83 ;relative extruder moves
                            G1 E142 F3600
                            G1 E3 F1500

                            However, that means if I want to change filaments outside of the script, I need an extra step, so I added a T0.g / T1.g macro (Two macros in the macros page, one for each extruder)
                            M83 ; relative extrusion
                            G1 E-5 F3600 ; Retract 5mm - adjust this to your standard retraction
                            G4 S2 ; pause 2 seconds
                            G1 E4.9 F1200 ; unretract (extrude) 4.9mm
                            T0 ; switch to T0

                            If I want to switch active extruders outside of a print, I need to run those macros, not just send a T0 or T1.

                            Still, the logic makes more sense now, it's broken out where things feel like they "should" be. And it's easier to adjust based on the print or task I'm trying to do.

                            Co-Creator of the RailcoreII CoreXY printer
                            https://www.thingiverse.com/thing:2407174

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              kraegar
                              last edited by 15 Mar 2017, 15:10

                              If I were able to retract at 100mm/s, I'd keep everything the same, except for tfreeX.g would be:

                              G1 E150 F6000

                              No other changes required.

                              Co-Creator of the RailcoreII CoreXY printer
                              https://www.thingiverse.com/thing:2407174

                              1 Reply Last reply Reply Quote 0
                              • undefined
                                Yonkiman
                                last edited by 15 Mar 2017, 16:05

                                Thanks for the continuing updates!

                                I'll probably also try some smaller steppers in between the monsters I have now, and the small ones David mentioned. Can never have too many spare steppers.

                                True…but 24V could come in pretty handy, too. I just ordered one of these http://www.mouser.com/search/ProductDetail.aspx?r=709%2dLRS200%2d24 to replace the noisy 24V supply I've been using. The Duet's drivers are so quiet that I couldn't take the PSU's obnoxious fan noise. I'm using these https://www.aliexpress.com/item/3A-Adjustable-LM2596S-DC-DC-Step-Down-Buck-Power-Supply-Module-Adapter-3-2-40V-to/32594772519.html for all my 12V fans.

                                1 Reply Last reply Reply Quote 0
                                • undefined
                                  Yonkiman
                                  last edited by 15 Mar 2017, 17:24

                                  However, that means if I want to change filaments outside of the script[print], I need an extra step, so I added a T0.g / T1.g macro:
                                  M83 ; relative extrusion
                                  G1 E-5 F3600 ; Retract 5mm - adjust this to your standard retraction
                                  G4 S2 ; pause 2 seconds
                                  G1 E-4.9 F1200 ; unretract 4.9mm
                                  T0 ; switch to T0

                                  I don't understand the purpose of this - the last line switches the tool but the first 3 appear to just move the filament back 0.1mm. Wouldn't you want to retract the filament from the old tool ~100mm, select the new tool, then extrude that filament ~100mm?

                                  I'm probably missing something obvious…

                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    kraegar
                                    last edited by 15 Mar 2017, 18:00

                                    You must retract, pause a bit, unretract. This is the "trick" I found with the v6, to get around needing a "ramming" swap. The goal is to get a clean break on the filament by having as little melted filament in the nozzle as possible, for as short of a time as possible.

                                    The other option would be to ram 5mm of filament out by doing something like:
                                    G1 E5 F1200

                                    Then immediately do a single long (150mm) retraction @ 100mm/s. But that leaves a lot of filament mess, where the above process achieves almost the same thing.

                                    Co-Creator of the RailcoreII CoreXY printer
                                    https://www.thingiverse.com/thing:2407174

                                    1 Reply Last reply Reply Quote 0
                                    • undefined
                                      Yonkiman
                                      last edited by 15 Mar 2017, 18:52

                                      Ah…my problem was thinking that "change filaments" meant switch between extruders, not swap out spools of filament.

                                      So you're saying that before pulling all of the filament out of the extruder/bowden tube, etc., this code [retract, wait, and unretract] makes the filament come out cleaner and with less mess than not doing it. What I still don't get is it seems like after the unretract, the filament is now just minus 0.1mm away from where it started. It seems to me like it would just melt again and leave you basically where you started.

                                      I'm not saying you're wrong or anything - I'm just trying to understand what's happening.

                                      1 Reply Last reply Reply Quote 0
                                      • undefined
                                        kraegar
                                        last edited by 15 Mar 2017, 19:17

                                        Yes, this is to switch two filaments with one hotend (two extruders). The goal is to have the filament look like this:
                                        http://imgur.com/msU4hia

                                        There are a couple ways I've found to accomplish that, depending on what your extruder is capable of. If you just pull the filament back, you get long tails, and it doesn't look like that at all. The tails WILL jam an e3d v6. In quite spectacular fashion (I had to take mine apart to clear one)

                                        The first effort was around ramming / purging. The idea was to push out filament as fast as possible, then yank it back. This generated an awesome break, very clean. But left a ton of filament mess. It was basically:
                                        G1 E5 F1200
                                        G1 E-150 F3600

                                        Simple. But messy, and requires a very fast retract.

                                        Step two, I figured out how to get rid of that purge. The trick was to mimic what it's doing. So you unretract, then PAUSE. 2 seconds or so of pause is enough to actually cool the retracted filament down. Then you push it forward, and pull immediately. Clean break, if you can retract at 100mm/s. So, basically this:
                                        G1 E-3 F3600 <- whatever a "normal" retract is for your setup
                                        G4 S2 <- pause two seconds, to cool the retracted filament
                                        G1 E2.9 F3600 <- whatever a "normal" unretract is for your setup
                                        G1 E-150 F6000 <- yank the filament back

                                        Then I hit a new issue, I put on titans (for more torque, so I could lower my temps some). But 100mm/s retractions don't work, so I played around (lots of jams) until I could generate a clean-ish break. This involves "packing" the filament.

                                        G1 E-3 F3600 <- whatever a "normal" retract is for your setup
                                        G4 S2 <- pause two seconds, to cool the retracted filament
                                        G1 E2.9 F3600 <- whatever a "normal" unretract is for your setup
                                        G1 E-20 F3600 <-Retract enough to pull it into the heatbreak
                                        G1 E20 F3600 <- Pack the filament in, this will get rid of most of the stringing
                                        G1 E-150 F3600 <- Pull the filament out past the Y adapter.

                                        There may be simpler ways to do this with an e3d v6, I've just been playing with it until I find something that works. If you can retract at 100mm/s, the 2nd method above has worked for me for over 2500 filament swaps in a row, with no jams. If you can only retract at ~60mm/s, I've just started with the third method, but it's worked around 500 times now, with no jams.

                                        My testing method is to just swap filament in air, extruding 20mm between each swap using a macro. It looks something like this:
                                        http://imgur.com/DXYp6nT

                                        Once I can complete 50 in a row, I try a print.

                                        Co-Creator of the RailcoreII CoreXY printer
                                        https://www.thingiverse.com/thing:2407174

                                        1 Reply Last reply Reply Quote 0
                                        • undefined
                                          Yonkiman
                                          last edited by 15 Mar 2017, 19:56

                                          Thanks - I understand all that (and am fortunate enough to be able to retract at 100mm/s).

                                          OK, I just realized what my confusion was. Your T0.g script was:

                                          G1 E-5 F3600 ; Retract 5mm - adjust this to your standard retraction
                                          G4 S2 ; pause 2 seconds
                                          G1 E**-**4.9 F1200 ; unretract 4.9mm

                                          When I saw the "unretract 4.9mm", I thought that was a fancy way to say you were pushing the filament back into the hot end. (4.9mm seemed so precise I assumed this was some sort of filament shaping trick.) I didn't look at the command itself which clearly shows you are actually retracting 4.9mm farther (my bad).

                                          I totally understand now - thanks for your patience!!!

                                          1 Reply Last reply Reply Quote 0
                                          21 out of 75
                                          • First post
                                            21/75
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA