[Filament runout]How to modify the endstop as the filament runout?

You can find the user guide here! If you want to post the problem/issue, please go to others section!
User avatar
Site Admin
Posts: 237
Joined: Fri May 10, 2019 11:40 pm

[Filament runout]How to modify the endstop as the filament runout?

Post by William » Fri Nov 20, 2020 8:34 pm

1. You have some experience as a DIY player.
If you are not familiar with this then please close this post.
2. You need to upgrade the TMC2208 to TMC2209 UART mode
(This is not a mandatory requirement, I just assume that you have an additional endstop to use in this case)
3. When we use the TMC2209 UART for the printer then you can get 2 endstop for spare.
So we can use one of it for the filament runout sensor
4. You have a PC/laptop to upload the firmware for the printer

The filament runout sensor plate created by myself. It is not an official one.
But I will update it if you find a problem with it.
If you have any question, please post it in another section or contact me via facebook:

Well, let us get started with it

1. Download this plate for the filament runout sensor
Filament runout plate_final.zip
(76.16 KiB) Downloaded 64 times
You need to use the m3x6 and m3x10 screw to tighten it. You can find it came with the package of the printer.
If you lost it unfortunately then you need to buy it via your location.
Then you can use the quick fitting to lead the filament into this part.
Filament runout.png
Filament runout.png (80.33 KiB) Viewed 1054 times
Refer to this pic then mount it and wiring it
1.jpg (121.41 KiB) Viewed 1054 times
2.jpg (101.47 KiB) Viewed 1054 times
2. Download the firmware and extract it

3. Upload it via Cura.
How to upload it, you can refer to this video:

4. Go to LCD of the printer:
Initialize the EEPROM, Restore the default and store the setting

5. Start print and enjoy the printing


1. Why it under test, it doesn't detect it?
1) You may didn't insert the filament at the start. It will show the error of "M600: Too cold"
It means it can't detect the filament, to avoids the broken printer it will disable the filament detector.
2) The filament runout sensor metal shrapnel bent too much and the filament inserted will not click the endstop.
You can refer to its led then you can know it detects or not.
3.jpg (113.05 KiB) Viewed 1054 times
2. I bought a filament runout sensor from a store. Will it fit for it?
Well. This question is hard to answer, but I can tell you: The mechanical one can fit.
You need to know the filament runout electric level may different: Pull up/Pull down
Eryone endstop electric level is pull up. If your sensor is pull down then you just need to change configuration.h as this:

Code: Select all

  #define FIL_RUNOUT_INVERTING false // Set to true to invert the logic of the sensor.
Then it should works

This part is still doesn't perfect. When the filament was unload, you may hard to remove the filament.
## To be friendly and stay humble
- Pride and ignorance are eternal enemies