prusa3d / PrusaSlicer

G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.)
https://www.prusa3d.com/prusaslicer/
GNU Affero General Public License v3.0
7.65k stars 1.92k forks source link

travel lift setting generate code problem #13425

Closed pxysea closed 32 minutes ago

pxysea commented 15 hours ago

Description of the bug

The Retraction length is set to 3.9, and the option to retract at layer changes is enabled. The generated G-code for the first layer slice is as follows:

;LAYER_CHANGE
;Z:0.2
;HEIGHT:0.2
G1 E-3.9 F2400
G92 E0
G1 Z.4 F3600
G1 X81.583 Y92.426
G1 Z.2

However, the G-code for other layer slices is:

;LAYER_CHANGE
;Z:0.4
;HEIGHT:0.2
G1 E1.65761 F2400
G92 E0
G1 Z.4 F3600
G1 X86.861 Y94.913 Z.6
G92 E0
G1 X92.068 Y98.125
M73 P23 R1
G1 Z.4
G1 E3.9 F2400

The expected retraction code should be G1 E-3.9 F2400 for other layers as well, but instead it generates G1 E3.9 F2400. Retraction setting Retraction setting1 Retraction setting2

Project file & How to reproduce

printer -> Retraction length

Checklist of files included above

Version of PrusaSlicer

PrusaSlicer-2.8.1

Operating system

Windows 11

Printer model

DIY Marlin GenL V2.1

rtyr commented 12 hours ago

Please provide your 3MF project.

pxysea commented 5 hours ago

this is 3mf file cone_test.zip I have another idea, which is to have a Z-axis lift and retraction operation before each seam. Is this achievable within the software? Thank you.

rtyr commented 32 minutes ago

The g-code output is correct. You are using absolute E axis positioning. You can enable relative E distances parameter in printer settings if you want to change that.

retr

I have another idea, which is to have a Z-axis lift and retraction operation before each seam. Is this achievable within the software?

No.