Notifications
Clear all

Octoprint: Problem with long wait after filament runout  

  RSS
Patrick
(@patrick)
New Member
Octoprint: Problem with long wait after filament runout

I use my mk3s+ with a rpi4 running octoprint which works great in general. For pause/resume I use this gcode script which also works fine.

The one problem I'm not able to fix or find any information on is filament runout.  It works as expected if there is only a small pause between the runout and changing the spool. 

If there are a few hours between runout and changing to a new spool though, the print resumes only for a few seconds and pauses anywhere between 30 seconds to minutes before resuming the print.

This often causes issues if the runout was in the shell, because the printhead staying there for a long time deforms the object at that location.

 

Has anyone experienced this?

Posted : 22/03/2021 4:24 pm
Stephanie
(@stephanie-2)
New Member
RE: Octoprint: Problem with long wait after filament runout

Did you enable HOST_ACTION_COMMANDS and HOST_PROMPT_SUPPORT in Configuration_adv.h in marlin? I thought you needed those to be able to handle filament runout in octoprint.

 

 

mybpcreditcard.com

Posted : 30/03/2021 10:15 am
Patrick
(@patrick)
New Member
Topic starter answered:
RE: Octoprint: Problem with long wait after filament runout

I'm using the latest default Prusa Firmware without any changes.  

The pause seems to work fine though, it shows as paused after a runout. Just the resume after a longer time is the issue.

Posted : 31/03/2021 8:43 am
towlerg
(@towlerg)
Noble Member
RE: Octoprint: Problem with long wait after filament runout

There is an inherent problem using OctoPrint with the filament runout sensor attached to the printer. OctoPrint continuously streams data to the printer unless the printer signals a pause. Not knowing details of the handshaking between printer and OctoPrint it's hard to know exactly whats wrong and how to fix it. Although this may not suit your set up a better solution is to have the runnout sensor attached to the Pi. There are several plugins that allow that.

 

Posted : 31/03/2021 3:19 pm
Patrick
(@patrick)
New Member
Topic starter answered:
RE: Octoprint: Problem with long wait after filament runout

Thanks, I thought it might be a streaming/buffer issue. 

I'll will check for how to rewire the sensor to the Pi then.

Posted : 01/04/2021 9:55 am
Dan Rogers
(@dan-rogers)
Noble Member
RE: Octoprint: Problem with long wait after filament runout

Better way to pause - pausing the print from Octoprint leaves the head right where it was when paused - causing the over-heating.  I have found that if I cut the filament right above where it goes into the print head and let the filament sensor trigger the change, I get a much cleaner pause.  The printer remembers where it was, and the print head does not have any heat challenges from being too  near the print.  Once the printer detects the run-out, it moves the head to the parking space waiting for you.  That way you never ruin your print.

Works for filament changes, or any other kind of pause you might need to trigger.

 

Posted : 02/04/2021 3:09 pm
towlerg
(@towlerg)
Noble Member
RE: Octoprint: Problem with long wait after filament runout

@dan-rogers

I don't have a Prusa printer so I guess it may be different but you can attach GCode to Octoprint pause to move the head out of the way or reduce temperature while paused.

Posted : 03/04/2021 10:52 am
Dan Rogers
(@dan-rogers)
Noble Member
RE: Octoprint: Problem with long wait after filament runout

@towlerg

I would love to do that!  Don't know how, but sounds easy if you know what Gcode to do.  I'd like it to move up 10mm or so, maybe even shift to home, and then it is important to remember to put the head back at the very same spot.  I tried earlier just pause, then wait for the control panel to be in charge again, and then hit move Z.  But I found that unless the head was at an even Z number that it would never get back to the exact same spot and there would be a blemish.  My "cut the filament" trick does exactly what I want on a pause - move the head away from the print so I can see it, and then let me decide from there.

Posted : 03/04/2021 3:06 pm
towlerg
(@towlerg)
Noble Member
RE: Octoprint: Problem with long wait after filament runout

Heres what I use which I suspect is stock code

Pause

{% if pause_position.x is not none %}
G91 ; relative XYZ
M83 ; relative E
G1 Z+50 E-5 F4500 ; retract filament, move Z slightly up
M82 ; absolute E
G90 ; absolute XYZ
G1 X0 Y0 ; move to a safe rest position
{% endif %}

Resume

{% if pause_position.x is not none %}
M83 ; relative E
G1 E-5 F4500 ; prime nozzle
G1 E5 F4500
G1 E5 F4500
M82 ; absolute E
G90 ; absolute XYZ
G92 E{{ pause_position.e }} ; reset E

; 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 %}

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

This post was modified 3 years ago by towlerg
Posted : 03/04/2021 7:20 pm
Share: