There might be no stranger name for a 3D print product than The Spaghetti Detective, and it’s not only appropriate, but something that should become popular.
OctoPrint and Plugins
The Spaghetti Detective is a plugin for OctoPrint, the popular open source set-top box software that is used to drive many desktop 3D printers. OctoPrint can transform a “dumb” 3D printer into one that has quite a bit of smarts by connecting it to the web and providing functions like online slicing, file management, remote control and much more.
One of the key features of OctoPrint is the ability to manage a camera that can be used to visually monitor the progress of a 3D print remotely. This is especially useful if OctoPrint is accessible from the internet and you’re using one of several OctoPrint smartphone clients. From these clients you can see if there’s a print problem and remotely stop it before there’s too much wastage of material, or even damage to your 3D printer.
One of the best features of OctoPrint is that it’s designed to accept plugins. These plugins can be produced by anyone with the right skills and tools, and they can dramatically extend the functionality of OctoPrint. This is quite useful for 3D printers that have some peculiarity that can be handled with a plugin.
The Spaghetti Detective Plugin
One of the currently available OctoPrint plugins caught my eye, initially due to its wacky name: The Spaghetti Detective.
What does it do? It does exactly what it is named for: it detects “spaghetti” 3D printing, which is what happens when your print pops off the print surface in mid-print, usually due to poor adhesion. Since there is no longer a fixed structure to extrude upon, a vast pile of “spaghetti” is produced over the remaining print duration.
Personally, I detest the spaghetti scenario, as it is terribly wasteful of material, but moreso because very bad things can happen when there’s loose partial 3D prints banging around your 3D printer. They can become attached to the hot nozzle, and sometimes block downward filament flow. This can result in an extruder toolhead that’s filled with rock-hard plastic.
Not Fun At All.
The Spaghetti Detective claims to detect these situations automatically. How so? It uses a form of AI software. They explain in four steps:
- Your webcam captures real time 3D print images and sends them to The Spaghetti Detective
- The Spaghetti Detective gauges the likelihood of a failure by analyzing the images
- If a possible failure is detected, it will pause the printer, turn off the heaters and alert you via email or text
- You cancel the print from your phone if failure is confirmed. Save time, money and your worries.
Here’s a video of The Spaghetti Detective in action:
OctoPrint AI
While this may seem quite miraculous, the advancement in image analysis science has been considerable over the past few years. Software and algorithms now exist that can be trained to recognize certain types of images.
Usually the software produces a percentage likelihood of an image matching a detection. This type of system is never 100% accurate, but given proper training and good quality inputs, the true positive rate is high and the false positives are low.
In the case of The Spaghetti Detective, images are periodically sent to their servers in the sky where they are run against the detection algorithm. If they run clean, then nothing happens. But if a likelihood percentage is above a specified threshold, alerts begin ringing. At top and in the video you can see their “probability meter” that is literally the computed likelihood of a detection in real time.
The key in these system is to set the threshold very carefully, so that the system doesn’t ring too often with false positives, but still catches the vast majority of true spaghetti events. I’m not sure, but I suspect that The Spaghetti Detective builders have set that up for us already.
The Spaghetti Detective Availability
As with every service that consumes server resources, there are going to be fees to use this system. At the moment, The Spaghetti Detective is in beta and can be used at no charge.
However, there will be fees in the future. Fortunately if you’re using it only for a single 3D printer and only occasionally (which is not formally defined as far as I can tell), it’s free. But if you want to use The Spaghetti Detective regularly, it will cost around US$2 per 3D printer per month. They also offer custom pricing for larger installations.
I haven’t yet tested The Spaghetti Detective, but I am pretty sure I will be able to do so soon.
But testing is really trying to answer the question, “how could this thing actually work?”, which is something I suspect many of you are thinking right now.
I suspect it does work — to some degree. But here’s the interesting thing: as their system “sees” more examples of failures, it should be able to learn more and become more accurate. Remember, each image you send up to their server could potentially be stored for future training.
I bet The Spaghetti Detective improves dramatically over time. Eventually it might be good enough to offer to larger 3D printer manufacturers as an advanced feature for their clients.
If that happens, we’ll all be saving money on materials, and the filament sellers will be weeping.
No, they won’t. We’ll just Print More.