# X-Sane no detecta mi escaner :(

## Diabliyo

Hola:

Tengo una impresora OfficeJet 6212 All-in-One la cual en Slackware funcionaba perfectamente para escanear con Xsane, pero hace 2 meses cambie mi GNU/Linux a Gentoo  :Very Happy:  (por que me gusta), asi que instale todas las cosas y les comento que despues de instalar cups y hplip (desde portage) no podia imprimir debido a que los paquetes mencionados no me incorporaban el PPD correcto para mi impresora, por lo cual desenmascare las versionas mas recientes de ambos paquetes e instale, y aun segui sin soporte del PPD  :Sad: , la solucion fue buscar en Google el PPD directamente a mi impresora, el cual encontre y lo copie en la carpeta donde estan los PPDs de HP y asunto solucionado  :Very Happy: ...

Ahora el problema es que no puedo escanear  :Sad: , al abrir X-SANE me marca "no devices available", por lo cual prosedi a correr el comando para escanear con sane-find-scanner en busca de mi escaner y resulto esto:

```
shell# sane-find-scanner

  # sane-find-scanner will now attempt to detect your scanner. If the

  # result is different from what you expected, first make sure your

  # scanner is powered up and properly connected to your computer.

  # No SCSI scanners found. If you expected something different, make sure that

  # you have loaded a kernel SCSI driver for your SCSI adapter.

found USB scanner (vendor=0x03f0 [HP], product=0x4b11 [Officejet 6200 series]) at libusb:004:002

  # Your USB scanner was (probably) detected. It may or may not be supported by

  # SANE. Try scanimage -L and read the backend's manpage.

  # Not checking for parallel port scanners.

  # Most Scanners connected to the parallel port or other proprietary ports

  # can't be detected by this program.

```

Al realizar scanimage -L me resulta:

```
shell# scanimage -L

scanimage: hp-option.c:3713: hp_optset_fix_geometry_options: Assertion `tl_x && tl_y && br_x && br_y' failed.

Aborted

```

En fin... Veo que mi escaner esta detectado, conectado y bien identificado en: found USB scanner (vendor=0x03f0 [HP], product=0x4b11 [Officejet 6200 series]) at libusb:004:002, pero porque no lo encuentra el X-Sane cuando lo ejecuto ??

Que puedo hacer ?

bye bye

----------

## i92guboj

¿Funciona si ejecuta xsane como root?

Hace bastante tiempo ya escribí esto para un multifunción de epson, pero por la mayor parte debería servirte. Si funciona como root y es tema de permisos aquí encontrarás como solucionarlo (y si no es ese problema, echa un vistazo por si acaso).

https://forums.gentoo.org/viewtopic-t-329637.html

----------

## Diabliyo

 *i92guboj wrote:*   

> ¿Funciona si ejecuta xsane como root?
> 
> Hace bastante tiempo ya escribí esto para un multifunción de epson, pero por la mayor parte debería servirte. Si funciona como root y es tema de permisos aquí encontrarás como solucionarlo (y si no es ese problema, echa un vistazo por si acaso).
> 
> https://forums.gentoo.org/viewtopic-t-329637.html

 

Ya lei tu post y he editado otros archivos debido a que lo mencionas y veo que es necesario  :Very Happy: ....

Sobre tu pregunta, pues siendo root o usuario simplemente no funciona X-Sane, vaya, no detecta el scanner. De paso, te proprociono informacion como la que expones en tu post para ver si puedes ayudarme un poco mas:

/proc/bus/usb/devices

```
shell# cat /proc/bus/usb/devices

T:  Bus=04 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#=  2 Spd=12  MxCh= 0

D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1

P:  Vendor=03f0 ProdID=4b11 Rev= 1.00

S:  Manufacturer=HP

S:  Product=Officejet 6200 series

S:  SerialNumber=CN654EF2DZ0453

C:* #Ifs= 3 Cfg#= 1 Atr=c0 MxPwr=  2mA

I:* If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=cc Prot=00 Driver=(none)

E:  Ad=01(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms

E:  Ad=81(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms

E:  Ad=82(I) Atr=03(Int.) MxPS=   8 Ivl=10ms

I:* If#= 1 Alt= 0 #EPs= 3 Cls=07(print) Sub=01 Prot=02 Driver=(none)

E:  Ad=03(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms

E:  Ad=83(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms

E:  Ad=84(I) Atr=03(Int.) MxPS=   8 Ivl=10ms

I:* If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)

E:  Ad=05(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms

E:  Ad=85(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms

E:  Ad=86(I) Atr=03(Int.) MxPS=   8 Ivl=10ms

I:  If#= 2 Alt= 1 #EPs= 3 Cls=ff(vend.) Sub=d4 Prot=00 Driver=(none)

E:  Ad=05(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms

E:  Ad=85(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms

E:  Ad=86(I) Atr=03(Int.) MxPS=   8 Ivl=10ms
```

/etc/hotplug/usb/libusbscanner 

```
shell# cat /etc/hotplug/usb/libusbscanner 

#!/bin/sh

ACTION=[add|remove]

DEVICE=/proc/bus/usb/004/

TYPE=usb

# latest hotplug doesn't set DEVICE on 2.6.x kernels

if [ -z "$DEVICE" ] ; then

  IF=`echo $DEVPATH | sed 's/\(bus\/usb\/devices\/\)\(.*\)-\(.*\)/\2/'`

  DEV=$(cat /sys/${DEVPATH}/devnum)

  DEVICE=`printf '/proc/bus/usb/%.03d/%.03d' $IF $DEV`

fi

if [ "$ACTION" = "add" -a "$TYPE" = "usb" ]; then

  chown root:scanner "$DEVICE"

  chmod 0660 "$DEVICE"

fi

# That's an insecure but simple alternative

# Everyone has access to the scanner

# if [ "$ACTION" = "add" -a "$TYPE" = "usb" ]; then

#  chmod 0666 "$DEVICE"

# fi
```

/etc/hotplug/usb/libsane.usermap  No entiendo muy bien el archivo, pero agrege la siguiente linea que veran, como ven solo copie una linea de otra impresora y susitui lo que estaba delante de 0x0003, por: 0x03f0 0x4b11

```
shell# cat /etc/hotplug/usb/libsane.usermap 

# HP OfficeJet 6210 All-in-One

libusbscanner 0x0003 0x03f0 0x4b11 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000
```

lsusb

```
shell# lsusb

Bus 004 Device 002: ID 03f0:4b11 Hewlett-Packard 
```

/etc/sane.d/dll.conf. Aqui comente las lineas y deje solamente hp, net y hpaio

```
shell# cat /etc/sane.d/dll.conf

hp

net

hpaio
```

/etc/sane.d/hp.conf. Aqui agrege una linea nueva donde invoco a mi impresora (HP OfficeJet 6210 All-in-One).

```
shell# cat /etc/sane.d/hp.conf

scsi HP

# Uncomment the following if you have "Error during device I/O" on SCSI

#   option dumb-read

#

# The usual place for a SCSI-scanner on Linux

# /dev/scanner

#

# USB-scanners supported by the hp-backend

# HP ScanJet 4100C

usb 0x03f0 0x0101

# HP ScanJet 5200C

usb 0x03f0 0x0401

# HP ScanJet 62X0C

usb 0x03f0 0x0201

# HP ScanJet 63X0C

usb 0x03f0 0x0601

# HP OfficeJet 6210 All-in-One

usb 0x03f0 0x4b11

#

# Uncomment the following if your scanner is connected by USB,

# but you are not using libusb

# /dev/usb/scanner0

# option connect-device
```

Ejecuto xsane como root y se queda el xsane parado por unos 20 segundos, despues simplemente dice que no encontro dispositivo scanner, y si ejecuto xsane como usuario directamente sale la ventaan de que no encontro escaner..

Ejecuto scanimage -L y ahora muestra:

```
shell# scanimage -L

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).
```

----------

## i92guboj

¿Y los permisos de proc?

Creo que sería en tu caso el puerto 4, atendiendo a la salida de tu /proc/bus/usb/devices, 

```
ls -l /proc/bus/usb/004
```

Los permisos tienen que ser al menos de lectura y escritura para usuario y grupo, el usuario sería root y el grupo scanner. Supongo también que ya lo has comprobado, pero por si acaso ¿está tu usuario en el grupo scanner?

----------

## Diabliyo

 *i92guboj wrote:*   

> ¿Y los permisos de proc?
> 
> Creo que sería en tu caso el puerto 4, atendiendo a la salida de tu /proc/bus/usb/devices, 
> 
> ```
> ...

 

Dentro de /proc/bus/usb/004/ existen dos archivos que son:

```
sgell# ls -l /proc/bus/usb/004/

-rw-rw-r-- 1 root usb  43 May  5 17:43 001

-rw-rw-r-- 1 root usb 147 May  5 17:43 002

```

Pero asumo que mi scanner es 004/002 mas especificamente, ya que sane-find-scanner indica:

```
found USB scanner (vendor=0x03f0 [HP], product=0x4b11 [Officejet 6200 series]) at libusb:004:002 
```

Siendo asi, como deberia especificar el scanner dentro del archivo /etc/hotplug/usb/libusbscanner , la variable  DEVICE como deberia ir ??

```
DEVICE=/proc/bus/usb/004/ 

DEVICE=/proc/bus/usb/004/002 
```

A parte, no tengo un grupo 'scanners', pero.. mi usuario si esta dentro del grupo de 'usb', pero aun asi el error persiste siendo root o usuario comun  :Sad: 

Que me recomiendas hacer ??

----------

## johpunk

yo con agregar mi usuario al grupo scanner e instalar el xsane tengo para que me funcione pero esta vez nose como que esta entrando en conflictos con mi web cam pq al abrirlo me da 2 opciones a elegir 

 *Quote:*   

> http://img12.imageshack.us/img12/6743/xsane.png

 

con cualquier opcion que elija no me deja usar el scanner no escanea, alguna idea?

----------

## pcmaster

En ese modelo de HP no sé si será necesario, pero en otros, como los Agfa, hay que configurar la carga del firmware.  Sin él, no van.

----------

## esteban_conde

 *pcmaster wrote:*   

> como los Agfa, hay que configurar la carga del firmware. Sin él, no van.

 

Cierto y los canon mp2400 tambien es la que tengo y tuve que bajar firmware y compilar, para la impresora y para el escaner.

----------

## Diabliyo

Entonces que puedo hacer ???... no entiendo porque no funciona el scanner :S.... En Slackware no tuve que configurar nada, asi que no supe ni como se las ingenio el Xsane para detectar mi scanner :S....

Algo si me tiene en duda, en el hp.conf que incorpora el sane para manipulacion de scanners HP menciona que si tengo instalado hpij deshabilite una linea para impresoras que usen dicho paquete (hpij), pero ironicamente  :Sad:  en gentoo no se incorpora hpij, a cambio de este, se usa hplip, asi que, me surge la duda de que si el hplip podria servir de algo para hacer funcionar mi scanner ??..

Tambien otra cosa que me carcome el cerebro es que... hplip (de portage) no incorpora soporte para mi impresora, por ello tuve que buscar el PPD yo mismo y meterlo a la carpeta donde estan todos los PPDs, me parece un poco raro esto :S !!

El PPD para mi impresora la tuve que bajar manualmente de aqui: http://www.linuxprinting.org/show_printer.cgi?recnum=HP-OfficeJet_6200

bye bye

----------

