Best Filament Jam Sensor solution

What is the problem?

Looking for a filament jam sensor solution. I bought the TriangleLab runout sensor, thinking that for some reason, I was going to be able to protect from both. Then once I wired everything up, got a plugin going, and was ready to print again...I realized this was going to pause if I ran out but it has no way of knowing if there is a jam.

So what do I do in the case of a jam? This sensor looks like it would work well for runout, but should I send it back and opt for a two-in-one solution, or run two separate sensors?

Either way, what are some good options that work? I have seen a few on Amazon, but the reviews aren't as attractive.

Additional information about your setup

OctoPrint version 1.4.0, OctoPi version 0.17.0, printer: Creality Ender 5 Pro, firmware (no clue at the moment), browser (n/a), operating system (n/a), TriangleLab Filament Runout Sensor

I used this printed switch holder and wired it in series with my filament out sensor that is hooked to my Pi. This way if there is either a filament out or jam detection, the printer pauses so I can take the required action.

Works like a charm for me.

1 Like

How does that detect a jam?

I’m thinking about setting up an encoder turned by the filament and monitoring the extruder. Comparing the two would detect jams, filament caught on spool, and no filament.

I don't think you need to monitor the extruder. I you have a rotary encoder measuring filament moment, both forward and back (retraction), a simple rule like if forward is not greater than back over a rolling period (eg 10 sec.) then a jam/runout is detected.

True but you’d want to know when your printing or not.
I’m also interested in the beginning or end of a print when the slicer is having the extruder squishing or smoothing the filament.

Sorry for the delay in response, but camera battery was dead and had to charge it up.
This is the switch that I used for the jam sensor (as well as for the filament out sensor) and as I use the format of having to close the switch upon detection of either, they are wired in parallel.

Here I have rotated the unit so you can see how the switch is mounted in the housing and the path of the filament as shown by the arrow up to the extruder.
If the filament jams on the reel or excessively unwinds and fall on the back side of the reel, the tension of the extruder pulling will pull up on the looped lever and close the switch. This will signal the Pi that you need to fix the problem. The filament out sensor is a similar setup, but the filament holds the switch lever down and releases it when the filament passes through.

And here is a shot in the normal position:


The original model I posted is designed to be mounted on the 2020 frame. For various reasons, I wanted to mount it to the table that I have the printer mounted on.

Hope this helps.


"True but you’d want to know when your printing or not." I didn't think of that.

Sorry, I used the wrong nomenclature. When I said jam I was referring to problems at the extruder like stripping the filament or a clog. Your talking about the filament getting hung up at the reel or spool of filament. You have one switch monitoring the presence and one monitoring the tension. All things that can go wrong.

There are multiple things that can go wrong which prevent filament from being fed to the nozzle. They can be classified into two categories, before the hobbed bolt and after the hobbed bolt. The after category is usually a clog and almost always results in the hobbed bolt "chewing" the filament instead of feeding it. This can be detected before the hobbed bolt with a sensor that detects filament movement, for example, a rotary sensor.

Another before the hobbed bolt problem which is probably most common is just plain running out of filament. This can be detected by a runout type sensor (or a rotary sensor). The next most common problem is probably those related to tangles at or near the filament spool. An excess tension sensor (or a rotary sensor) can be used to detect these.

Adding a runout sensor is the simplest and detects the largest percentage (by occurance) of failures. To detect the rest of the problems will require a more complicated sensor (or sensors) and some software (or firmware) to decipher the signals.

How you define "best" will dictate how much money and/or time will be needed to solve the problem. Searching "3d printer filament jam sensor" yields quite a variety of solutions one of which will surely satisfy your "best" criteria.

There seems to be a lack of experience/feedback for many of the ones I have ran into though. There are some with reviews that don't really lead you into any specific direction, many with no reviews, and some with bad scores, but only a few reviews that sound uncertain. It is best/nice to hear the experience of others who have used one themselves and the what success it brought them.

@OutsourcedGuru did one with a mouse wheel and some python code.

1 Like

In my humble opinion, anything filament-related with respect to delivery and problems should be dealt with as filament movement rather than filament detection, filament absence, etc. There are just too many weird things that can happen that can negatively impact your print job and the filament remains unbroken.

1 Like