While it started as a way of controlling 3D printers wirelessly, OctoPrint is now a robust open-source 3D printing software capable of diverse functionalities.

This success is partly due to its openness, which encourages programmers from around the world to chip in and enhance the software’s versatility. This is especially true for the various plug-ins available to OctoPrint, created by community members.

One of many custom features provided by OctoPrint’s plug-ins is adding a filament runout sensor to your 3D printer. If you’ve ever struggled with failed prints due to lack of filament, this article is for you. We’ll talk more about how this feature works, the various possibilities in terms of hardware and software, and where to find more information to get started.

Back to Contents

OctoPrint Filament Sensor: The Basics

OctoPrint & Runout Detection

OctoPrint is known to ignore the 3D printer's own filament sensor
OctoPrint is known to ignore the 3D printer's own filament sensor (Source: 3djpco via Thingiverse)

Filament runout detection is a useful feature that comes stock on some FDM 3D printers and can be added to others. It’s not rare for filament spools to be depleted mid-print, and the automated detection process is fairly simple: a sensor, often placed right before the extruder, continually checks for the presence of filament.

If for any reason the filament is not detected anymore, the printer stops and performs a pre-defined procedure for allowing the manual replacement of the filament spool. Once that’s done, the printing process is resumed from where it had stopped.

There are a few reasons to have a filament sensor wired to OctoPrint instead of the mainboard. For one, while many 3D printers already come fitted with filament sensors, OctoPrint completely ignores this feature unless it’s specifically linked, and it will continue the “printing” process even though no material is being actually extruded.

For machines shipped without runout detection, the whole wiring and firmware setup required to add one directly onto the mainboard can be extremely complicated. Getting a filament sensor working with OctoPrint is incredibly easy by comparison, as we’ll see later on.

Back to Contents

Advertisement
Advertisement
OctoPrint Filament Sensor: The Basics

The Hardware

Mechanical switches are by far the most common sensor used for filament runout detection
Mechanical switches are by far the most common sensor used for filament runout detection (Source: STYLESUXX via Cults)

There are different types of sensors used for filament runout detection, but the majority of sensors can be described as being either mechanical switches or optical sensors.

The mechanical sensors are usually the same models used for axis limit switches and activated by a lever and button. This type of sensor usually requires some sort of mechanism to properly guide and detect the filament as it passes through.

Optical sensors, on the other hand, require simpler physical setups and generate almost no friction to the filament as they don’t rely on contact. However, these sensors are known to be more fragile and to struggle to detect translucent filaments.

Naturally, there are other types of sensors, although they’re less common. Prusa MK3S‘s filament sensor is a hybrid one, combining an IR laser and triggering mechanical lever. BigTreeTech’s Smart Filament Sensor has a different build with an encoder, which makes it able to detect filament jams as well.

BigTreeTech Smart Filament Sensor
Commissions Earned Check price at

Back to Contents

Advertisement
Advertisement
OctoPrint Filament Sensor: The Basics

Plug-in Options

Optical sensors are frictionless but less reliable than its mechanical counterparts
Optical sensors are frictionless but less reliable than their mechanical counterparts (Source: Matt's Railroad Blog)

The plug-ins created by users are maintained in the OctoPrint Plugin Repository and can be installed via the Plugin Manager in OctoPrint. There’s a huge number of plug-ins available, and sometimes they overlap featurewise, which is actually the case for filament runout detection.

We’ve narrowed our choices down to three plug-ins based on popularity and the diversity of features:

There are many other plug-ins for runout detection, each with its own peculiarities and features if you want something other than what’s presented above. Be sure to keep an eye out for new plug-ins and updates to existing ones.

Back to Contents

Advertisement
Advertisement
OctoPrint Filament Sensor: The Basics

Getting Started

Filament runout detection is often underestimated, but it's a fairly simple tweak
Filament runout detection is often underestimated, but it's a fairly simple tweak (Source: DIYode)

Don’t underestimate the usefulness of filament runout detection: It might save you from a lot of stress and wasted material. Possibilities in terms of hardware are huge, from DIY options to plug-and-play solutions, and setting it up in OctoPrint is a fairly simple task.

For detailed instructions on how to get a filament sensor up and running on OctoPrint, be sure to check Rushmere3D’s YouTube tutorial or re-NABLE Lab’s tutorial on Instructables.

Back to Contents

Advertisement
Advertisement

Lead image source: DIYode

License: The text of "OctoPrint Filament Sensor: All You Need to Know" by All3DP is licensed under a Creative Commons Attribution 4.0 International License.

CERTAIN CONTENT THAT APPEARS ON THIS SITE COMES FROM AMAZON. THIS CONTENT IS PROVIDED ‘AS IS’ AND IS SUBJECT TO CHANGE OR REMOVAL AT ANY TIME.

Advertisement