Sensores de filamento
Guía completa y actualizada de sensores de filamento para Klipper - instalación, configuración y troubleshooting
Una impresión de 12 horas que se queda sin filamento a mitad de camino es frustrante y costosa. Un sensor de filamento pausa automáticamente la impresión cuando detecta falta de filamento o problemas de flujo, permitiéndote cambiar material sin perder la pieza.
El sensor vigila el filamento continuamente: detecta si no hay material, pausa de forma limpia, te avisa para cambiar, y reanuda exactamente donde se quedó.
¿No sabes cuál sensor elegir? Mira la tabla de abajo y busca tu rango de presupuesto, o ve directamente a la sección ¿Cuál elijo?.
📊 Comparativa Rápida de Sensores
Nota sobre Orbiter: El precio de 30€ es SOLO el sensor. El extrusor Orbiter completo cuesta 80-100€, pero ya incluye el sensor integrado.
Links de AliExpress: Son búsquedas con nuestro ID de afiliado. Cambia modelo/marca dentro de AliExpress si prefieres otro proveedor.
¿Cuál elijo?
Sensor óptico/pulsador genérico.
Funciona. No detecta atascos, solo si hay o no hay filamento — pero para la mayoría de usuarios domésticos es suficiente. Si lo rompes, compras otro por 5€.
→ Lee la sección Pulsador/Óptico más abajo.
BTT SFS v2.0, sin dudar.
Detecta ausencia Y atascos, sin rodamientos, sin mantenimiento. La mejor relación calidad-precio del mercado ahora mismo.
→ Lee la sección BTT SFS v2.0 más abajo.
Dyze Orthus, si imprimes 24/7 o en granja.
Encoder óptico de precisión, sin partes móviles, calibración muy fina. Para uso profesional donde no te puedes permitir un fallo.
→ Lee la sección Dyze Orthus más abajo.
Usa el sensor integrado, no compres nada más.
Si ya tienes un extrusor Orbiter, el sensor viene incluido y está optimizado para esa plataforma.
→ Lee la sección Orbiter más abajo.
Configuración por Sensor
Sensores básicos que detectan si hay filamento o no. No miden movimiento ni detectan atascos — solo presencia/ausencia. Para la mayoría de usuarios de impresión doméstica es más que suficiente.
Hay dos variantes:
Mecánico (pulsador): una palanca que el filamento presiona al pasar
Óptico: un LED + fotoreceptor que detecta si el filamento corta el haz
Son funcionalmente idénticos. El óptico aguanta mejor en máquinas con mucha vibración.

Instalación Física
Configuración en Klipper
Parámetros clave:
switch_pin
Pin donde va la señal del sensor
pause_on_runout
True = pausa automática al detectar problema
event_delay
Espera (segundos) antes de reaccionar — sube este valor si hay falsos positivos
pause_delay
Espera antes de ejecutar el runout_gcode
Pros y Contras
✅ Lo bueno
Muy barato (5-15€) — compra varios de reserva
Sin mantenimiento
Compatible con cualquier mainboard
Fácil de diagnosticar: funciona o no funciona
❌ Lo malo
No detecta atascos
No detecta flujo lento
Falsos positivos si el Bowden es muy largo
Requiere que el filamento presione físicamente bien
Troubleshooting
Sensor no detecta cambios
Invierte la lógica del pin: cambia
switch_pin: PA4porswitch_pin: !PA4Comprueba la conexión física (¿el cable SEÑAL está en el pin correcto?)
Verifica que el filamento presiona completamente la palanca
Falsos positivos frecuentes
Sube
event_delaya 5-10 segundosAsegúrate de que el bracket no vibra durante la impresión
Monta el sensor en un soporte más rígido
Se activa pero no pausa la impresión
Verifica que
[pause_resume]está definido en tuprinter.cfgComprueba que la macro
M600existe
Test Final
Sensor profesional de movimiento. Encoder óptico que detecta cada 0.5mm de desplazamiento, sin partes móviles, sin mantenimiento. La opción para granjas de impresión o producción 24/7.
Lo que lo diferencia de los demás:
Detecta atascos antes de que arruinen la pieza
Sensibilidad ajustable por tipo de filamento
"Instala y olvídate durante años"
¿Vale la pena para uso doméstico? Solo si imprimes muy frecuentemente y no te puedes permitir fallos. Para impresión casual, el BTT SFS v2.0 hace el mismo trabajo por mucho menos.

Tabla de Calibración
El parámetro detection_length depende del diámetro del filamento, la posición del selector y la sensibilidad que quieras.

Regla práctica: Usa el valor de la tabla + 2-3mm para reducir falsos positivos durante los primeros días. Afinas después.
Instalación Física
Configuración en Klipper
Indicadores LED
🟢 Verde fijo
Alimentado y listo
🟢 Verde parpadeante
Filamento en movimiento (detección activa)
🔴 Rojo
Sin alimentación o error
Calibración Paso a Paso
Pros y Contras
✅ Lo bueno
Ultra-preciso (cada 0.5mm)
Sin partes móviles
Sin mantenimiento
Compatible con cualquier filamento
❌ Lo malo
Precio elevado (80€+)
Requiere calibración inicial
Sobredimensionado para uso doméstico
El sensor más recomendado para uso general. Combina dos sensores en uno: un switch que detecta si hay filamento, y un encoder que detecta si está fluyendo. Si uno falla, el otro te cubre.
Sin rodamientos, sin mantenimiento, precio razonable. Si no sabes qué sensor comprar, compra este.

Instalación Física
Truco: Si puedes, usa un bracket de hot-swap. Facilita el reemplazo sin desmontar todo el extrusor.
Configuración (Dual Sensor)
pause_on_runout: False es intencional en ambos sensores. Las macros de abajo controlan cuándo pausar realmente. Con True en los dos puede haber conflictos y pausas duplicadas.
Parámetros críticos:
detection_length: 2.88mm= mínimo del sensor. Si hay falsos positivos, sube +1mm (hasta ~5mm como máximo).pause_on_runout: False= la pausa la gestiona la macroFILAMENT_CHECK.
Macros de Control
Integración en el Laminador
Añade esto al G-code de inicio en Cura, PrusaSlicer o el que uses:
v2.0 vs v1.0
v2.0 — esta versión
Sin rodamientos
Sin mantenimiento
Más compacto
25-35€
✅ Cómprala
v1.0 — versión anterior
Con rodamientos (lubricar cada 6 meses)
Más grande
15-25€
Solo si el presupuesto es muy ajustado
Troubleshooting
Ambos sensores reportan false sin razón
Verifica que llegan 5V al sensor (mide con multímetro si es necesario)
Comprueba el cableado GPIO pin a pin
Ejecuta
FIRMWARE_RESTART
Solo el switch funciona, el encoder no
Verifica que el filamento pasa correctamente por el canal del encoder
Sube
detection_lengtha 5mmComprueba que no hay suciedad o pelos dentro del encoder
Falsos positivos continuos
Sube
event_delaya 5 segundosRevisa que el filamento está bien alineado en el sensor
Comprueba que el soporte está rígido y no vibra
Test Final
La versión anterior del SFS. Mismo principio que el v2.0 pero con rodamientos que necesitan lubricación periódica. Si puedes, coge el v2.0 — por 10€ más te ahorras el mantenimiento.

La diferencia clave con el v2.0: el v1.0 necesita switch_pin: ^PA9 (nota el ^). Sin el ^ de pull-up, el sensor no funciona. Es el error más común en esta versión.
Instalación Física
Configuración
Diferencias clave respecto al v2.0:
detection_length: 7mm(vs 2.88mm en v2.0 — los rodamientos necesitan más margen)switch_pin: ^PA9— el^activa pull-up, es imprescindibleSin
^: el sensor nunca detecta nadaSi aun así no funciona: prueba sin
^(algunos modelos lo tienen incorporado)
Mantenimiento de Rodamientos
Macros
Pros y Contras
✅ Lo bueno
Más barato que el v2.0 (15-25€)
Misma capacidad de detección de atascos
Fácil de encontrar
❌ Lo malo
Rodamientos requieren lubricación periódica
Más grande y aparatoso
El pull-up
^es un punto de fallo frecuente si lo olvidas
Test Final
Sensor integrado en los extrusores Orbiter v1, v1.5 y v2. Si ya tienes uno, el sensor viene incluido — solo hace falta cablearlo y configurarlo.
Tiene dos ventajas únicas respecto a otros sensores: botones físicos para carga/descarga de emergencia y un LED de estado visible en todo momento.

LED Indicador
🟢 Verde
Filamento cargado, listo para imprimir
🟠 Naranja
Botón de descarga presionado
🔴 Rojo
Sin filamento detectado
Cableado (4 cables)
GND
🔵 Azul
GND mainboard
Alimentación
🔴 Rojo
3.3V (o 5V con adaptación)
Señal filamento
🟢 Verde
Puerto servo o endstop
Botón descarga
🟡 Amarillo
Otro pin endstop
Pines de ejemplo para Octopus:
GND (Azul)
Servo GND
—
3.3V/5V (Rojo)
Servo 5V
—
Sensor (Verde)
Servo señal
PA2
Botón (Amarillo)
Endstop señal
PA0
Instalación
Orbiter v2.2: Las señales están invertidas. Añade ! delante de cada pin:
Macros Incluidas en OrbiterSensor.cfg
El archivo ya incluye todo lo necesario:
LOAD_FILAMENT— carga automática al insertar filamentoUNLOAD_FILAMENT— descarga automática al pulsar el botónLos botones físicos ejecutan estas macros directamente, sin pasar por la interfaz web
Macros Adicionales (Opcionales)
Pros y Contras
✅ Lo bueno
Integrado = menos cables que gestionar
Botones físicos = no necesitas la pantalla para emergencias
LED visible = sabes el estado de un vistazo
Compatible con Orbiter v1, v1.5 y v2
❌ Lo malo
Solo funciona con extrusores Orbiter
El extrusor completo cuesta 80-100€
Configuración algo más compleja que un sensor genérico
Test Final
🔍 Troubleshooting Avanzado
Diagnóstico Rápido
Antes de tocar nada en la configuración, comprueba el estado visual en la interfaz:
Problemas Frecuentes
❌ Estado siempre "filament_detected = false" sin razón
En orden de probabilidad:
Invierte la lógica del pin:
switch_pin: !PA4Verifica la alimentación (¿llega tensión al sensor?)
Comprueba que el GND está bien conectado
Ejecuta
FIRMWARE_RESTART
❌ El estado no cambia al insertar o retirar filamento
Verifica que el pin en
printer.cfges el correctoPrueba combinaciones:
PA4→!PA4→^PA4→^!PA4Comprueba el montaje mecánico: ¿el sensor presiona bien el filamento?
Si el filamento es muy fino o grueso, puede no activar el sensor
❌ Falsos positivos cada 2-3 minutos
Sube
event_delaya 10 segundosEl sensor probablemente vibra con la máquina — monta un bracket más rígido
Comprueba que el filamento no roza el sensor lateralmente
Añade amortiguación (goma fina) entre el sensor y el chasis
📈 Mejores Prácticas
Timing: Cuándo Activar y Desactivar
El error más común es tener los sensores activos durante el precalentamiento. El filamento frío, los micro-movimientos del extrusor y los cambios de temperatura generan falsos positivos que paran la impresión antes de que empiece.
La solución es simple: deshabilita en boot, habilita solo cuando el nozzle ya está caliente.
Integración con M600 (Cambio de Filamento)
M600 coordina la pausa limpia: retrae filamento, espera a que insertes el nuevo, y reanuda desde exactamente el mismo punto. Sin ella, una pausa simple deja el nozzle en medio de la pieza.
Referencia de Parámetros
filament_switch_sensor — Pulsador/Óptico
filament_switch_sensor — Pulsador/ÓpticoDetecta presencia/ausencia de filamento. Sin capacidad de detectar atascos.
—
0.5 – 10s
Espera antes de procesar el evento. Súbelo si hay falsos positivos por vibración
filament_motion_sensor — BTT SFS, Dyze Orthus, Genérico Motion
filament_motion_sensor — BTT SFS, Dyze Orthus, Genérico MotionDetecta movimiento real del filamento. Cubre ausencia + atascos + flujo lento.
7.0mm
2.88 – 15mm
Distancia mínima de filamento que debe moverse para registrar cambio. El parámetro más importante de este tipo de sensor — demasiado bajo = falsos positivos, demasiado alto = no detecta
—
0.5 – 10s
Espera antes de procesar el evento. Crítico en sensores de movimiento — demasiado bajo dispara falsas alarmas
Diferencia clave entre los dos tipos: filament_switch_sensor no tiene detection_length ni extruder porque no mide movimiento — solo sabe si el filamento está o no está. filament_motion_sensor necesita saber de qué extrusor viene el movimiento para calcular correctamente la distancia.
Latencia total estimada: 1 – 3 segundos desde el problema hasta la máquina pausada (suma de event_delay + pause_delay + tiempo de reacción del firmware).
🎯 Consejos y Advertencias
< 20€: Sensor pulsador/óptico genérico — funciona, sin florituras
20-40€: BTT SFS v2.0 — la mejor opción para la mayoría
> 60€: Dyze Orthus — solo para granjas o producción intensiva
Tienes Orbiter: Usa el integrado, no compres nada más
Síntomas:
La impresora pausa justo antes de empezar a imprimir
Ves
filament_detected: falsesin razón durante el calentamiento
Causa: el sensor estaba activo mientras el nozzle calentaba.
Solución:
Añade
[delayed_gcode SFS_BOOTDISABLE]para desactivar en bootLlama a
SFS_ENABLEsolo después deM109Llama a
SFS_DISABLEenEND_PRINT
Síntomas: falsos positivos cada 2-3 minutos, especialmente en impresoras rápidas o con camas volantes (bedslinger).
Soluciones en orden:
event_delay: 10— espera más antes de reaccionarBracket muy rígido — evita el plástico flexible para montar el sensor
Amortigua el punto de montaje con goma o espuma fina
Alinea bien el filamento — no debe rozar lateralmente el sensor
Mecánico (pulsador)
Más barato
Aguanta mejor las vibraciones
La palanca se puede desgastar con el tiempo
Óptico
Sin desgaste mecánico
Mejor para filamentos abrasivos (fibra de carbono, etc.)
Puede acumular polvo — limpia el receptor cada meses
BTT SFS v2.0
Nada
—
BTT SFS v1.0
Lubrica rodamientos
Cada 3-6 meses
Pulsador/óptico
Revisa presión mecánica
Cada 3-6 meses
Dyze Orthus
Revisa cableado
Cada año
Señales de que algo va mal: detección inconsistente de repente, más falsos positivos que antes, ruido anormal al pasar filamento.
Antes de dormir mientras imprime:
🆘 Referencias
Documentación Klipper oficial: https://www.klipper3d.org/G-Codes#query_filament_sensor
BTT SFS v2.0 GitHub: https://github.com/bigtreetech/smart-filament-sensor
Dyze Orthus: https://www.dyze.ca/pages/products/orthus-filament-sensor
Orbiter sensor: https://orbiterprojects.com/orbiter-filament-sensor/
Última actualización: 2026-05-22 Autor: HAL (Technical Writer - 3Dwork.io)
Con un sensor bien configurado y el test definitivo superado 3 veces, tus impresiones largas están aseguradas. Nunca más perderás una pieza por falta de filamento.
Última actualización
