I'm using PrusaSlicer 2.5.0 and printing the sliced G-code on a Creality CR-6 SE via a USB-connected OctoPrint/OctoPi. As you can see, the slicer sets the temperature by G-code commands in two steps (final temperature is 205 °C). This seems strange to me, as the printer can go directly to the final temperature. Also, this screenshot shows the case where I'm switching filament, therefore I have to heat up the extruder and when I start printing, the hotend cools for some time, because the target temperature is way lower set by PrusaSlicer.

Is there a setting for configuring this in PrusaSlicer? These are the first few lines in the G-code file:

; generated by PrusaSlicer 2.5.0+win64 on 2023-01-18 at 12:15:56 UTC


; external perimeters extrusion width = 0.42mm
; perimeters extrusion width = 0.44mm
; infill extrusion width = 0.44mm
; solid infill extrusion width = 0.44mm
; top infill extrusion width = 0.40mm
; support material extrusion width = 0.36mm
; first layer extrusion width = 0.42mm

M201 X500 Y500 Z100 E5000 ; sets maximum accelerations, mm/sec^2
M203 X500 Y500 Z10 E60 ; sets maximum feedrates, mm / sec
M204 P500 R1000 T500 ; sets acceleration (P, T) and retract acceleration (R), mm/sec^2
M205 X8.00 Y8.00 Z0.40 E5.00 ; sets the jerk limits, mm/sec
M205 S0 T0 ; sets the minimum extruding and travel feed rate, mm/sec
G90 ; use absolute coordinates
M83 ; extruder relative mode
M109 S180 ; set temporary nozzle temp to prevent oozing during homing
M190 S70 ; wait for bed temp to stabilize
M140 S70 ; set final bed temp
G28 ; home all axis
G1 Z50 F240
G1 X2.0 Y10 F3000
M104 S230 ; set final nozzle temp
M109 S230 ; wait for nozzle temp to stabilize
G1 Z0.28 F240
G92 E0
G1 X2.0 Y140 E10 F1500 ; prime the nozzle
G1 X2.3 Y140 F5000
G92 E0
G1 X2.3 Y10 E10 F1200 ; prime the nozzle
G92 E0
G21 ; set units to millimeters
G90 ; use absolute coordinates
M83 ; use relative distances for extrusion
; Filament gcode
  • 1
    $\begingroup$ Hi, welcome to 3DPrinting.SE! Can you share the first 30 lines or so from the G-code file? The image doesn't really help that much. We have to discard the first 2/3 of the image (unrelated to the problem) and do not see the final temperature being reached, in fact it settles at the 165 °C mark. Please update your question by edit. Also look into you start G-code scripts in PrusaSlicer, maybe post them as well. $\endgroup$
    – 0scar
    Jan 18, 2023 at 12:51
  • $\begingroup$ I have replaced the initial gcode in prusaslicer. I've found those defaults degrade print quality on my E3. I typically preheat the nozzle so the temp is stable, and then the default code drops the temp and then raises it, guaranteeing that the temp will be unstable. The rest of the surrounding code causes other issues. $\endgroup$
    – user10489
    Jan 22, 2023 at 14:02

1 Answer 1


Since the bed usually takes longer to heat than the nozzle, the nozzle is in a pre-warmup stage so that it doesn't ooze filament waiting for the bed while homing and/or finding the Z limit.

Once the bed is warmed up and the Z limit is reached the nozzle heats up to the final temperature and the print starts.

If you go to the Printer Settings tab of Prusaslicer and click on Custom G-Code, you'll see the initial temp in the Start G-Code section. Mine even says:

M104 S150 ; set temporary nozzle temp to prevent oozing during homing

A temperature of 150 °C is low enough that the filament doesn't melt but close enough to the final temperature so that you're not waiting for a full heat cycle.

  • $\begingroup$ Good answer, and most probably the answer, but I still hope the OP adds the first lines of G-code, then we will know for sure! $\endgroup$
    – 0scar
    Jan 18, 2023 at 14:24
  • 1
    $\begingroup$ FWIW I think it's worth fixing this to just heat directly. At least on my machine, with temperatures I use, bed heating and hotend heating take comparable time, and the nozzle will not significantly ooze at print temperature if your end gcode properly retracts the filament all the way out of the melt zone for the start gcode to reverse. $\endgroup$ Jan 18, 2023 at 15:35
  • $\begingroup$ You can't retract the filament at the start of the print, however, since the nozzle is cold. You'd have to make sure your g-code retracts at the end of the previous print, which is no guarantee. The temp setting is a workaround for either case. $\endgroup$
    – LarryBud
    Jan 18, 2023 at 17:40
  • $\begingroup$ R was hinting to retract in the end G-code, the start code needs to reverse it. $\endgroup$
    – 0scar
    Jan 18, 2023 at 22:01
  • 1
    $\begingroup$ @R..GitHubSTOPHELPINGICE that only works if every one of your prints is perfect and you never abort a spaghetti print, have broken filament, or anything else that ends up not executing the retraction code. $\endgroup$
    – simpleuser
    Jan 20, 2023 at 16:54

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .