Jump to content
neotko

Happy NYE & an idea for Cura plugging for Pause

Recommended Posts

Posted (edited) · Happy NYE & an idea for Cura plugging for Pause

NYE.thumb.png.556f65797dfb35bf875a4e71235a129a.png

 

This is the stuff I'm finishing for 2019, they are hairpins in two colors that I do with an advanced Pause script that allows me to Atomic plug the filament totally unmanned and waits for me until I go to change the color and click resume. Ofc this is all thanks to Duet3D advanced pause that has Gcode to resume previous position and even Fan, hotend, etc temperatures.

 

What's needed to make a plugging out of this?

- Manual setting to define layer number (I know this already exists)

- Script to insert the Previous temperature/FanSpeed & Position set by the slicer (so any changes while paused can be resumed if the user needs to move Z, move X/Y or prehead the nozzle to clean any previous color residue. This is important to resume the print without temporal changes affecting the real print.

- Area to define custom gcode - for the Atomic - so the users can adjust the atomic pull sequence for their extruders. Mind that I use DirectDrive so I can change the color pretty fast without issues because also my extruder isn't behind the machine or hard to access.

 

Mind that the M106 R1 or G4 S5 are specific Duet3D gcodes, so this can't be just copy-paste into a normal gcode print without manual editing. That's why ideally Cura could have a plugging to mimic all the automatic steps in order to make it user friendly.

 

Check my twitter posts to see videos of how the process works:

 

This is the post I made on Duet3D forums:

 

For this, first I had to find the perfect momento to pause on the gcode. I use Skirt with 12 layers (the same amount of layers for the Pause layer) with 5mm distance and 2 Skirt Outlines (but I suppose for really tall prints it might be better to use 3).

 

Then I do a search on the gcode (mind I use S3D) of the last "; skirt" Then I find something like this:

 

; skirt
G1 X98.056 Y59.801 F10800
G1 Z2.480 F1500
G1 E0.0000 F1500
G92 E0
G1 X99.094 Y59.554 E0.0355 F4200
G1 X99.106 Y59.551 E0.0359

 

Being that last G1 the beginning of the Skirt Print

 

So I ADD the M25 to do a Pause

; skirt
G1 X98.056 Y59.801 F10800
G1 Z2.480 F1500
G1 E0.0000 F1500
G92 E0
G1 X99.094 Y59.554 E0.0355 F4200
M25 ; Pause REPEAT Speed of previous line on next so it knows what speed to resume
G1 X99.106 Y59.551 E0.0359 F4200 ; ADDED F4200 HERE

 

Doing this I can be sure that the extruder was on top of the Skirt before doing the pause, so if the filament Strings it won't dirt my print.

Then the rest it's on the Duet3D macros.

I edited my pause.g to work like this:

; pause.g
; called when a print from SD card is paused
M83 ; relative extruder moves
G1 E-3 F3600 ; retract 10mm of filament
G91 ; relative positioning
G1 Z5 F360 ; lift Z by 5mm
G90 ; absolute positioning
G1 X15 Y15 F10000 ; go to X=15 Y=15
M104 S120 T0 ; Sets to a generic LOW TEMP before calling PLAColdpull Macro
G1 E5 F1600 ; Keeps pressure FAST Initial recovers from retract also
M98 Preversecowmilking.g ; Calls the COLDPULL macro

This is what I do on Resume.g

; resume.g
; called before a print from SD card is resumed
M104 S225 T0 ; Sets general Print temp for PLA
M109 S225 T0 ; Waits until it reaches 225 for PLA
M83 ; relative extruder moves
G1 E5 F100 ; Purgues 5mm where it was paused slow to realign gears
G1 E5 F300 ; Purgues 5mm where it was paused normal
G1 E-1 F2000 ; retracts 1mm before moving to resumed position
G1 R1 Z1 F6000 ; go to 5mm above position of the last print move
G1 R1 ; go back to the last print move
M83 ; relative extruder moves

And This is my ReverseCowMilking Macro (automated Coldpull) I add this macro on the SYSTEM area, otherwise I wasn't able to call it but I'm using an old 1.20RC3 version of the firmware so probably just an old bug

;reversecowmilking.g
; Semi automated coldpull for PLA

M106 S200 ; SET FANS UP
G10 P0 R70 S70
G4 S35 ; Wait 35 secs so the temperature reaches 160-170 if was a 225
M302 P1 ; ALLOW COLD EXTRUSIONS just in case
G1 E2 F15 ; Push 2mm slow to keep pressure at semi able temperature
M116 ; WAIT FOR TEMPERATURES SET TO ARRIVE before continuing
M106 S0 ; SET FANS OFF

G4 S5 ; wait for internal temperature to stabilize along filament
; starts milking the cow movement

G1 E-0.3 F100 ; retracts 0.3mm
G1 E0.1 F2000 ; reajusts 0.1mm - total 0.2
M18 E0 ; Unlocks feeder
G4 P500 ; half a sec to allow filament tension to recover & avoid grinding

G1 E-0.3 F100 ; retracts 0.3mm
G1 E0.1 F2000 ; reajusts 0.1mm - total 0.4
M18 E0 ; Unlocks feeder
G4 P500 ; half a sec to allow filament tension to recover & avoid grinding

G1 E-0.3 F100 ; retracts 0.3mm
G1 E0.1 F2000 ; reajusts 0.1mm - total 0.6
M18 E0 ; Unlocks feeder
G4 P500 ; half a sec to allow filament tension to recover & avoid grinding

G1 E-0.3 F100 ; retracts 0.3mm
G1 E0.1 F2000 ; reajusts 0.1mm - total 0.8 - Enough to dislock filament from hotend
M18 E0 ; Unlocks feeder
G4 P500 ; half a sec to allow filament tension to recover & avoid grinding

G1 E-10 F50 ; retracts 10mm SLOW - To avoid breaking if bond if weak
M18 E0 ; Unlocks feeder
G4 P500 ; half a sec to allow filament tension to recover

G1 E-20 F800 ; retracts 20mm medium speed - Should keep integrity
M18 E0 ; Unlocks feeder
G4 P500 ; half a sec to allow filament tension to recover

G1 E-30 F2000 ; retracts 30mm fast - Should be able
M18 E0 ; Unlocks feeder
G4 P500 ; half a sec to allow filament tension to recover

;G1 E-30 F2000 ; retracts 30mm
;M18 E0 ; Unlocks feeder
;G4 P500 ; half a sec to allow filament tension to recover

M302 P0 ; DONT ALLOW COLD EXTRUSIONS
M106 R1 ; RESTORE FAN SPEED BEFORE THE PAUSE

 

NOTES

I use directdrive with zge extruder, so the force, speed of the coldpull and timing should be totally different for bowden.

I release the feeder constantly to allow the filament natural elasticity to go back so I can avoid grinding the filament

I use Bondtech drivegears, so the filament grip it's perfect at all times.

Macro comments might not be accurate because I been adjusting this many times until I was able to achieve enough repeatability on my 3 printers.

 

Happy 2019 & enjoy printing

Edited by neotko
  • Like 3

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Welcome to the Ultimaker Community of 3D printing experts. Visit the following links to read more about our Terms of Use or our Privacy Policy. Thank you!