Samsung SCX-4200 en Ubuntu 6.10

Hola!

Fue un laargo tiempo sin postear, entre vacaciones, laburo y asuntos personales, el blogueo quedó a un lado. Ahora ya casi que «volví» y espero seguir escribiendo…

En esta oportunidad les comento que compré una Impresora Multifunción Samsung SCX-4200, dado que tiene un costo relativamente bajo, soporta Linux (al menos x86 y x86-64, y tiene el pingüinito en la caja!), y además de imprimir con calidad láser, también fotocopia y escanea. Las reviews que encontré en mi opinión eran bastante alentadoras (digamos que sus «desventajas» para mí no eran problema), así que la traje a mi casa.

Como siempre hago antes de comprar algo, leí si alguien había tenido dificultades al instalarla en Linux, Debian y/o Ubuntu específicamente. Encontré varios links, muchos que se apuntaban entre , y linuxprinting.org me daba «perfectly» como calificación de su funcionamiento sobre Linux…

En resumen, después de leer todos esos links, esperaba encontrar:

  • Los drivers del CD son «viejos». Bajar de la página de Samsung la última versión.
  • En Ubuntu, como el shell por defecto es Dash («/bin/sh» apunta a «/bin/dash»), había que cambiar la primera línea del script de instalación de drivers de «/bin/sh» a «/bin/bash»; el script contenía una instrucción («source» creo), que no funciona bien en Dash y sí en Bash.
  • La impresión iba a funcionar sin problemas. Era preferible usar el dispositivo file:/dev/lp0 en vez de file:/dev/mfp4.
  • Samsung instala un módulo propietario de kernel, llamado MFP (MultiFunction Port), para poder conectar varios «dispositivos» a un port, pero era preferible evitar usarlo porque era innecesario (ver los links; igualmente era sólo cambiar el puerto en la configuración de CUPS).
  • El XSane (programa de escaneo), sólo iba a permitir escanear como usuario root. El problema estaba en que este módulo MFP ejecutaba una instrucción de «detección» de dispositivos sobre el puerto paralelo que requería permisos de root; es por eso que el instalador seteaba a XSane como setuid. Como no necesito nada en el puerto paralelo (es todo USB), instalé ésta versión de las librerías modificadas para «saltearse» la parte de detección de los puertos paralelos y escanear como usuario no-root.

Acá hay una captura de la utilidad de administración de impresora, escáner y puertos de Samsung para Linux (basada en QT):

En definitiva, si bien había que laburar algo… me parecía que la intención de Samsung era buena (aunque no liberara los drivers), y revisando un poco me entero que HP no colabora en nada («And if you work for Konica Minolta or HP, you should be embarrased for your company. Neither company has ever offered any kind of support for this driver.») con la creación de los drivers para sus impresoras más «baratas».

Una HP «barata» (una 1018 o una 1020, bastante mejor) era la otra opción al momento de buscar impresora láser para comprar, pero ni siquiera eran multifunción… como me parecía piola tener una fotocopiadora + escáner por la misma plata que la 1020 por ejemplo, compré una Samsung.

Todo funcionó (casi) como esperaba. Cambié el shell del script y el instalador anduvo y la impresión funcionó de una. Seguí las instrucciones de los posts/sitios que había encontrado, pero al momento de escanear con el XSane… obtenía un error fatal: «I/O Error». Y se detenía el escaneo.

Eso no estaba en ningún lado. Busqué, probé, hice mil cosas, pensando que era algún paso que no había seguido… hasta que me puse a mirar el syslog. Encontré esto:

rmmod: ERROR: Module mfpportprobe does not exist in /proc/modules
rmmod: ERROR: Module mfpport does not exist in /proc/modules
rmmod: ERROR: Module ppdev does not exist in /proc/modules
kernel: [  226.781867] parport0: PC-style at 0x378 (0x778), irq 7, dma 3 [PCSPP,TRIST
ATE,COMPAT,ECP,DMA]
kernel: [  226.849499] lp0: using parport0 (interrupt-driven).
rmmod: ERROR: Module ppdev does not exist in /proc/modules
kernel: [  226.930894] parport0: PC-style at 0x378 (0x778), irq 7, dma 3 [PCSPP,TRIST
ATE,COMPAT,ECP,DMA]
kernel: [  227.019155] lp0: using parport0 (interrupt-driven).
kernel: [  234.294029] drivers/usb/class/usblp.c: usblp0: nonzero read/write bulk status received: -71
kernel: [  234.325509] drivers/usb/class/usblp.c: usblp0: error -71 reading from printer
kernel: [  234.325796] drivers/usb/class/usblp.c: usblp0: nonzero read/write bulk status received: -71
kernel: [  234.385447] drivers/usb/class/usblp.c: usblp0: error -71 reading from printer
kernel: [  234.385518] drivers/usb/class/usblp.c: usblp0: nonzero read/write bulk status received: -71
kernel: [  234.443150] drivers/usb/class/usblp.c: usblp0: error -71 reading from printer

Busqué por errores parecidos… y en este post encontré una sugerencia acerca de «desactivar» USB 2.0, descargando el módulo ehci_hcd, para que las transferencias se hagan sobre USB 1.1….

Y Funcionó! 😀

Conclusiones:

  1. Parece que por algún motivo el kernel de Ubuntu Edgy 6.10 para AMD64 (2.6.17.x) en mi mother (NForce 4 Ultra), tiene problemas con USB 2.0 al escanear con una Samsung SCX-4200.
  2. Siempre miren los logs!
  3. Los drivers costaron instalarlos un poco, pero el aparato funciona de maravillas, lo recomiendo; en mi opinión es un buen balance entre funcionalidades y costo (me salió un poco menos de $550 – pesos argentos, claro).
  4. Recomiendo esta impresora! (ya lo dije, no?) 😛

Saludos!
Marcelo


Comentarios

9 respuestas a «Samsung SCX-4200 en Ubuntu 6.10»

  1. Avatar de Francisco
    Francisco

    Muchas Gracias, Funcionó con un par de clicks, todo era cuestion de cambiar el sh por el bash :D,
    Gracias

    Francisco Perea

    PD: super-económica y bien guerrera!!

  2. Avatar de Gustavo, la rana
    Gustavo, la rana

    Yo la tengo desde hace un tiempo, y en general sin problemas en linux(ubuntu). Ahora la utilizo en ubuntu 7.10 y a la primera. Lo único que hay que hacer es cambiar lo del bash y en la ruta de la impresora poner: usb://Samsung/SCX-4200%20Series (desde congiguracion de impresora de sistema, por ejemplo). Escaner e impresora sin problemas. http://croarycroar.blogspot.com

  3. Avatar de Julio Oña

    con sane-find-scanner me reconoce el dispositivo.

    found USB scanner (vendor=0x04e8, product=0x341b) at libusb:005:003
    found USB scanner (vendor=0x0c45, product=0x602e) at libusb:001:004

    pero con scanimage -L aparece

    No scanners were identified. If you were expecting something different,
    check that the scanner is plugged in, turned on and detected by the
    sane-find-scanner tool (if appropriate). Please read the documentation
    which came with this software (README, FAQ, manpages).

    sera que entra en conflicto con una web cam genius.

    podria ayudarme con este problema

    Gracias

  4. Con Fedora Core Linux la instalación se da solo colocando el CD.

    En la página de Samsung hay esta nota con la cual logre instalar la impresora:

    [Ubuntu OS Installation]
    1. Download and extract the driver
    2. Open »Root Terminal»
    3. Execute installation program.
    $ sudo cdroot/autorun
    4. After intall, PPD path is set again.
    $ sudo ln -s /usr/share/cups/model/samsung /usr/share/ppd/custom/samsung
    5. Execute Configurator, and Add your printer model name by Add Printer

  5. Avatar de Anonymous
    Anonymous

    tengo una impresora scx 4200 pero me muestra el siguiente error lcu quiero saber que es eso.

  6. Avatar de Anonymous
    Anonymous

    ¿Y que sucede cuando quieres compartir la impresora con Samba? Yo lo he hecho por activa y por pasiva pero siempre encuentro el mismo error en /var/log/samba/log.jedi (jedi es mi equipo)

    [2008/07/10 14:47:42, 1] rpc_client/cli_pipe.c:cli_rpc_pipe_open(2222)
    cli_rpc_pipe_open: cli_nt_create failed on pipe \spoolss to machine Jedi. Error was NT_STATUS_ACCESS_DENIED
    slpr.bin: cannot connect to X server

  7. Avatar de Marcelo

    Anónimo: Parece un tema de permisos de Samba, te diría que averigues por ese lado.

    Julio Oña: Para verlo más en profundidad, te sugeriría (a vos y a todos los interesados en Linux) que se sumen a una lista de correo de usuarios Linux. Yo estoy en Ubuntu-Ar (Ubuntu Argentina):

    Sitio:
    http://ubuntu-ar.org/

    Para suscribirse a la lista de correo:
    https://lists.ubuntu.com/mailman/listinfo/ubuntu-ar

    Saludos!
    Marcelo

  8. […] se caía, y resultó ser que la comunicación Scanner <-> USB 2.0 no funciona, como ya documenté en mi blog hace unos años (con la impresión no hay problemas); y no importa la mother, chip o cosa que haya […]

  9. […] se caía, y resultó ser que la comunicación Scanner <-> USB 2.0 no funciona, como ya documenté en este mismo blog hace unos años (con la impresión no hay problemas); y no importa la mother, chip o cosa que haya […]

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *