Hacks para dos impresoras de red Ricoh
Escrito por danitxu en /dev/hack, tags: impresora, pcl, pjl, ricohYa expliqué qué era el Job Accounting aplicado a una multifunción Samsung, y comento otro caso de posible interés para alguna oficina (la gente no suele tener en casa una máquina así), o didáctico en general: una Ricoh Aficio 2228c que no tiene cartucho de postscript y por tanto hay que usar el PCL5c emulado que sí soporta.
A pesar de que Ricoh ha entrado a la Linux Foundation hace poco, algunas de sus impresoras multifunción sin postscript se han distinguido por la ausencia de soporte para GNU/Linux.

En esta máquina, el driver CUPS a emplear para color es el Generic PCL5c foomatic/hpijs-pcl5c (la impresora tiene 1200 dpi y puede usar el cljet5c pero la resolución que da éste es sólo de 300 dpi). Problema: el fichero PPD asociado no ofrece opciones PJL para especificar usuario, y si se mira en las FAQs de openprinting para este modelo, nada se dice de cómo proceder con dicho PPD para insertar PJL.
Además, tampoco hay otras líneas con PJL en las que poder añadir sentencias (como ocurría con la Samsung). He probado distintas opciones para añadir un pipe en el mismo PPD (añadiendo un pipe en la línea FoomaticRIPCommandLine) pero no acaba de funcionar.
¿Solución? Montar un daemon que haga de proxy entre el CUPS y la impresora de red. Este nuevo servicio instalado en cada PC que vaya a imprimir hace lo siguiente:
- Escucha por un puerto local, ej. el localhost:9100. Esto implica que hay que configurar que la impresión no vaya directamente a la impresora de red sino al PC local.
- Recibe la información e inserta las líneas necesarias (si no, al estar la impresora configurada con Control de usuarios, ésta se queda bloqueada). Mirando un fichero generado por un Windows, concretamente son:
@PJL JOB NAME="Linux"^M
@PJL SET JOBNAME="Linux"^M
@PJL SET USERCODE="1234"^M - Envía el fichero resultado al puerto 9100 de la impresora.
Hay que asegurar que el daemon es daemon, esto es, no finaliza tras esta petición sino que se vuelve a ejecutar o se queda residente y sigue escuchando, y que esté en el arranque.
Dejo toda la info y el script en bash del daemon en mi wiki, donde incluyo otro hack que preparé hace tiempo para usar desde GNU/Linux el scanner de la multifunción Ricoh FX200, la cual ni siquiera aparece listada en openprinting.
Happy hack.




Entradas (RSS)