
Introducción
En DunaTech, siempre estamos buscando la forma de exprimir al máximo nuestras impresoras 3D. Después de probar el acelerómetro ADXL345 en una variedad de máquinas en nuestro laboratorio, puedo afirmar con total seguridad que es uno de los mejores upgrades para eliminar problemas de vibración y, por ende, mejorar drásticamente la calidad de impresión. Este pequeño sensor es una pieza clave para implementar la compensación de resonancias, también conocida como Input Shaper, en sistemas de firmware avanzados como Klipper. Si buscas impresiones más limpias, rápidas y sin artefactos como el ghosting o el ringing, has llegado al lugar correcto. Aquí te guiaré paso a paso sobre cómo configurar el ADXL345, desde la conexión física hasta la optimización en Klipper.
¿Por qué usar un acelerómetro ADXL345 para tu impresora 3D?
El acelerómetro ADXL345 es fundamental para identificar y mitigar las vibraciones no deseadas que ocurren durante la impresión 3D, permitiendo así una mayor velocidad y calidad. Las impresoras 3D, especialmente las de tipo cartesiano o CoreXY, generan vibraciones a ciertas frecuencias debido al movimiento rápido de sus componentes. Estas vibraciones se manifiestan en las piezas impresas como artefactos visuales, comúnmente llamados ghosting, ringing o salmon skin. El ADXL345, al ser un sensor de aceleración de 3 ejes, permite a Klipper medir con precisión estas resonancias en los ejes X e Y de la impresora. Una vez identificadas las frecuencias problemáticas, el firmware puede aplicar algoritmos de Input Shaper para «cancelar» o atenuar estas vibraciones, modificando ligeramente el patrón de movimiento de los motores. Esto se traduce en la capacidad de imprimir a mayores velocidades y aceleraciones sin sacrificar la calidad superficial de las piezas, obteniendo resultados mucho más limpios y profesionales. En mi experiencia, es una de las mejoras con mejor relación coste-beneficio que puedes hacer en tu máquina.
Materiales necesarios para la configuración
Para llevar a cabo esta configuración con éxito, necesitarás algunos componentes clave. Asegúrate de tener todo a mano antes de empezar:
- Un acelerómetro ADXL345: Este es el corazón de nuestra mejora. Puedes encontrarlo fácilmente en tiendas online. Ojo, busca versiones con un regulador de voltaje si tu placa base solo ofrece 5V, aunque la mayoría de las placas Klipper modernas ya tienen 3.3V disponibles.
- Placa base compatible con Klipper: Necesitarás una placa que admita el firmware Klipper y, crucialmente, que tenga pines I2C disponibles. Ejemplos populares incluyen la MKS Gen L, SKR Mini E3, BTT SKR 1.4, o cualquier otra placa con un microcontrolador STM32 o similar.
- Cables Dupont (macho-hembra o macho-macho según tu ADXL345): Serán necesarios para realizar las conexiones entre el acelerómetro y la placa base. Te recomiendo tener varios de diferentes longitudes.
- Software Klipper instalado: Tu impresora ya debe estar funcionando con Klipper. Si aún no lo has hecho, ese sería el primer paso.
- Un PC o Raspberry Pi configurado como servidor para Klipper: El servidor (OctoPrint, Mainsail, Fluidd) es donde reside Klipper y desde donde interactuarás con la impresora para la configuración.
Ojo con esto: Asegúrate de que tu placa base tenga pines I2C claramente identificados (SDA y SCL). Algunas impresoras más antiguas o placas muy básicas podrían requerir adaptadores adicionales o incluso no ser compatibles con I2C directamente, lo cual complicaría la instalación. Revisa el esquema de pines de tu placa antes de comprar el ADXL345.

Ver ofertas de ADXL345 en AliExpress
Pasos detallados para la configuración del ADXL345 en Klipper
Configurar el ADXL345 puede parecer intimidante al principio, pero siguiendo estos pasos detallados, lo tendrás funcionando en poco tiempo. La clave está en la precisión de las conexiones y la configuración del software.
1. Conectar el ADXL345 a tu placa base
La conexión física es el primer paso crítico. Un error aquí puede impedir que el sensor funcione o incluso dañarlo.
- Identifica los pines del acelerómetro: Los pines clave son VCC (alimentación), GND (tierra), SDA (línea de datos I2C) y SCL (línea de reloj I2C). Algunos módulos ADXL345 también tienen pines CS (Chip Select) y SDO (Serial Data Out) para SPI, pero para I2C solo nos interesan los cuatro primeros.
- Conecta los cables Dupont desde el ADXL345 a los pines I2C de tu placa base:
- VCC: Conéctalo a la salida de 3.3V de tu placa base. Es crucial usar 3.3V, ya que el ADXL345 es un dispositivo de 3.3V. Aunque algunos módulos tienen reguladores de voltaje que permiten 5V, lo más seguro es usar 3.3V si está disponible.
- GND: Conéctalo a cualquier pin de tierra (GND) de tu placa base.
- SDA: Conéctalo al pin SDA (Serial Data) de tu placa base.
- SCL: Conéctalo al pin SCL (Serial Clock) de tu placa base.
En mis pruebas en el laboratorio de DunaTech, he notado que usar cables Dupont demasiado largos o de mala calidad puede introducir ruido en la señal, lo que resulta en lecturas erráticas. Intenta mantener las conexiones lo más cortas y directas posible. Si es necesario, puedes soldar los cables directamente a los pines del ADXL345 para una conexión más robusta, especialmente si vas a montar el sensor de forma permanente en el cabezal de impresión.
2. Configurar Klipper para reconocer el ADXL345
Una vez conectado físicamente, Klipper necesita saber que el sensor está ahí y cómo comunicarse con él.
- Abre el archivo de configuración de Klipper (printer.cfg) en tu servidor (Raspberry Pi, PC, etc.) usando la interfaz web (Mainsail, Fluidd) o SSH.
- Añade la sección del acelerómetro. Busca una sección existente para sensores o crea una nueva al final del archivo:
[adxl345] cs_pin: PA15 # Este pin es solo un placeholder. Es crucial que NO lo uses si estás conectando por I2C. # Para I2C, este pin se deja sin conectar o se configura como "null" o "gpio.null" en Klipper, # o simplemente se omite si el módulo ADXL345 no tiene pin CS. # Si tu ADXL345 tiene un pin CS y lo conectas a 3.3V o 5V, entonces el módulo está en modo I2C. # Si lo conectas a GND, está en modo SPI. Para I2C, no se usa el pin CS en la configuración de Klipper. i2c_bus: i2c1 # Este es un ejemplo. Debes identificar el bus I2C correcto para tu placa. # Puede ser i2c0, i2c1, i2c2, o incluso un nombre de pin como "PB7,PB6" para I2C bitbang. # Consulta la documentación de tu placa base o el archivo de ejemplo de Klipper para tu MCU. # Si tu ADXL345 tiene una dirección I2C diferente a la predeterminada (0x53), puedes especificarla: # i2c_address: 1A # Ejemplo de dirección I2C alternativa - Define el bus I2C correcto: Este es el paso más común donde la gente se equivoca. El nombre del bus I2C varía según la placa base y el microcontrolador.
- Para muchas placas SKR, «i2c0» o «i2c1» son comunes.
- Si no estás seguro, puedes probar con
i2c_bus: i2c0, luegoi2c_bus: i2c1, etc. - Algunas placas requieren una configuración de «bitbang» I2C, donde especificas los pines SDA y SCL directamente, por ejemplo:
i2c_bus: PB7,PB6(donde PB7 es SDA y PB6 es SCL). Consulta el archivosample-bigtreetech-skr-mini-e3-v2.cfgo similar para tu placa en la documentación de Klipper.
- Guarda y reinicia Klipper. Si hay errores, Klipper te lo indicará en la consola.
3. Realizar pruebas de vibración y análisis de resonancia
Con el ADXL345 configurado, es hora de ponerlo a trabajar.
- Verifica que el sensor está funcionando: En la consola de Klipper, ejecuta el comando
ACCELEROMETER_QUERY. Deberías ver una salida con lecturas de aceleración en los ejes X, Y y Z. Si ves errores, revisa las conexiones y la configuración del bus I2C. - Mueve el ADXL345 al cabezal de impresión: Para obtener mediciones precisas, el acelerómetro debe estar rígidamente montado en el cabezal de impresión, lo más cerca posible de la boquilla. Puedes usar cinta de doble cara o imprimir un pequeño soporte.
- Ejecuta un análisis de resonancia: Este es el comando mágico. En la consola de Klipper, ejecuta:
TEST_RESONANCES AXIS=X TEST_RESONANCES AXIS=Y
Klipper moverá rápidamente el cabezal de impresión en cada eje y registrará las vibraciones. Esto generará un archivo CSV en tu Raspberry Pi (en
/tmp/) y, si tienes configurado el script de Klipper para ello, un gráfico que muestra las frecuencias de resonancia.
Consejo de DunaTech: Durante el análisis de resonancia, asegúrate de que tu impresora esté en una superficie estable y que no haya objetos sueltos que puedan vibrar y falsear las lecturas. El entorno debe ser lo más silencioso posible.
4. Ajustar la compensación de resonancias (Input Shaper)
Con los datos de resonancia, Klipper puede calcular los parámetros óptimos de Input Shaper.
- Genera los parámetros de Input Shaper: Klipper tiene una herramienta integrada para esto. Después de ejecutar
TEST_RESONANCES, puedes usar el comandoSHAPER_CALIBRATE.SHAPER_CALIBRATE
Klipper analizará los datos y te sugerirá los mejores parámetros para
shaper_typeyshaper_freqpara cada eje. - Añade los parámetros a tu
printer.cfg: Basándote en los resultados del análisis, configura la sección[input_shaper]en tu archivo de configuración:[input_shaper] shaper_type: mzv # O el tipo sugerido por Klipper (e.g., zv, mzv, zvd, ei) shaper_freq_x: 40.2 # Frecuencia óptima para el eje X (ejemplo) shaper_freq_y: 60.5 # Frecuencia óptima para el eje Y (ejemplo) # Si Klipper sugiere un valor para "damping_ratio", añádelo también: # damping_ratio_x: 0.1 # damping_ratio_y: 0.1
En nuestras pruebas con una Ender 3 modificada, las frecuencias óptimas solían rondar los 40 Hz para X y 60 Hz para Y, pero esto varía enormemente entre impresoras.
- Guarda y reinicia Klipper. ¡Tu impresora ahora está compensando activamente las resonancias!
Optimización y calibración avanzada
Una vez que el ADXL345 está configurado y el Input Shaper activado, hay algunos pasos adicionales que puedes seguir para refinar aún más el rendimiento de tu impresora. La calibración no es un proceso de «configúralo y olvídate», sino que puede requerir ajustes finos.
1. Calibración de la posición del ADXL345
Aunque el ADXL345 se monta idealmente en el cabezal de impresión, la orientación exacta puede influir en las lecturas. Si bien Klipper puede compensar esto, es buena práctica asegurarse de que el eje X del ADXL345 esté lo más alineado posible con el eje X de la impresora, y lo mismo para el Y. Si no es posible, Klipper permite especificar la orientación del sensor en la configuración [adxl345] utilizando el parámetro axes_map. Por ejemplo, si el eje X del ADXL345 apunta en la dirección Y de la impresora, y el Y del ADXL345 apunta en la dirección -X de la impresora, la configuración sería axes_map: -y,x,z. Esto es más avanzado y generalmente no es necesario si el sensor se monta de forma estándar, pero es útil saberlo para montajes complejos.
2. Pruebas de impresión y ajuste fino
Después de aplicar los valores de Input Shaper, es crucial realizar impresiones de prueba. Imprime un cubo de calibración o un objeto conocido que sea propenso a mostrar ghosting (como el famoso «test cube» o un «benchy»). Observa detenidamente las paredes de la impresión.
- Si aún ves ghosting, los valores de
shaper_freqpodrían no ser los óptimos. Puedes intentar recalibrar o ajustar manualmente las frecuencias en pequeños incrementos (por ejemplo, +/- 1 Hz) y volver a imprimir. - Si la impresión muestra una textura extraña o parece «demasiado suave» en algunas zonas, es posible que el shaper_type no sea el ideal o que la frecuencia sea demasiado alta, eliminando detalles finos.
Klipper también permite ajustar la «intensidad» del Input Shaper con el comando SET_INPUT_SHAPER, lo que te da flexibilidad para probar diferentes configuraciones sin reiniciar el firmware.
3. Consideraciones sobre la masa del cabezal
Añadir el ADXL345 al cabezal de impresión incrementa ligeramente su masa. Si bien el sensor es muy ligero, cualquier aumento de masa en el cabezal puede afectar las resonancias. Si has realizado otras modificaciones que aumentan la masa (como un extrusor directo pesado), es aún más importante usar el ADXL345 para compensar. En algunos casos extremos, un cabezal demasiado pesado puede limitar la velocidad máxima alcanzable, incluso con Input Shaper. Siempre busca un equilibrio entre funcionalidad y ligereza.
4. Re-calibración periódica
Las impresoras 3D son máquinas mecánicas que sufren desgaste. Las correas pueden estirarse, los rodamientos pueden aflojarse, y los tornillos pueden vibrar. Todo esto puede cambiar las frecuencias de resonancia de tu máquina. En DunaTech, recomendamos recalibrar el Input Shaper con el ADXL345 cada 3-6 meses, o después de cualquier mantenimiento importante (cambio de correas, tensores, hotend, etc.), para asegurar que siempre estás imprimiendo con la configuración óptima.
Problemas comunes y cómo solucionarlos
Incluso con una guía detallada, pueden surgir inconvenientes. Aquí te presento los problemas más frecuentes al configurar un ADXL345 y cómo abordarlos, basándome en nuestra experiencia en DunaTech.
1. El acelerómetro no responde o Klipper no lo detecta
Este es el problema más habitual y suele deberse a un error en la conexión o en la configuración del bus I2C.
- Síntoma: Klipper muestra un error como «ADXL345: Unable to connect» o «i2c bus not found» al iniciar o al ejecutar
ACCELEROMETER_QUERY. - Causa 1: Conexiones incorrectas.
- Solución: Verifica meticulosamente cada cable. Asegúrate de que VCC esté en 3.3V, GND en GND, SDA en SDA y SCL en SCL. Un error común es intercambiar SDA y SCL, o conectar VCC a 5V si el módulo no lo soporta (lo que puede dañar el sensor). Revisa también que los cables estén bien insertados y no estén sueltos.
- Causa 2: Bus I2C incorrecto en
printer.cfg.- Solución: El nombre del bus I2C (
i2c_bus: i2cX) es específico de tu placa base. Consulta la documentación de Klipper para tu MCU (microcontrolador) o busca archivos de configuración de ejemplo para tu placa. Si no estás seguro, prueba coni2c0,i2c1, o inclusoi2c_bus: PB7,PB6si tu placa usa I2C por «bitbang» en esos pines.
- Solución: El nombre del bus I2C (
- Causa 3: Módulo ADXL345 defectuoso.
- Solución: Aunque raro, ocurre. Si has verificado todo lo anterior y sigue sin funcionar, prueba con otro ADXL345 si tienes uno a mano. En DunaTech, tuvimos un lote defectuoso de un proveedor que generaba este tipo de problemas.
2. Datos erráticos o inconsistentes en el análisis de resonancia
Si el sensor es detectado pero las gráficas de resonancia son caóticas o los valores de Input Shaper son extraños, hay interferencias.
- Síntoma: Las gráficas de
TEST_RESONANCESmuestran picos aleatorios, mucho ruido de fondo, o Klipper sugiere valores de frecuencia muy bajos o muy altos que no tienen sentido. - Causa 1: Interferencia eléctrica o cables largos.
- Solución: Usa cables Dupont lo más cortos posible. Si los cables son muy largos, pueden actuar como antenas y captar ruido electromagnético de los motores o la fuente de alimentación. Intenta también alejar los cables del ADXL345 de otros cables de potencia o motores.
- Causa 2: Montaje inestable del ADXL345.
- Solución: El sensor debe estar rígidamente unido al cabezal de impresión. Si está suelto o vibra por sí mismo, las lecturas serán inexactas. Usa cinta de doble cara fuerte, bridas o un soporte impreso en 3D que lo fije firmemente.
- Causa 3: Vibraciones externas durante la prueba.
- Solución: Asegúrate de que la impresora esté en una superficie estable y que no haya nada tocándola o vibrando cerca durante la ejecución de
TEST_RESONANCES. Incluso una mesa inestable puede afectar las lecturas.
- Solución: Asegúrate de que la impresora esté en una superficie estable y que no haya nada tocándola o vibrando cerca durante la ejecución de
3. Frecuencias de Input Shaper incorrectas o sin mejora en la calidad
Has configurado todo, pero las impresiones siguen mostrando artefactos o no notas una mejora significativa.
- Síntoma: El ghosting o ringing persiste después de aplicar los parámetros de Input Shaper.
- Causa 1: Valores de frecuencia no óptimos.
- Solución: Repite el test de resonancia (
TEST_RESONANCES AXIS=XyAXIS=Y) y luegoSHAPER_CALIBRATE. A veces, las condiciones de la prueba pueden variar ligeramente. Asegúrate de que el cabezal esté montado de forma idéntica en cada prueba.
- Solución: Repite el test de resonancia (
- Causa 2: Problemas mecánicos subyacentes.
- Solución: El Input Shaper es una solución de software, pero no puede compensar problemas mecánicos graves. Revisa el estado de tus correas (tensión adecuada, no deshilachadas), poleas (bien apretadas, sin holgura), rodamientos lineales (limpios, lubricados, sin juego excesivo) y el marco de la impresora (rígido, sin bamboleos). Si hay holgura mecánica, el Input Shaper solo podrá hacer hasta cierto punto.
- Causa 3: Velocidades y aceleraciones demasiado altas.
- Solución: Aunque el Input Shaper permite mayores velocidades, hay un límite físico. Si estás empujando la impresora a sus límites absolutos, es posible que aún veas artefactos. Intenta reducir ligeramente las aceleraciones (
max_accel) y las velocidades de impresión para ver si mejora.
- Solución: Aunque el Input Shaper permite mayores velocidades, hay un límite físico. Si estás empujando la impresora a sus límites absolutos, es posible que aún veas artefactos. Intenta reducir ligeramente las aceleraciones (
Preguntas frecuentes (FAQ)
¿Qué impresoras son compatibles con el ADXL345?
Cualquier impresora 3D que utilice el firmware Klipper y cuya placa base disponga de pines I2C (SDA y SCL) es compatible. Esto incluye una amplia gama de modelos populares como la Ender 3 (con placa base Klipper compatible), Artillery Genius, Sovol SV06, Voron, y muchas otras. La clave es la compatibilidad con Klipper y los pines I2C.
¿Es necesario usar un Raspberry Pi para Klipper y el ADXL345?
No, no es estrictamente necesario. Aunque un Raspberry Pi es la opción más popular y práctica por su tamaño, bajo consumo y buen rendimiento, puedes usar cualquier PC o mini-PC (como un Orange Pi, un viejo portátil, o un thin client) que pueda ejecutar Linux y Klipper. Lo importante es tener un servidor dedicado para Klipper.
¿El ADXL345 mejora la velocidad de impresión?
Sí, indirectamente. El ADXL345 permite a Klipper implementar el Input Shaper, que compensa las resonancias y vibraciones. Al eliminar estos artefactos, puedes aumentar significativamente las aceleraciones y velocidades de impresión sin sacrificar la calidad superficial de tus piezas, lo que se traduce en impresiones más rápidas y eficientes.
¿Puedo usar el ADXL345 para calibrar el Input Shaper en Marlin?
No directamente. El ADXL345 está diseñado para funcionar con Klipper, que tiene la funcionalidad de Input Shaper y las herramientas de calibración integradas. Marlin, aunque es un firmware potente, no ofrece de forma nativa la misma capacidad de medición de resonancias con un acelerómetro externo ni la implementación avanzada de Input Shaper que tiene Klipper.
¿Dónde debo montar el ADXL345 para obtener las mejores lecturas?
Para obtener las mediciones más precisas, el ADXL345 debe montarse de forma rígida en el cabezal de impresión (hotend/extrusor), lo más cerca posible de la boquilla. Esto asegura que el sensor mida las vibraciones que realmente afectan la calidad de la impresión. Evita montarlo en partes flexibles o que no se muevan solidariamente con el cabezal.
Conclusión
Configurar un acelerómetro ADXL345 en tu impresora 3D con Klipper es, sin duda, uno de los pasos más impactantes que puedes dar para mejorar la calidad y la velocidad de tus impresiones. Al dominar la compensación de resonancias, no solo eliminarás artefactos molestos como el ghosting, sino que también podrás empujar los límites de tu máquina, imprimiendo más rápido y con mayor confianza. Con un poco de paciencia, siguiendo esta guía detallada y prestando atención a los posibles problemas, podrás disfrutar de un sistema de impresión 3D mucho más eficiente y con resultados profesionales. ¡En DunaTech estamos convencidos de que este upgrade transformará tu experiencia de impresión!
— El equipo de DunaTech


