Tutorial: Orbiter filament runout sensors on RatOS

I’ve been a big fan of the Orbiter extruders (Massive shout out to Róbert Lőrincz for all his orbiter projects) for quite a while and I decided it was time to add filament runout sensors to all my printers. Quite frankly I was done with babysitting the end of a roll.

The sensor is really nice, it adds very minimal addition drag onto the filament path, has a button to control loading and unloading while you are at your printer and a nice indicator LED to show the status of the sensor.

Trianglelab were kind enough to send me one to test!

BOM

  • Orbiter filament sensor kit (Buy the appropriate one for the version of the orbiter you have – this guide is showing it with V1.5)
  • Printed filament sensor housing (only applicable if your kit didn’t come with the SLS nylon part)

Unboxing

The contents of the kit varies depending on which version you buy. For those running the V2 then you get the SLS nylon housing included. For those running V1.5 then you need to print your own!

The kit thankfully comes with a spare ball bearing which is handy for those who are clumsy like myself and promptly dropped and lost the 1st one!

Review

Honestly this is one of those little quality of life improvements for a printer that once you have one you are never quite sure how you lived without it. Sure you could add a generic filament sensor from any supplier but unless you mount it right on the extruder you can’t use up the very last bit of filament each time!

Since using it I haven’t had a single false trigger during printing. It has also never failed to pause a print when filament ran out and I am finally getting through the stupid number of nearly finished spools I had been hoarding!

Now the loading and unloading side of things isn’t quite so reliable. I find that sometimes feeding the filament in it can get stuck and therefore miss the auto extrude portion of the macro while you fiddle to get the extruder gears to catch. This is a more generic comment on the Orbiter extruder as I had the same experience loading and unloading filament before I had the sensor.

So to summarise if you have an Orbiter extruder and are not running the filament runout sensor I think you are mad and should just go out and buy one! You won’t regret it.

RatOS doesn’t support this out of the box but it is very easy to install and I have tested that the provided macros run nicely alongside all the other wonderful RatOS functionality! Keep reading for how to install in specifically on RatOS

Installation

Firstly if using the V1.5 then you need to print the sensor housing (I suggest using black ABS) and the light guide (CAD here, STLs here).

Now at this point I need to apologise because I got too excited and just installed everything without taking photos! Credit for the images below has been added below each image.

Install one of the ball bearings into the round cavity near the filament outlet. The board is then slid into the housing – You need to be both careful yet firm with this operation. The fit is tight but if you feel like you are having to force it in. Take it back out, check if your print needs cleaned up anywhere and check the angle/alignment. There is a vertical slot that the side of the board should go into. Once it reaches the correct position it should audibly click into place. (There is a video from the Orbiter channel here)

Source: https://orbiterprojects.com/orbiter-filament-sensor/

Wiring

The sensors come with a pre-crimped wire that should follow the wiring convention below. Note that 5V can also be used so long as the controller input pins are also tied to 5v.

Now RatOS supports a lot of boards these days and although I have only tested this on the Mellow Super 8 It should be applicable to the others because they almost all have a BLTouch connector!

The BLTouch connectors all have the follow pin out shown above. What will change is the input pins you need to assign in the firmware stage! Wire the sensor as per the table shown below. The stock wires that came with my build should be long enough for up to a 400 size machine, for those with a 500 you will likely need to extend them.

Orbiter filament sensorBLTouch connectorMellow Super 8 pin assignment
BTT Octopus v1.1/Pro
BTT Octopus
GNDServo Gnd
3.3/5vServo 5v
Filament SensorServo IO pinPC6PB6PA2
Probe GND
Filament UnloadProbe IO pinPC3PB7PA0

Firmware

Now this is almost the best part about the sensor. There are a set of Klipper macros written to handle all the loading and unloading. These have been cleverly written to trigger when adding filament including heating the extruder if it is below a safe temp.

Download the config file from here

Upload this config file into your config folder.

Add the following include to the user override section of your printer.cfg file.

Now open OrbiterSensor.cfg. You need to replace the default pin with the one from the table I supplied above (or whatever pins you ended up using). Below is my example for the Mellow Super 8. Remember to do both the sensor and the unload sections!

The Orbiter config file creates two new load and unload macros – I suggest you leave the original RatOS ones as they are and simply hide/swap out the menu items for them. This way if you need to fall back onto the RatOS ones for any reason you can do in the future. (If you are feeling clever you could also override them but that is up to you)

If you go to your dashboard view, then settings, then Macros. You should see the filament group listed. We are going to edit that to add the Orbiter unload and load macros and remove the RatOS ones.

Here I have added the two new ones (filament_load and filament_unload). You should also remove LOAD_FILAMENT and UNLOAD_FILAMENT from the menu to avoid confusion.

That’s it. You should now be able to test using some filament whether or not the sensor is working correctly (Green light = filament loaded, red = filament runout). Once happy the sensor is working I would clip the filament about 10cm long and start a print. The print should pause and the filament is ejected so you can load a new one. When you poke the new filament in it should start to automatically load the filament.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: