Qué es un código QR y cómo crear uno gratis
Cómo generar códigos QR offline para etiquetar impresiones 3D, cajas y piezas de taller con qrencode o Python, sin depender de ningún servicio externo. Con opciones para grabarlos con láser o incrustarlos directamente en tus piezas.
qrencode o la librería Python qrcode.La caja misteriosa de piezas es universal
Si llevas un tiempo imprimiendo o cortando con láser, tienes al menos una caja —o una bolsa, o una bandeja— llena de piezas que en su momento tenían todo el sentido del mundo. Hoy no sabes si son soportes para la Ender, recambios del láser o aquella tuerca especial que tardaste tres intentos en calibrar. No es desorganización: es que los proyectos físicos no tienen historial de commits.
Igual has visto los QR como cosa de restaurantes o de campañas de marketing y nunca te has parado a pensar que son, básicamente, texto codificado en un cuadrado que cualquier móvil lee en medio segundo. Y si has mirado generadores online, puede que te haya rondado la duda de qué pasa cuando ese servicio cierra o cambia de modelo de negocio. Es una duda razonable.
En este post vas a ver cómo generar QR completamente offline, con herramientas libres que ya tienes o que instalas en un momento, apuntando a donde tú decidas: un archivo en tu NAS, una URL en tu homelab o simplemente texto plano con los datos de la pieza. Sin cuentas externas, sin dependencias que mañana pueden desaparecer.
Por qué importa
Sin servicios externos
Genera QR offline con qrencode o la librería Python qrcode (MIT). Tus etiquetas no dependen de que ningún servidor externo siga activo.
Resistente al desgaste
El nivel de corrección H recupera hasta el 30 % del código dañado. Imprescindible para piezas de taller que acumulan suciedad o rozaduras.
Grabado o impreso
Un QR láser sobre madera o en etiqueta PLA funciona igual que en pantalla, siempre que el contraste entre módulos sea suficiente.
Ficha técnica embebida
Apunta el QR a un JSON en tu NAS o homelab: datos de pieza sin terceros. El lector debe estar en la misma red o VPN.
El problema real de etiquetar en un taller maker
Si llevas tiempo haciendo proyectos, ya sabes lo que es abrir una caja de piezas impresas y no tener ni idea de qué perfil usaste, con qué material la imprimiste o para qué proyecto era. Las etiquetas de papel se caen, los rotuladores se borran y los STL acaban enterrados en carpetas con nombres como pieza_final_v3_ESTAESLAVERDADERA.stl.
Un código QR pegado o grabado en la pieza lo cambia todo. Escaneas con el móvil, aparece la información. Sin apps raras, sin depender de que alguien mantenga un servidor gratuito que puede cerrar mañana.
Un QR que apunta a un archivo de texto en tu NAS local funciona igual de bien que uno que apunta a Notion, con la diferencia de que tú controlas el servidor.
QR estáticos vs QR dinámicos: cuál usar para piezas de taller
La diferencia es importante y conviene entenderla antes de ponerse a generar nada.
- QR estático: el dato va codificado directamente en el símbolo. Si quieres cambiar la información, tienes que generar e imprimir un QR nuevo. Pero no depende de ningún servidor: funciona para siempre mientras el código sea legible.
- QR dinámico: el símbolo solo guarda una URL corta que redirige a tu contenido real a través de un servidor externo. Si ese servidor cierra o cambia sus condiciones, todos tus QR dejan de funcionar.
Para etiquetar piezas de taller, un QR estático es generalmente suficiente y mucho más robusto. Codifica directamente la URL de tu ficha técnica, el nombre del proyecto, los parámetros de impresión o lo que necesites.
Los QR dinámicos tienen sentido si necesitas actualizar el contenido sin volver a imprimir la etiqueta. Pero si los gestionas a través de un SaaS gratuito, ten en cuenta que ese servicio tiene fecha de caducidad incierta o puede cambiar su modelo de negocio en cualquier momento.
No presentes los generadores online gratuitos como solución permanente: si el servicio cierra, los QR dinámicos dejan de funcionar. Y habrás perdido todas las etiquetas de golpe.
Cómo generar un QR sin registrarte en ningún sitio
Aquí es donde la cosa se pone práctica. Dos opciones sólidas, offline, sin cuenta en ningún servicio.
qrencode: el más directo en Linux y macOS
qrencode es una herramienta de línea de comandos publicada bajo licencia LGPL-2.1. Está en el gestor de paquetes oficial de la mayoría de distros Linux.
# Ubuntu / Debian
sudo apt install qrencode
# macOS con Homebrew
brew install qrencode
Para generar un QR con la URL de tu ficha técnica:
qrencode -o etiqueta_soporte_v2.png -s 10 -l H "https://nas.local/fichas/soporte_camara_v2.txt"
-o: nombre del archivo de salida. Acepta PNG y SVG.-s 10: tamaño de cada módulo en píxeles.-l H: nivel de corrección de errores H (recupera hasta el 30 % del código dañado).
Si quieres ver el resultado directamente en la terminal sin generar ningún archivo:
qrencode -t ansiutf8 "texto de prueba"
Requiere al menos saber abrir una terminal y ejecutar un comando. No es magia, pero tampoco es complejo.
Python qrcode: más control, ideal para automatizar
Si ya tienes Python instalado (en un homelab, casi seguro que sí), la librería qrcode publicada bajo licencia MIT en PyPI te da más control sobre el resultado.
pip install qrcode[pil]
Un script mínimo para generar el PNG:
import qrcode
qr = qrcode.QRCode(
error_correction=qrcode.constants.ERROR_CORRECT_H,
box_size=10,
border=4,
)
qr.add_data("https://nas.local/fichas/soporte_camara_v2.txt")
qr.make(fit=True)
img = qr.make_image(fill_color="black", back_color="white")
img.save("etiqueta_soporte_v2.png")
Lo bueno de Python es que puedes meter la generación en un bucle y crear QR para todas las piezas de un proyecto de golpe, o integrarlo en tu flujo de documentación junto al slicing.
Niveles de corrección de errores: no uses el mínimo en el taller
El estándar ISO/IEC 18004:2015 define cuatro niveles de corrección de errores que determinan cuánta información puede recuperarse si parte del código está dañada, sucia o tapada:
- L (Low): recupera hasta el 7 % de datos dañados. El QR resultante es más pequeño y limpio, pero muy vulnerable a suciedad o desgaste.
- M (Medium): 15 %. Un equilibrio razonable para uso interior sin demasiado trote.
- Q (Quartile): 25 %. Buena opción para etiquetas que van a recibir algo de manipulación.
- H (High): 30 %. El más robusto. En un cajón con virutas de madera, polvo de lijado o restos de resina, un nivel L se vuelve ilegible antes de lo que crees.
El precio de usar nivel H es que el QR tiene más módulos y necesita algo más de espacio para imprimirse limpio. En la práctica, para etiquetas de 2×2 cm o más no hay ningún problema.
Para piezas de taller: nivel M como mínimo. Si la etiqueta va a estar expuesta a polvo, suciedad o manipulación frecuente, usa H directamente.
Llevar el QR a la pieza: papel, PLA o láser
Una vez tienes el PNG o SVG, tienes varias opciones para llevar el código a la pieza física. Cada una tiene su momento.
Etiqueta impresa en papel o vinilo
Lo más rápido. Imprime el QR, recórtalo y pégalo con cinta doble cara o una etiqueta adhesiva. Para cajas de almacenaje o piezas que no se manipulan mucho, funciona perfectamente.
Si quieres algo más duradero, una impresora de etiquetas de transferencia térmica (las Brother baratas sirven) imprime en vinilo o poliéster que aguanta bastante más que el papel normal.
QR integrado en la propia impresión 3D
Hay plugins para Fusion 360 y scripts para Blender que generan la geometría del QR directamente, resultando en un código en relieve o en hueco que forma parte de la pieza. El resultado es elegante y no requiere etiqueta adicional.
El inconveniente: si necesitas cambiar la información, tienes que reimprimir. Para fichas de piezas con datos estables (material, temperatura, versión de diseño), es una solución que merece la pena explorar.
Grabado con láser
Un QR grabado con láser en madera, metal anodizado o incluso en PLA/PETG aguanta mucho más que cualquier etiqueta de papel. El contraste entre la zona grabada y el material es suficiente para que la mayoría de cámaras de móvil lo lean sin problemas, siempre que el grabado sea uniforme y el fondo no sea muy reflectante.
Para esto, exporta el QR en SVG. La librería segno tiene soporte SVG nativo muy limpio:
pip install segno
python -c "import segno; segno.make_qr('https://nas.local/fichas/soporte_v2', error='h').save('etiqueta.svg')"
Lleva el SVG directamente a LightBurn o al software de tu grabadora y tendrás el QR listo para grabar.
Autohospedaje: tu NAS como servidor de fichas técnicas
Si tienes un NAS en casa o cualquier máquina siempre encendida en tu red local, puedes alojar las fichas técnicas de tus piezas allí y que el QR apunte a esa URL interna.
La ventaja: no dependes de ningún tercero y el dato no desaparece si un servicio cierra. La limitación, importante: el dispositivo que escanea el QR tiene que estar en la misma red que el servidor, o conectado por VPN. Fuera de tu red local, el QR no lleva a ningún sitio.
Para uso personal en el taller, eso generalmente no es un problema. Un archivo de texto o JSON en tu NAS puede contener:
- Material y marca del filamento utilizado
- Temperaturas de impresión y cama
- Perfil de slicer (nombre y versión)
- Ruta al STL en tu NAS
- Notas sobre el montaje o el proyecto al que pertenece la pieza
Un servidor web mínimo es suficiente: Nginx, Caddy, o incluso python -m http.server apuntando a un directorio. No necesitas base de datos ni nada complejo. Si ya tienes Proxmox, un contenedor LXC con Nginx te da en minutos una URL limpia accesible desde cualquier dispositivo de tu red, incluido el móvil desde el que escaneas.
Para piezas que quieres compartir fuera de tu red: codifica la información directamente en el QR estático, o usa una URL pública real como tu propio dominio o un repositorio de GitHub.
La clave de este sistema es que lo controlas tú de principio a fin. El estándar QR es libre (ISO/IEC 18004:2015, sin royalties), las herramientas son open source, y el servidor es tuyo. Nada que pueda desaparecer sin previo aviso.
Preguntas frecuentes
Q: ¿Qué pasa si el servicio que generó mi QR dinámico cierra?
A: Los QR dinámicos redirigen a través del servidor del proveedor; si ese servidor desaparece, el código deja de funcionar. Los QR estáticos codifican el dato directamente en el símbolo y no dependen de ningún tercero, lo que los hace mucho más fiables para etiquetar piezas a largo plazo.
Q: ¿Vale un QR grabado con láser para leer desde el móvil?
A: Funciona perfectamente siempre que haya suficiente contraste entre los módulos grabados y el material base. En madera o metal el grabado crea esa diferencia de tonalidad. Conviene usar nivel de corrección M o superior, porque el desgaste y la suciedad del taller pueden dañar parte del patrón con el tiempo.
Q: ¿Qué nivel de corrección elegir para piezas de taller?
A: Para piezas expuestas a polvo, aceite o rozaduras, el nivel M (15 % de recuperación) es el mínimo recomendable; el nivel Q (25 %) o H (30 %) son mejores si el daño físico es probable. El nivel L, con solo un 7 % de recuperación, no aguanta las condiciones de un taller activo.
Q: ¿Cómo generar QRs offline sin depender de ningún servicio?
A: Con la librería Python 'qrcode' (licencia MIT, disponible en PyPI) o con 'qrencode' desde terminal en Linux y macOS (LGPL-2.1). Ambas trabajan completamente sin conexión. Requieren saber abrir una terminal y ejecutar un par de comandos, pero el resultado es un archivo de imagen listo para imprimir o grabar con láser.
Q: ¿Cuándo vale la pena apuntar el QR a mi homelab?
A: Tiene sentido cuando quieres enlazar a una ficha técnica que puedas actualizar sin regrabar ni reimprimir la etiqueta. El matiz importante: el dispositivo lector debe estar en la misma red que tu servidor, o conectado por VPN. Para piezas que compartes con alguien fuera de tu red, un QR estático con los datos directos es más práctico.















Deja una respuesta