# Getting BTT filament sensor to work

(This is a pretty much duplicate post from one I put over on the Reddit, but it hasn't received a lot of traction over there so I figured I'd post):

Like many posts I've seen on the internet, I'm having trouble getting my BTT smart filament sensor to work.

• Ender 3 Pro
• BTT E3 RRF Mainboard with IDEX module
• Marlin Firmware I've edited in ways I mention below

What is going wrong:

It triggers way too easily. Right as a print starts, it'll trigger and say I ran out of filament. And/or it'll make it maybe half a layer and then trigger.

Steps I've taken:

• I started by following the Teaching Tech YouTube video to get started and install it. Tried to match literally every change of his in the firmware I saw. Things like runout distance set to 7 and runout state set to low instead of high.
• Quick note on those. In several places (like this) comments suggest changing the distance to more than 7 mm to make it less 'picky'. But in several comments (like here, and here), people suggest the official recommendation from BTT is 7 mm and there's a reason to set it at that. I've tried all sorts of distances and none seem to work.
• In at least one place (like here) people suggest that even if you set it to 7 mm in the firmware, it doesn't always take effect and you have to go to the configuration menu in your printer and set it, then store the settings. I've done that as well.
• I've set the runout state to either low or high, seems to still falsely trigger either way.
• The only solution I haven't tried yet (will try tonight when I get home) (did that , still no luck) is in this comment it suggests adding M75 to my code to 'start the print job timer' so it won't trip 'after the initial 7 mm runout'. Could someone explain that one to me? Also, I feel like that's not it because even when I let it go through its paces and unload and then load, it'll trip again soon after.

The problem:

I just feel like it's still way too sensitive. And sure, in an ideal world I want it to detect all the things it's 'supposed' to detect like jams, tangles, etc... but I really just care the most about it noticing I ran out of filament. Are there any settings in the firmware or anywhere else I should take a look at?

My latest thought is that maybe I have the sensor mounted in a different direction than it should be? Every video or picture I see online looks like the filament is going the opposite direction compared to what I have, but I've also seen comments where it says that doesn't matter.

I also have seen comments like here where the author recommends a HUGE runout distance (50) as that could be a problem. I'm willing to try that.