Disclaimer: This is an independent resource site. Not affiliated with the Voron project or its development team.

Voron Filament Runout Sensor — Best Mods and Setup Guide

Sensor Mod Klipper Electronics V2.4 Trident V0.2

A filament runout sensor is one of the most practical additions you can make to any Voron printer. It detects when filament has run out or broken, pauses the print at a known position, and waits for you to reload. Without one, a spool that empties mid-print means a failed print — hours of wasted time, wasted filament, and a potential nozzle clog. This guide covers every popular runout sensor mod for Voron printers, from simple mechanical switches to advanced smart sensors with filament detection features.

Last updated: May 2025. We compare mechanical, optical, and BTT smart sensor options. All pricing reflects China-direct sourcing via AliExpress or our mini-program. Installation difficulty ranges from easy to moderate depending on the sensor type and your printer's wiring configuration.

Why Add a Filament Runout Sensor?

The Voron ecosystem does not include a runout sensor in the standard BOM for any model. While you can print without one, the risk is significant. A single overnight print lasting 12+ hours has a non-trivial chance of running out of filament. Here is what a runout sensor gives you:

In short, a filament runout sensor is the highest-ROI upgrade you can make. For under $10, you eliminate the most common cause of failed long prints.

Sensor Types Compared

1. Mechanical Microswitch Sensor

The simplest design. A lever-actuated microswitch is depressed when filament is loaded. When the filament runs out, the lever springs back, opening or closing the circuit. These are reliable, cheap, and easy to wire.

Pros: Costs under $2, extremely reliable, no electronics required beyond the switch itself, works with all filament types including flexibles.

Cons: Requires a printed body and lever, adds mechanical resistance to filament path, can wear out after 50,000+ cycles (unlikely to be an issue for hobbyists).

China-direct cost: Microswitch $0.50-1.50 (10-pack on AliExpress), printed body $3-5 (pre-printed). Total: ~$4-7.

2. Optical Sensor

Uses an infrared LED and phototransistor pair. Filament passes through a slot between the emitter and detector. When filament is present, it blocks the beam. When filament runs out, the beam reaches the detector, triggering the sensor.

Pros: No mechanical wear, no resistance to filament path, compact, very fast response time.

Cons: Transparent filament (natural PETG, clear PLA) may not trigger optical sensors reliably. Requires a 5V supply and a pull-up resistor in most cases.

China-direct cost: Optical sensor module (PMS-003 or similar) $1.50-3, printed mount $2-4. Total: ~$4-7.

3. BTT Smart Filament Sensor (SFS 1.0 / 2.0)

BigTreeTech's Smart Filament Sensor combines a filament runout switch with a rotation encoder. The encoder measures filament movement — if the encoder stops turning but the extruder is commanded to move, the sensor detects a jam or slip. This is the most advanced option available.

Pros: Detects both runout AND jams/slips, includes a Bowden coupler for clean integration, LED status indicator, compact footprint.

Cons: Pricier than simple sensors, requires Klipper configuration for the encoder function, slightly larger than microswitch-only designs.

China-direct cost: BTT SFS 2.0 $8-12, mounting bracket $3-5. Total: ~$11-17.

Parts List — Mechanical Microswitch Sensor

This is the recommended build for most users. Simple, reliable, and under $7.

Part Quantity China-Direct Price Notes
Microswitch (3-pin, lever type) 1 $0.50-1.50 SS-5GL or similar, buy 10-pack
Printed sensor body (ABS/ASA) 1 set $3-5 STL from Voron User Mods
JST XH 2.54mm 3-pin connector 1 $0.50 Pre-crimped or DIY
PTFE tube (4mm OD, 2mm ID) 100mm $0.50 Scrap piece
M3 screws and nuts 4 each $0.50 From your Voron hardware stash
Total   $5-10  

For the BTT SFS 2.0 smart sensor, budget approximately $11-17 including the module and a printed bracket. The smart sensor includes its own Bowden coupler and LED indicator, so no additional parts are needed beyond wiring.

Compatibility by Voron Model

Voron Model Mounting Location Recommended Sensor Notes
V2.4 (all sizes) Rear frame extrusion or side panel Mechanical or SFS 2.0 Plenty of frame space, easy wiring
Trident (all sizes) Rear frame or top extrusion Mechanical or SFS 2.0 Similar mounting options to V2.4
V0.2 Top of the mini-StealthBurner or rear frame Optical (very compact) Limited space, optical sensor fits best
Switchwire Side of the frame near spool holder Mechanical Easiest routing for Bowden-style printers
Legacy Rear of the frame above the spool Mechanical or Optical Choose based on space available

Installation Steps — Mechanical Microswitch Sensor

These instructions assume a V2.4 300mm or Trident. Adapt the mounting location as needed for your model.

Step 1: Print the Sensor Body

Download the STL from the Voron User Mods repository or Printables. Search for "Voron filament runout sensor" — there are dozens of designs. Look for one with:

Print in ABS or ASA at 0.2mm layer height. Use 4 perimeters and 40% infill for strength. The lever arm needs to be stiff enough to spring back reliably.

Step 2: Assemble the Sensor

Insert the microswitch into the printed pocket. It should snap in with light pressure. If it is loose, use a dab of superglue on the bottom edge. Route a 100mm piece of PTFE tube through the sensor body so the filament path passes directly over the switch lever. The lever should be depressed when filament is loaded and released when filament exits. Secure the PTFE tube with a printed clip or a M3 screw clamp if your design has one.

Step 3: Mount the Sensor on the Frame

Slide two M3 T-nuts into the appropriate slot on your 2020 extrusion (rear vertical extrusion is typical for V2.4). Mount the sensor body using M3x8mm or M3x10mm screws. Orient the sensor so filament enters from the spool side and exits toward the extruder. The PTFE tube should have a smooth, low-angle curve from the spool to the sensor and from the sensor to the extruder.

Step 4: Wiring

The microswitch has three pins: COM (common), NO (normally open), and NC (normally closed). For a typical Klipper setup, use the NC configuration so the circuit is closed when filament is present (switch depressed). Wire as follows:

Use a JST XH 3-pin connector if your board uses those, or solder directly to the board header. Keep the wire run under 500mm to avoid signal noise. For a Trident or V2.4, route the wire along the existing cable chain or zip-tie it to the frame.

Klipper Configuration

Add the following to your printer.cfg. This example uses the NC (normally closed) wiring on pin PC14 — adjust the pin to match your board and available GPIO.

# Filament Runout Sensor
[filament_switch_sensor runout_sensor]
switch_pin: !PC14
pause_on_runout: True
runout_gcode:
  {% raw %}
  M117 Filament Runout
  SAVE_GCODE_STATE NAME=runout_state
  G91
  G1 E-3 F300
  G1 Z20 F600
  G90
  G1 X150 Y250 F6000
  G91
  G1 E-20 F300
  G90
  }{% endraw %}
insert_gcode:
  {% raw %}
  M117 Filament Loaded
  RESTORE_GCODE_STATE NAME=runout_state
  }{% endraw %}

The pause_on_runout: True setting tells Klipper to pause the print automatically. The runout_gcode section handles retracting filament, lifting the Z axis, and parking the toolhead. When you reload filament, the insert_gcode restores the previous state and resumes printing. You will need to manually send RESUME from the Mainsail or Fluidd interface after reloading.

BTT SFS 2.0 Klipper Config

If you are using the BTT Smart Filament Sensor v2.0, add the encoder section for jam detection:

[filament_motion_sensor SFS]
detection_length: 2.0
extruder: extruder
switch_pin: !PC14
encoder_pin: ^PD2
pause_on_runout: True
runout_gcode:
  M117 Filament Runout or Jam
  SAVE_GCODE_STATE NAME=runout_state
  G91
  G1 E-5 F300
  G1 Z20 F600
  G90
  G1 X150 Y250 F6000
  M109 S{params.TARGET}
insert_gcode:
  M117 Filament Loaded
  RESTORE_GCODE_STATE NAME=runout_state

The detection_length parameter sets how much filament must move through the sensor before it registers as loaded. 2.0mm is a good default. The encoder pin should be connected to the SFS module's encoder output. This setup detects both runout (no filament in the sensor) and jams (extruder is moving but the encoder is not turning).

Common Issues and Troubleshooting

Difficulty Level

Mechanical microswitch sensor: Easy (1/5). No soldering required if you use pre-crimped connectors. The printed parts snap together. Wiring is two or three wires. Klipper config is a straightforward copy-paste. Expect 1-2 hours total including printing the parts.

Optical sensor: Easy (1/5). Similar to mechanical but requires wiring a 5V supply. Some designs use a PCB that needs light soldering.

BTT SFS 2.0: Moderate (2/5). The encoder adds complexity to the wiring and Klipper config. Expect 2-3 hours including calibration of the detection length parameter.

A filament runout sensor is the cheapest, most effective insurance against failed prints. For under $10, you gain the ability to run unattended prints overnight, detect broken filament immediately, and switch spools mid-print without visible layer lines. The mechanical microswitch design is the community standard for good reason — it is dead simple, costs almost nothing, and works with every filament type. Build one this weekend and you will never run a long print without one again.

Get Factory-Direct Runout Sensor Kits

We offer pre-assembled filament runout sensor kits for all Voron models — mechanical, optical, and BTT SFS 2.0 smart sensor variants. Each kit includes the sensor module, printed ABS mount, pre-crimped wiring harness, and PTFE tube inserts. All components sourced directly from manufacturing partners at 30-50% below AliExpress pricing. Includes step-by-step assembly guide and pre-configured Klipper profile.

Inquire About Sensor Kits
🚨

Voron LDO 商标 · 域名 打包出售

Trademark & domains sold as one package

Voron LDO 商标 (中国区 · China)
voron.cn
voronldo.com
ldovoron.com

有意者请联系 · Contact us:

📧 346290742@qq.com
📞 +86 13522926174