I have read that if I disconnect OctoPrint when printing, the print will stop. Since I thought the advantage of OctoPrint over, say, printing from Cura, was that it didn't tie up the computer while the print was taking place, what are the advantages of OctoPrint?
I have read that if I disconnect OctoPrint when printing, the print will stop.
You can disconnect your computer from the OctoPrint server while printing and the print will continue just fine. You cannot disconnect the OctoPrint server from the printer without interrupting the print, of course.
Since I thought the advantage of OctoPrint over, say, printing from Cura, was that it didn't tie up the computer while the print was taking place, what are the advantages of OctoPrint?
The advantage (the one you're talking about, anyway) of printing via OctoPrint (which you can also do via Cura, btw) is that you don't have to tie up the computer that you're using for other things. You run OctoPrint on some other computer that can stay connected to the printer. Typically, a Raspberry Pi is used; they're cheap (~$30), and there's an OctoPi distribution that's practically a turnkey solution.
Other advantages of OctoPrint include:
- stores your .stl files, either on the print server or on the printer's SD card
- enables remote monitoring, including a webcam feed
- lets you control your printer from any device with a web browser
- provides a plugin mechanism (and a large variety of plugins) to extend its capabilities
The benefit of using OctoPrint as a printserver lies in the fact that it can be used on a stable computer platform. E.g. when you install OctoPrint on a Raspberry Pi, you are ensured that the "computer" stays online. Other platforms, such as Windows are much prone to interrupt the printing process (user actions during printing, sleep mode, Windows updates, etc.). Furthermore, the power consumption of the Raspberry Pi is also much lower than a full computer or laptop running OctoPrint.
An advantage of running OctoPrint on a dedicated Raspberry Pi is that you can access it from anywhere within your network through a browser interface (or even from the outside) as it is always online. Other advantages of OctoPrint over e.g. Cura is that there are numerous plugins available to tailor the printing process to your needs.
The advantage to OctoPrint is that 3D prints take a long time, and Windows needs reboots.
The moment (or 4 days into it) you start a 5-day print job, there will be an urgent need to reboot your Windows computer.
Then your print job will be lost, and you will have to start all over.
Applications crash, windows update needs to reboot, and a host of dozens of other reasons all surface when you start printing.
Eventually, Windows will force a reboot or you will get a blue screen of death from Windows, etc.
The OctoPi and/or OctoPrint run on a Linux-based OS that just works.
It never crashes, or at least I have never had it crash.
When you have a 5-day print, reliability is king.
Also, it should be noted with a Cura plugin you can send the print directly to OctoPrint. I do this all the time.
Plus they're a number of handy community support plug-ins for OctoPrint.
In addition, because it's not attached to my computer directly there is one less cable to trip on.
Printer Supervisory control and data acquisition (SCADA)
In the context of 3d printing, SCADA is useful because it is important to have a redundant method of monitoring (and control) of a system. The 3d printer's µController is typically busy with doing the important task of controlling the steppers and monitoring the heating elements. It is important to the print job that these functions occur in a way that is uninterruptible. We know all too well of the consequences of letting the hot end go into thermal runaway. As it stands most 3d printers have simple µControllers that are not powerful enough to handle TCP/IP responses AND monitor the 3d printer's machinery. To that end, being able to notify a Supervisor of the status of the machine and any failure conditions that may be occurring becomes important in the management of the machine. This is where a Supervisory system like Octoprint comes in. With its myriad of plugins and other connectivity, it extends the abilities of an inexpensive printer (e.g. like my Anet A8) with advanced capabilities for notification (e.g. the Octoprint Android/IOS apps) and control; such as automatically powering off the printer with a wifi-enabled smart plug. These are safety features that should be considered when operating a 3d printer. The temptation to leave the machine running unattended has resulted in problems in the past. With a supervisory system, the machine's operator can give at least some attention to the print process at all times.
Further, sometimes the print fails without actually being a result of some sort of electromechanical fault. Having optical inspection equipment (e.g. a camera) attached to the supervisory system can help determine if there are problems with the process so that fine-tuning can be performed. Without such data, it is usually very difficult to diagnose those problems.
There are some answers here talking about reliability of an OctoPrint installation vs Windows, but they only tell part of the story. These days, Windows can be pretty reliable, too. If I really cared about reliability, I'd use the SD card method, which takes other computers out of the equation completely.
Instead, the advantage of OctoPrint comes down to two things:
You set it up on a dedicated computer that is not used for other things. Something like a cheap Raspberry Pi. This is what is really responsible for improving reliability over printing from your desktop/laptop. It's not about using linux over Windows as much as making sure absolutely nothing else will interfere with the computer for the duration of the print.
OctoPrint is designed explicitly for printing and managing prints. It's not just an add-on or feature of another product whose main purpose is slicing, as when you print from Cura, but a platform in its own right with support for plug-ins and extra tools for managing and monitoring your print, to extend the experience beyond what you could otherwise achieve.
For example, OctoPrint makes it possible to check on your progress over the web, without needing to setup a dedicated web server on your day-to-day computer. Or you can manage your printer by installing an app on your phone. Or you can use OctoPrint to create time-lapse videos of your print. Or get an alert when reaching a certain layer. Or a hundred other ways you can use plug-ins to customize OctoPrint to work the way you want.
Personally, I use OctoPrint mainly to add wifi capability to the printer (it's not built-in for my printer), so I can start printing directly from my desk without also needing to keep the printer close enough to the computer to connect a usb cable.