- Stock: 8
- Modelo: Portable-Input-Shaper
El FYSETC Portable Input Shaper es un medidor de resonancias portátil para impresoras 3D con Klipper. Integra en la misma placa un microcontrolador RP2040 y un acelerómetro triaxial ADXL345, por lo que se conecta por USB-C al equipo que ejecuta Klipper y funciona como una MCU secundaria dedicada a la medición.
Permite localizar las frecuencias de resonancia de la máquina y calcular los parámetros de input shaper para reducir ringing o ghosting. Una vez obtenidos y guardados los valores, el módulo puede retirarse y utilizarse en otra impresora: no necesita permanecer instalado durante la impresión.
Qué aporta a la calibración de una impresora 3D
- Medición física de resonancias: registra la aceleración real de la parte móvil durante un barrido de frecuencias.
- Calibración automática: Klipper puede comparar distintos filtros y sugerir tipo y frecuencia de input shaper para X e Y.
- Conexión USB: evita llevar las señales SPI del acelerómetro a larga distancia hasta una Raspberry Pi o placa principal.
- Uso portátil: puede configurarse como archivo independiente, conectarse para calibrar y retirarse después.
- Montaje versátil: FYSETC documenta su instalación en Voron AfterBurner y StealthBurner y proporciona recursos para otros cabezales.
Input shaper compensa parte de las vibraciones mediante el perfil de movimiento, pero no corrige una máquina con tornillos flojos, correas mal tensadas, ruedas dañadas, guías que se atascan o un cabezal con holgura. La mecánica debe revisarse antes de interpretar la calibración.
Especificaciones técnicas
| Característica | Valor |
|---|---|
| Fabricante | FYSETC |
| Microcontrolador | Raspberry Pi RP2040 |
| Acelerómetro | ADXL345, tres ejes |
| Interfaz con el host | USB-C, como MCU secundaria de Klipper |
| Interfaz interna | SPI entre RP2040 y ADXL345 |
| Alimentación | 5 V desde USB, con regulación interna a 3,3 V |
| Tasa de lectura configurada por Klipper | Hasta 3200 Hz en ADXL345; es el valor predeterminado recomendado para resonancias |
| Rangos del sensor | ±2 g, ±4 g, ±8 g y ±16 g seleccionables por software |
| Resolución del sensor | Hasta 13 bits; aproximadamente 3,9 mg/LSB en resolución completa |
| Dimensiones | 52,5 × 15,5 mm |
| Controles e indicadores | Botón BOOT y LED de estado |
| Firmware documentado | Klipper |
Compatibilidad: qué necesita la impresora
Puede utilizarse de forma condicionada en impresoras 3D que ejecuten Klipper y cuyo host disponga de un puerto USB capaz de transmitir datos. Es adecuado para Raspberry Pi y otros ordenadores Linux utilizados como host de Klipper, siempre que el sistema reconozca el RP2040 como un dispositivo serie estable.
No depende directamente del modelo de placa de la impresora porque se comunica con el host por USB, pero sí deben cumplirse estas condiciones:
- Klipper debe permitir añadir una segunda MCU por USB.
- El cable USB-C debe transmitir datos; un cable exclusivamente de carga no sirve.
- La versión de firmware grabada en el módulo debe corresponder a la instalación actual de Klipper.
- El punto de montaje debe ser rígido, eléctricamente aislado y no interferir con el recorrido de la máquina.
- Las coordenadas de prueba deben encontrarse dentro del área realmente alcanzable.
Dónde colocar el acelerómetro
CoreXY, Voron y otras máquinas con cabezal móvil en X e Y
En una CoreXY como Voron 2.4 o Voron Trident, el módulo puede fijarse rígidamente al cabezal para medir los movimientos de X e Y. FYSETC muestra montajes para AfterBurner y StealthBurner, pero debe comprobarse el espacio, la tornillería y la revisión concreta del cabezal.
Impresoras cartesianas con cama móvil
En una impresora tipo Ender-3, Prusa i3 o similar, X corresponde normalmente al cabezal y Y a la cama. Para obtener mediciones representativas, el módulo se monta en el cabezal durante la calibración de X y se fija a la cama durante la calibración de Y. No debe dejarse suelto ni apoyado sobre la superficie.
Delta y otras cinemáticas
En una Delta se instala normalmente en el efector. Klipper admite pruebas sobre ejes personalizados, pero las direcciones y comandos deben tomarse de su documentación para la cinemática concreta.
La placa tiene impresas las direcciones de sus ejes. Klipper permite intercambiarlos o invertirlos mediante axes_map, por lo que no es obligatorio que las flechas coincidan físicamente con X, Y y Z; sí es obligatorio declarar correctamente la orientación utilizada.
Preparación del host
La medición y el cálculo automático necesitan NumPy, Matplotlib y las bibliotecas indicadas por la versión actual de Klipper. En una instalación Linux estándar, la documentación oficial utiliza:
sudo apt update
sudo apt install python3-numpy python3-matplotlib libatlas-base-dev libopenblas-dev
~/klippy-env/bin/pip install -v "numpy<1.26"
~/klippy-env/bin/python -c 'import numpy;'
La última orden no debe mostrar un error. Las rutas o dependencias pueden variar en imágenes administradas por el fabricante de la impresora, por lo que debe prevalecer la documentación de la distribución instalada.
Compilar y grabar Klipper en el RP2040
No conviene utilizar un archivo UF2 antiguo descargado de terceros. FYSETC advierte que el módulo debe ejecutarse con una versión de firmware compatible con el Klipper del host.
- Accede a la instalación de Klipper y ejecuta:
cd ~/klippermake cleanmake menuconfig - Selecciona arquitectura Raspberry Pi RP2040 y comunicación USB. No actives opciones avanzadas ni un bootloader adicional salvo que una revisión futura de FYSETC lo indique expresamente.
- Compila con
make. El archivo se generará normalmente como~/klipper/out/klipper.uf2. - Desconecta el módulo, mantén presionado su botón BOOT y conecta el USB-C.
- Suelta el botón cuando aparezca la unidad
RPI-RP2y copia dentroklipper.uf2. - Tras reiniciarse, identifica el dispositivo con:
ls /dev/serial/by-id/*
Guarda la ruta completa que empiece de forma similar a usb-Klipper_rp2040_.... Ese identificador es propio de cada unidad y no debe copiarse de un ejemplo.
Configuración segura en Klipper
El siguiente bloque utiliza los pines publicados por FYSETC. Deben sustituirse el identificador serie y las coordenadas por valores reales de la impresora:
[mcu pis]
serial: /dev/serial/by-id/usb-Klipper_rp2040_TU_IDENTIFICADOR
[adxl345]
cs_pin: pis:gpio13
spi_software_sclk_pin: pis:gpio10
spi_software_mosi_pin: pis:gpio11
spi_software_miso_pin: pis:gpio12
axes_map: x,-z,y
[resonance_tester]
accel_chip: adxl345
probe_points:
X_CENTRO, Y_CENTRO, Z_SEGURA
axes_map: x,-z,y corresponde a la orientación de referencia de FYSETC. Si la placa se monta girada o en otra cara, debe modificarse. El punto de prueba debe quedar cerca del centro útil, ligeramente elevado sobre la cama y con varios centímetros de margen para que los movimientos del ensayo sean alcanzables.
Puede guardarse como pis.cfg y añadirse a printer.cfg mediante:
[include pis.cfg]
Cuando el módulo se retire, comenta temporalmente este include o las secciones asociadas para que Klipper no intente conectar con una MCU ausente.
Comprobaciones antes de medir
- Comprueba que la placa y el cable estén firmemente sujetos y lejos de la boquilla, calentadores, correas y ventiladores.
- Ejecuta
ACCELEROMETER_QUERY. Debe devolver valores X, Y y Z, incluida aproximadamente la aceleración de la gravedad. - Ejecuta
MEASURE_AXES_NOISE. Klipper indica que valores aproximados de 1 a 100 son habituales; cifras cercanas a 1000 o superiores requieren revisar alimentación, sensor, ventiladores o montaje. - Mueve la máquina lentamente y confirma que el cable USB no se tensa ni puede engancharse.
- Apaga los ventiladores para la calibración y asegura cualquier panel, bobina o pieza que pueda vibrar.
Calibración paso a paso
Para medir los ejes por separado:
TEST_RESONANCES AXIS=X
TEST_RESONANCES AXIS=Y
La calibración automática puede ejecutarse por eje:
SHAPER_CALIBRATE AXIS=X
SHAPER_CALIBRATE AXIS=Y
En una impresora de cama móvil, calibra X con el sensor en el cabezal, detén la máquina, trasládalo de forma rígida a la cama y calibra Y. En otras cinemáticas puede mantenerse en el cabezal si este representa ambos movimientos.
M112. Si el movimiento resulta violento, detén la prueba, revisa la mecánica y reduce de forma conservadora accel_per_hz siguiendo la versión actual de la documentación de Klipper.
Klipper mostrará las frecuencias, el tipo de filtro sugerido, el porcentaje estimado de vibración residual, el suavizado y un límite teórico de aceleración. Si los resultados son razonables, SAVE_CONFIG añade los parámetros a [input_shaper].
Cómo interpretar el resultado
- Frecuencia de resonancia: depende de masa móvil, rigidez, correas, montaje, posición y estado mecánico.
- Tipo de shaper: ZV, MZV, EI, 2HUMP_EI y 3HUMP_EI ofrecen compromisos distintos entre reducción de vibración y suavizado.
- Suavizado: un filtro más agresivo puede reducir ringing, pero también redondear detalles y limitar la aceleración útil.
- Aceleración calculada: es una estimación para limitar el suavizado, no una recomendación automática de velocidad segura. Motores, estructura, hotend y caudal siguen imponiendo sus propios límites.
No es necesario recalibrar antes de cada impresión. Conviene repetir la medición después de cambios capaces de modificar la dinámica: correas, cabezal, extrusor, railes, cama, estructura o masa móvil. Klipper desaconseja ejecutar calibraciones intensivas con demasiada frecuencia porque aumentan el desgaste y pueden aflojar componentes.
Diagnóstico de problemas habituales
| Síntoma | Comprobaciones recomendadas |
|---|---|
No aparece en /dev/serial/by-id | Cable USB de datos, puerto host, alimentación y flasheo correcto. |
| Klipper indica incompatibilidad de protocolo MCU | Recompilar y volver a grabar el módulo desde la misma instalación actual de Klipper. |
Invalid adxl345 id | Revisar configuración SPI, firmware y posible fallo del sensor. |
| Ruido alto o resultados incoherentes | Fijación rígida, ventiladores apagados, cable inmóvil, tornillos, correas, ruedas y guías. |
| El eje medido no coincide | Orientación física y orden/signo de axes_map. |
| Klipper no inicia tras retirar el módulo | Comentar [include pis.cfg] o la definición de la MCU ausente. |
Alternativas dentro del catálogo
Si se busca un formato USB más compacto, puede consultarse el BIGTREETECH ADXL345 V2.0 con RP2040. Utiliza también un ADXL345, pero su forma, montaje, pines y configuración son propios.
El BIGTREETECH S2DW V1.0 con LIS2DW es otra alternativa USB para Klipper basada en un sensor diferente. No debe copiarse indistintamente el bloque [adxl345], porque utiliza el controlador [lis2dw].
Contenido mostrado
- 1 × FYSETC Portable Input Shaper.
- Tornillería y separadores de montaje mostrados en la imagen del producto.
Para conectarlo al host se necesita un cable USB-C con transmisión de datos.
La documentación, configuración de pines, ejemplos de montaje y archivos para otros cabezales están disponibles en el repositorio oficial FYSETC Portable Input Shaper. Para el procedimiento de medición y los comandos vigentes debe prevalecer la documentación actual de Klipper sobre resonancias.