Pause & Park Scripts, Stringing/Layer Line

I am trying to use GCODE scripts to properly park my extruder after pausing a print, but I am having an issue of a long and substantially thick string, and what seems to be a bit of either a layer shift, or sputtering that is visible for the rest of that layer. I got these from this site, with it set for Cura with M82, and an increased retraction I hoped would have helped more. I can't seem to quite figure it out. I am using the following GCODE.

After print job is paused:

{% if pause_position.x is not none %}
; relative XYZE
G91
M83

; retract filament of 4 mm up, move Z slightly upwards and 
G1 Z+5 E-4 F4500

; absolute XYZE
M82
G90

; move to a safe rest position, adjust as necessary
G1 X10 Y10
{% endif %}

Before print job is resumed:

{% if pause_position.x is not none %}
; relative extruder
M83

; prime nozzle
G1 E-4 F4500
G1 E4 F4500
G1 E4 F4500

; absolute E
M82

; absolute XYZ
G90

; reset E
G92 E{{ pause_position.e }}

; WARNING!!! - use M83 or M82(extruder absolute mode) according what your slicer generates
M82 ; extruder relative mode

; move back to pause position XYZ
G1 X{{ pause_position.x }} Y{{ pause_position.y }} Z{{ pause_position.z }} F4500

; reset to feed rate before pause if available
{% if pause_position.f is not none %}G1 F{{ pause_position.f }}{% endif %}
{% endif %}

Any ideas? Thanks!

First I would recommend the OctoPrint documentation on scripts:

https://docs.octoprint.org/en/master/features/gcode_scripts.html

And you may also have a look on this:

The examples assume that the coordinates used by the slicer are absolute (including E), and this may not be the case. Some slicers use absolute X, Y, Z and relative E. Relative X, Y, Z is rare.

Unfortunately, Marlin doesn't provide a way to query (or save) the state(s) so a universal, slicer independent, pause and resume scripts cannot be written.

I actually fixed it at 3am last night lol. I just needed to separate the two moves, so I turned this:

G1 Z+5 E-4 F4500

To:

G1 E-4 F4500
G1 Z+5 F4500

Now it pauses and parks, then resumes like a dream :slight_smile: I am installing an EX Board Lite from TH3D and will be enabling advanced pausing features in the firmware as well. Thanks guys.