Are run-out sensors worthwhile?

sounds like a simple and perhaps silly question, right ?
on my latest 2 printers, both new releases running klipper, i bypass the runout sensors; and on the one before those 2, then a latest-at-that-time -printer, i bypassed the runout process there also;
the initial reason i did so was there commonly existed a snag point with that extra filament routing right at the sensor ( it seems that all that nice engineering that goes into the overall printer doesnt translate well in the filament feed system…); the snag point is obviously at the change-to-new spool step;

with the second of those 3 printers i noticed some blobbing in the print right when it resumed printing after filament change; what was happening was the print head would return directly to the point in the print where it paused and NOT go though the routine that often starts a new print where it travels down the side of the bed and oozes out any ‘extra’ filament that might have collected in the whole change filament/re-heat process;
so these days i plant a small section of filament in the runout sensor so it believes there to be no runout ; if desired i could then just pull that filament out and pause the process , waiting ro re-start at the point;
the way i address the run-out might seem a bit simplistic but here goes:
we can estimate the amount of filament projected to be used , seems all the best slicers do that; we can also estimte how much filament we have left;
how do i do that ? well, i have the filament feed from a drybox directly into the top of the print head;
i know that drybox weighs 649 grams empty; so at any time i can simply weigh the (drybox + filament spool inside it + weight of the spool itself) and subtract the (649 + spool-weight) to estimate filament left;
added to that process, i tend to estimate ahead what my projected jobs will take and get just under 1000, sometimes i even re-scale a model to get just under 1000 ( this all assumes that you get 1000 when you order 1 kg; which i have found to usually be the case);
as a paranthetic, i have fouund there sometimes to be slight but noticeable color differences when changing spools even from the same manufacturer , so for example, the spool running out might have a very shiny silk gold whereas the successor might be a little more matte; infuriating;
yes doing this ‘my way’ does result in a slight bit of wastage…
thoughts ?

note, what is required in this process is knowing the weight of the empty spool, absent that you could simply weigh the spool + filament right when you unpackage it;
to augment that process i weigh the spools once they are empty , noting the style and keep those labeled empties around just to use for the next spool encountered of that style, it has ranged from 182-196 grams, with one outlier at 211;

Might be helpful.

Yes and no. They certainly can help if you are close by but if it is a long print and filament runs out while you re away it still can cause issues restarting. If I am worried or leaving and I think it could run out while I am away I change it anyway. It isn’t a deal breaker either way for me.

Depending on the print itself, even with small 2-6 hour prints, if I’m away from the machine I enable the runout sensor. Any roll of filament can have a bad spot in it anytime through the print and if it were to break, it usually breaks when entering the reverse bowden tube before the sensor. Being able to catch that failure is a big time and material saver when you need to get quick turnaround parts.

Tuning the restart gcode macro (with klipper at least) will also help with any of those blobs or oozes during purge.

I do usually disable the sensor during the start gcode macro to allow any purging, retractions for nozzle cleaning, etc to not be stopped, as some runout sensor have an encoder + switch to detect hotend clogs (encoder rotation not matching stepper rotation = PAUSE). Usually the range of movement for detection is about 6mm-10mm, so a -2mm retraction during homing and bed leveling could trigger a clog pause! Disabling the sensor as the first process in the macro and re-enabling the sensor before the purge line on the bed is usually the easiest way!

It all depends on the printer and setup in question, but it can be very helpful when set up properly!

Thanks
Chris

interesting answer;
leads to a question ( i should know this but obviously don’t…);
if i go into that restart macro in g-code, do i only have to do it One Time, or for each print ?
( obviously i dont have a good grasp on how those system macros are processed );
would it be possible for you to include the g-code that you introduced into the restart macro as text here ?
thanks

For me it depends if I’m running Octo-pi or not!

If I am, I have to skip the run-out sensor because mine isn’t wired into the pi.

If I’m just printing off the SD card, I love my run-out sensor for using up rolls with a few strands still on it on simple prints.