Improving Mister Screamer; An 80 Decibel Filament Alarm
I created a prototype 3D printer filament alarm that worked, but the process also brought some new problems and issues to the surface that I hadn't foreseen when I first started. Today I’m going to dive further into the prototyping process to gain some insight on designing for a well-specified problem. What I came up with is an easy to build pendant that passively hangs from the filament and alerts you if anything about that changes.
I began with a need to know when my 3D printer was out of filament, so that I could drop whatever I was doing and insert a new spool of filament right up against the end of the previous spool. By doing this within four minutes of the filament running out, printing very large jobs could continue uninterrupted. The device I designed was called Mister Screamer.
The idea is that if a 3D printer is attended (but not under constant supervision) and the operator is prepared to swap filament rolls when needed, then there is no need for the printer to perform any "smart" duties such as pausing the print. As long as there is a means of triggering an alarm when filament has run out, the operator can do everything needed to keep the machine printing uninterrupted, and the printer itself doesn't even need to know.
The previous prototype physically sensed filament with a roller switch that triggered a buzzer when filament ran out. It had a successful trial run, but revealed some new problems:
Even though the previous prototype did the job it was supposed to do, it was clear there were problems and a design update was needed.
The fundamental requirements for Mister Screamer haven't changed much. The device's duties are:
Other elements of the design worked out well enough to keep, and remain mostly unchanged:
Lessons from building and testing the first prototype were used to add the following design goals:
The new prototype keeps the same basic function, but with an entirely different approach. The device is now sensitive to orientation, and senses the actual filament only indirectly. It is designed to hang by a ball-link chain like a pendant.
While the device hangs down it is silent. If it falls, the alarm sounds until it is picked back up. Therefore in operation it hangs passively from the filament like a pendant or keychain as long as filament feeds into the printer. As soon as the spool of filament has emptied, the device falls to the tabletop and triggers the alarm.
The new system changes technologies. I did away with the roller switch and replaced it with a reed switch. Inside the 3D printed enclosure is a void that captures a small disc magnet. The void has been engineered to use a shape that keeps the magnet away from the reed switch when hanging from the ball chain, but lay Mister Screamer on a flat surface and the magnet will settle near enough the switch to actuate it.
While hanging vertically from its chain (either for storage or when hanging from a filament line) the device is completely inert and uses no power. The enclosure is designed with flat sides and rounded edges, so that the unit always settles to one side or the other when it falls.
There are a few other things to mention about the design:
Warning: Audio contains loud beeping
The new prototype was a success, and not just because it performed its intended job in the expected way. It was a successful process because:
In prototyping Mister Screamer, I did the following to get the best results from an iterative approach:
Mister Screamer V2 satisfied all the requirements, but still yielded discoveries that could be used to improve a subsequent version. The biggest lesson learned was that this design is highly dependent on the layout of the 3D printer being used.
In my particular printer (a Raise3D N2) the filament spool is well away from the print area. Not only is there room for the device to hang from a spool, there isn't any risk of the unit ending up somewhere troublesome when it falls. Other 3D printers may have physical layouts that don't allow Mister Screamer to work well. If the device dangles in the way of the print head, or can fall into the print area once filament runs out, that's asking for trouble.
As it stands, Mister Screamer V2 does its job well enough to be reliably used for real work, even if its scope is focused mainly on my own printer and needs. Ever-increasing improvements can be tempting to chase, but it's rarely necessary to iterate until a solution is perfect. If a problem has been correctly identified and understood, it becomes much easier to judge when the solution is done.
The enclosure design for this version of Mister Screamer is available on GitHub.