Hoy te mostraré cómo instalar una impresora térmica en el sistema operativo Linux, específicamente en Ubuntu (aunque cualquier derivado de Debian debería funcionar) y cómo imprimir en ella de manera sencilla.
Yo probaré con la impresora térmica XPrinter 58 también conocida como ZJ-58, misma que es una impresora económica de 58 milímetros.
Mi sistema operativo es elementary OS 5.1.7 basado en Ubuntu, pero te repito: debería funcionar en cualquier Linux.
Por cierto, esto requiere que el sistema cuente con usblp.
Nota: antes que nada quiero indicar que he seguido paso a paso el tutorial de este enlace. Aquí expongo, en español, cómo es que lo hice yo con mis propias palabras.
Instalar impresora térmica en Linux
Lo primero que tienes que hacer es conectar la impresora por el puerto USB. Al menos en mi caso no necesité descargar drivers (bondades de Linux).
Cualquier modelo reciente debería funcionar. Ahora abre una terminal y ejecuta:
dmesg
Y por ahí debe haber una línea que indique que ha detectado la impresora con usblp
. En mi caso aparece así, si te fijas también me muestra que es una Printer-58:
Busca bien, pues habrá varios mensajes. Por eso es importante que ejecutes el comando tan pronto conectes la impresora.
Si tu impresora fue detectada vamos a ver si está en el sistema de archivos con:
ls /dev/usb/
Debe mostrarse como lpX
en donde la X
es un número. En mi caso es lp1
.
Si tú tienes varias impresoras o el dispositivo es otro, cambia los comandos que verás a continuación. Yo lo haré suponiendo que es el lp1
.
Asignando permisos
Si tu impresora aparece ahí entonces vamos a intentar imprimir en ella, pero antes vamos a darle permiso a nuestro usuario agregándolo al grupo.
Primero haz un: stat /dev/usb/lp1
y fíjate en el grupo al que la impresora pertenece cerca de Gid:
En este caso el grupo es lp
. Vamos a agregar nuestro usuario a ese grupo. En mi caso mi usuario es parzibyte
así que el comando es:
sudo usermod -a -G lp parzibyte
Si en tu caso el usuario cambia, coloca el nombre en lugar de parzibyte
.
Recuerda que si vas a permitir que más usuarios escriban al archivo debes ejecutar el mismo comando por cada usuario para agregarlos al grupo.
Nota importante: ahora reinicia la computadora, ya sea manualmente o escribiendo sudo reboot
en la terminal.
Imprimiendo
Ahora vamos a imprimir algo de texto en nuestra impresora. Para ello ejecuta:
echo "Imprimiendo en una impresora termica en Linux desde el blog de parzibyte (parzibyte.me/blog)" >> /dev/usb/lp1
Y el texto debió imprimirse en tu impresora.
A partir de esto ya puedes crear tus propios scripts, programas, etcétera para imprimir en la impresora térmica desde Linux.
Si quieres imprimir imágenes, códigos de barras, códigos QR y formatear el texto o definir caracteres personalizados entonces mira mi plugin para impresora térmica que es compatible con varios sistemas operativos: