I have several printers being controlled by OctoPrint. I found issues with doing multiple instances on one computer, so I'm using one Pi Zero 2W per printer Overall, it works nicely, but the biggest issue I have is dealing with rendering timelapse videos. I've considered disabling them, but I find them extremely useful for debugging issues, so I want to keep them active.
The issue is that, on a Pi Zero, it can take a LONG time to render a timelapse, which delays me starting my next print. I've tried to find alternatives and haven't found clear answers about this.
I can think of a few possible solutions for this, but I have no experience working with this kind of thing in coding. I don't mind doing the "how to code in Python" research on an idea, but first I'd like to find out if any of these ideas are workable.
-
Cancel generation: Once I finish a print, is there a way to cancel timelapse rendering, or to cancel rendering once it's started? That way if I find a print is good, I can just stop it from rendering the timelapse.
-
Capture images but don't render: I can think of several different ways I could handle this if I could capture the stills but not render them. Is there some way to have OctoPrint capture images but not render the video? And if I do that, what about accessing the stills from another system? I take it I could set up a Samba share to do that, but what directory are the still stored in?
-
Totally offload the process: I see a few issues with this. First, I would need a way to detect when OctoPrint has started a print. Is there a way to detect that from another computer? Second, if the webcam is on the Pi Zero that OctoPrint is on, will another comptuer capturing the stills add much of a load to the CPU on the OctoPrint system? And once I detect that a print has started, is there a way to read the name of the print job?
I'm sure there are also other possibilities that I haven't thought of. I'm open to other methods. The main issue I'm trying to solve is to not have to wait for timelapse rendering before I start a new print from a slower Pi Zero.