Integrating a Filament Detector

I found this wonderful filament detector designed by Andrew Tunell :

I’d like to integrate it into the TAZ 6, but in order to to so … I need to know if I can build the firmware ( or have a firmware built ) that supports the “filament out pause” function.

Is there a free pin on the RAMBO, or on the extruder harness connector, that I can hook this detector up to?


Not sure about integrating directly into the RAMBO (or support in firmware)… I think there was a thread a while back.

You could use the filament sensor plugin for Octoprint and the Raspberry Pi.

I don’t use a Raspberry Pi ( Octoprint/Octopi/AstroBox ) to control my printer. Plus, external “stop/pause” will wait for the buffer to drain the command … by which time you have lost the print. when the filament runs out, it’s important for the print to stop immediately, and the Lulzbot must give you a good loud alert beep and go into the “change filament” mode — get off the model, move over, stepper hold ON, and let you feed new filament in or clear out the bore and re-load the filament that you were using before starting up again.

Andrew Tunell’s detector is awesome because it measures that the filament has stopped moving. This means it’s detecting filament jams, as well as filament out, and I think of it as a critical-path item that every 3D printer should have.

I’m slowly working on getting one of these integrated with a Rambo board. The main difficulty is that the RAMPS pin used in the instructions is slightly relocated on the Rambo board, requiring a bit of firmware tweaking to get working.

Here is the current state of the sensor project. I also have an X and Y magnetic strip position feedback sensor over I2C to install as well. The main holdup has been developing all the overhead cable path pieces, which is now completed. and making the mount for the monitor and fillament width detector, which remains in progress. Mainly because I was destracted by the Cello. I’m using the new Taz I am building as a test platform, which has slowed progress a bit as well. It’s getting there though.

There is a bit mroe information on the pin assignments here:

Edit: THe current form of the housing is here:

You can also see the overhead gantry cable path covers there. Those will get you from the control box over to one of the upper right corners with hidden wire runs

Do you need to rebuild the firmware? Or will it work with the stock firmware currently shipping with the TAZ 6? Which pin on the RAMBO are you connecting to?

Yes, I think its a good idea to sense filament movement.

My thought was to put the optical sensor on the top or side frame. So when the filament is out, I would still have a few inches of play. And the immediacy of would be as much a risk.

You will almost certanly need to make alterations to the firmware in configuration.h and pins.whatevertheextensionis Pin D44 is available, it’s just part of the auxiliary servo pin block on the Rambo. It should still be accessable the same. I haven’t actually got mine working with it yet, not because of any particular technical difficulty, I just haven’t got around to integrating it yet. It was more of an asthetics holdup to get the cable runs cleaner.

I’m still looking for the source code to the LulzBot TAZ 6. Have the release code + patches been posted to, or just the binaries?

You can view all of our stable versions of each printer here:

Internal development server (syncs every 30min): (The 6 is currently on olivebranch and oliveoil)

We have a code repository where you can pull individual files, clone, view commits, etc:

We hope this helps!

I realize this post is over 5 months old, but I thought I’d pass along a link to my TAZ 6 filament sensor in case you (or anyone else) are still searching for a solution. It uses an Omron optical sensor and when it triggers it will leave you a foot or so of filament. I’m using it with Octoprint, however, the SX472 sensor works from 5-24VDC. I’m confident you could easily integrate it with the RAMBo board. Here is the link: