prusa3d / Prusa-Firmware-Buddy

Firmware for the Original Prusa MINI, Original Prusa MK4 and the Original Prusa XL 3D printers by Prusa Research.
Other
1.17k stars 229 forks source link

[ENHANCEMENT] Make "Absorb Heat" smarter (faster/shorter) #3534

Open MR2C280 opened 1 year ago

MR2C280 commented 1 year ago

The "Absorb Heat" phase of printing adds several minutes to the print time and is a bit of a 'blunt instrument'. I think it can be smarter.

I assume the absorb heat phase to be sure the print bed is fully up to temp and stable before printing begins. But it does this on every print without taking the conditions into consideration. For example: Is the printer already warm? Has the user preheated the bed? Is the object being printed prone to bed adhesion issues (a big flat square surface vs. many small islands for organic supports)? How long will it take to get all the print heads heated & primed, nozzles cleaned and mesh bed levelling probed? (the bed temp will be absorbing during that time)

Possible solutions: 1) Add an Absorb Heat time setting in the Filament tab in PrusaSlicer (perhaps with an override on the Print tab). 2) Consider the conditions mentioned above to adjust the time accordingly. 3) Monitor the adjacent unheated bed segments for either a specific temperature or for when their temps stops rising.

I know this applies to the XL bit may also apply to MINI and MK4 too.

Personally, I have commented out the G29 G ; absorb heat in the Printer Start G-code as I find it is (usually) unnecessary. But, as I said, that's a bit of a blunt instrument and sometimes come to regret not being a little more patient.

brettvitaz commented 1 year ago

Allow the user to skip or shorten the Absorb Heat phase via the LCD

This already exists. You can select "skip" from the printer screen when it is in the absorb heat phase.

morphias2004 commented 1 year ago

+1

DanielWeigl commented 11 months ago

This already exists. You can select "skip"

Not while printing via Octoprint

Maybe an easier idea would be to take the medium temperature before the "Absorb Heat" step starts and use the difference to the target temperature as basis for the time it should wait - so, if its already preheated, it shouldnt take that long

github-actions[bot] commented 6 months ago

This issue has been flagged as stale because it has been open for 60 days with no activity. The issue will be closed in 7 days unless someone removes the "stale" label or adds a comment.

MR2C280 commented 6 months ago

This may not be a high priority but please don't close the issue.

Racemade commented 6 months ago

+1

AccaliaDeElementia commented 6 months ago

Agreed on this issue. it's weird that there'sa difference in the behavior of the absorb heat gcode when printing from SD/USB drive verses when printing from Serial.

It would be nice if the behavior was consistent between the two and didnt' generate a 10 minute hang in printing when using octoprint. Yes the prints are almost always successful omitting the absorb heat code, but having access to the gcode would make for a better experience.

nkiest commented 5 months ago

Also, if triggering prints remotely, you can't make it skip. I don't really know why Prusa Connect has a preheat function if it doesn't reduce absorb time.

foorschtbar commented 23 hours ago

bump up. Still no option to skip this step with OctoPrint - and yes Prusa, people use OctoPrint and want this also in the future.