Ender 3 extrudes plastic whilst at standstill, and while moving to start of print

  • I have a small problem where plastic comes out of the nozzle while the printer is at a standstill (normally towards the end of heating the nozzle for a print), and whilst it moves from the line for clearing the nozzle on the left of the bed (Cura) before the actual print starts. This causes a slight problem where the first few millimetres of the printed line curls upwards when the nozzle comes back around again it goes over it but it causes a slight bump that makes a very small (but noticeable) skip or bump in the print on the bottom layer.

    I am using the Ender 3 running Marling 1.1.9 with a Bltouch and a glass bed, I didn't seem to have this problem before I upgraded to the glass bed and Marlin for the Bltouch.

    Any help will be greatly appreciated.

  • Trish

    Trish Correct answer

    4 years ago

    basics first

    The viscosity of plastic is temperature dependent: the warmer it is, the lower it gets and thus the more "runny". The lower the viscosity is, the less force is needed to move it.

    In printing, a pressure is applied to the filament from the extruder. Pressure is the force by area, thus for our look pretty much the same: the extruder exerts a force on the filament, to overcome the viscosity keeping it in the nozzle.

    A secondary effect is, that heated material expands, depending on what kind of material is in the nozzle.

    what happens

    The whole problem starts with shutting off the printer after the print: as the filament cools it shrinks. As the motors are turned off, the solidifying and shrinking plastic pulls at the filament. The filament can change its location or be pulled a little through the extruder, keeping the space quite well filled without cavities. Bowden style can change the mere filament path a little to compensate some of the shrinkings by shifting its path from hugging the outer wall to doing the same on the inner wall.

    As you start to heat up the printer, there is no force applied on the filament from the extruder to push it out of the nozzle. But when you shut it down, there was some filament in the nozzle.

    The filament melts and its viscosity drops, but at the same time, it expands. The extruder does not yet apply force, but as the material expands, it pushes against the filament stuck above it. Newton's 3rd law is the iconic Actioni contrariam semper et æqualem esse reactionem or as we know it short: Actio = Reactio, the force you exert in one direction equals a force applied in the reverse direction. Thus, the expanding filament pressing back against the extruder also exerts a force against itself down against the nozzle. The same is true for the nozzle, but the nozzle has one difference: it has a hole, where the forces are bundled to force filament out.

    At some point, the force from the expanding filament is big enough to overcome the viscosity keeping the filament in the nozzle and it oozes out.


    There are several ways to fix this in slicing, but I prefer the end-code method.

    • Modify your end code to provide space in the nozzle while it is still hot. Simply add G1 E-3 F1800 to retract quickly at the end of print. F1800 is rather fast.

    • Modify your start code could help in preventing very runny filaments from oozing, but you usually need to zero the extruder first with G92 E0 and you might also need to allow negative values with G1 S1. This isn't usable in all firmware versions, but one can use G92 E3 to set it to 3, then extrude, then 0.

    Example End Code

    Watch line 2. This is what prevents my Ender 3 from oozing in the first place

    G91 ;relative position set
    G1 F1800 E-3 ; Retract 3 mm to prevent oozing on startup
    G1 F3000 Z10 ; Move up 10 mm to clear the print
    G90 ;absolute position set
    G28 X0 Y0 ; home x and y axis to clear the print
    M106 S0 ; turn off part cooling fan
    M104 S0 ; turn off extruder
    M140 S0 ; turn off bed
    M84 ; disable motors

    Example Start Code addition

    This is just a snippet that forces retraction at the start, once the filament is hot. it WILL though make the first three millimeters of push come empty, thus should be combined with a cleaning that uses more than this - check out Writing G-code : swiping at start of print for better nozzle priming.

    G92 E3
    G1 E-3 F1000
    G92 E0

License under CC-BY-SA with attribution

Content dated before 7/24/2021 11:53 AM