Jump to content

HP4200 scanner problem


aRTee
 Share

Recommended Posts

I'm having problems getting my hp4200C scanner to work in Mdk9.1.

 

I have found several mentions on the web that this scanner can work, and mdk includes the driver for it. I just can't get the darn thing to do anything, xsane complains 'no devices available'.

Clicking on 'help' then gives some info about what could be wrong, which I all checked...

 

With mcc + scannerdrake all I get is: have found scanner; it finds the right name (hp4200C), I configure it (select the backend, hp4200c, small 'c' instead of 'C'.. does that matter?), it tells me it has made the necessary adjustments, but then in the summary doesn't show it as a scanner.....

In the hardware section it does show up as a scanner, called HP4200C...

 

Anyway, here's some output of what I tried:

$ sane-find-scanner



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

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



found USB scanner (vendor=0x03f0, product=0x0105) at /dev/usb/scanner0

found USB scanner (vendor=0x03f0, product=0x0105) at libusb:001:004

found USB scanner (vendor=0x0471, product=0x0312) at libusb:003:003

 # A USB device was detected. This program can't be sure if it's really

 # a scanner. If it is your scanner, it may or may not be supported by

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



 # Scanners connected to the parallel port or other proprietary ports can't be

 # detected by this program.



 # You may want to run this program as root to find all devices. Once you

 # found the scanner devices, be sure to adjust access permissions as

 # necessary.

and

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

 

?? so why doesn't it see it?

BTW:

$ cat /etc/sane.d/hp4200.conf

# Options dor the hp4200 backend



# Autodetect the HP4200c

usb 0x03f0 0x0105

device libusb:001:003



#/dev/usbscanner

/dev/usb/scanner0

#/dev/scanner

Note: I added the line about the device (after seeing others had added it with good results)... if it's not there, the result is the same...

$ cat /etc/sane.d/dll.conf

hp4200

The scanner is seen by the system:

$ tail /proc/bus/usb/devices

I:  If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=01 Prot=02 Driver=hid

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

T:  Bus=01 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#=  4 Spd=12  MxCh= 0

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

P:  Vendor=03f0 ProdID=0105 Rev= 1.00

C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr=100mA

I:  If#= 0 Alt= 0 #EPs= 3 Cls=00(>ifc ) Sub=00 Prot=00 Driver=usbscanner

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

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

E:  Ad=83(I) Atr=03(Int.) MxPS=   1 Ivl=1ms

Also, the backend really exists:

# ll /usr/lib/sane/libsane-hp4*

lrwxrwxrwx    1 root     root           24 Mar 27 22:27 /usr/lib/sane/libsane-hp4200.so.1 -> libsane-hp4200.so.1.0.11*

-rwxr-xr-x    1 root     root        66174 Feb 15 23:48 /usr/lib/sane/libsane-hp4200.so.1.0.11*

Oh and sure:

# ll /dev/usb/scanner0

crw-rw----    1 robert   usb      180,  48 Jan  1  1970 /dev/usb/scanner0

The device exists (and is attributed to my username) and the module is loaded:

# lsmod | grep scanner

scanner                10904   0

usbcore                72992   1  [scanner pwc usbmouse hid printer ehci-hcd usb-uhci]

 

And by the way, I also tried as root, and I also tried telling xsane directly (as user and root):

xsane -d hp4200:/dev/usb/scanner0

and

# scanimage -d hp4200:/dev/usb/scanner0

scanimage: open of device hp4200:/dev/usb/scanner0 failed: Operation not supported

Without any success....

 

So how do I tell the system/xsane to just scan? :(

Link to comment
Share on other sites

and mdk includes the driver for it

 

No it doesn'thttp://www.meier-geinitz.de/s0ane/lists/sa...s-external.html

 

Gregor, thanks for your reply and finding me this link on the web.

I didn't mention sane includes the driver, I mentioned Mandrake does.

If you reread my first post, you will see that I actually put that info in there:

 

# ll /usr/lib/sane/libsane-hp4*

lrwxrwxrwx  1 root   root       24 Mar 27 22:27 /usr/lib/sane/libsane-hp4200.so.1 -> libsane-hp4200.so.1.0.11*

-rwxr-xr-x  1 root   root    66174 Feb 15 23:48 /usr/lib/sane/libsane-hp4200.so.1.0.11*

Which clearly shows that the backend is present and the link properly set.

 

So Mandrake does include the backend for the hp4200c scanner. BTW it is also in the list when you get to handpick the scanner yourself.

 

Now back to why I can't get xsane /scanimage to use this backend....??

Link to comment
Share on other sites

try modprobing the scanner.o module with :

modprobe scanner vendor=# product=#

(vendor=0x03f0, product=0x0105) not likely but.

 

In your output here:

$ cat /etc/sane.d/hp4200.conf

# Options dor the hp4200 backend

 

# Autodetect the HP4200c

usb 0x03f0 0x0105

device libusb:001:003

 

#/dev/usbscanner

/dev/usb/scanner0

#/dev/scann

comment out the /dev/usb/scaner.... (second last line)

 

now unload the scanner module . rmmod scanner.

 

now try the scanimage, or xscanimage or whatever.

 

hope it works.

If not uncomment the line you commmented out and then with the scanner module still unloaded try again to scan. when debugging you can easily use root for all tries just to eliminate the possibility of it being a permissions issue.

 

Read the info page (info sane-usb).

 

 


Link to comment
Share on other sites

[root@localhost gregor]# SANE_DEBUG_HP4200=128 SANE_DEBUG_SANEI_USB=128 SANE_DEBUG_DLL=128 scanimage -d hp4200:/dev/usb/scanner0

[sanei_debug] Setting debug level of dll to 128.

[dll] sane_init: SANE dll backend version 1.0.8 from sane-backends 1.0.11

[dll] add_backend: adding backend `net'

[dll] add_backend: adding backend `abaton'

[dll] add_backend: adding backend `agfafocus'

[dll] add_backend: adding backend `apple'

[dll] add_backend: adding backend `avision'

[dll] add_backend: adding backend `artec'

[dll] add_backend: adding backend `artec_eplus48u'

[dll] add_backend: adding backend `as6e'

[dll] add_backend: adding backend `bh'

[dll] add_backend: adding backend `canon'

[dll] add_backend: adding backend `canon630u'

[dll] add_backend: adding backend `coolscan'

[dll] add_backend: adding backend `coolscan2'

[dll] add_backend: adding backend `dmc'

[dll] add_backend: adding backend `epson'

[dll] add_backend: adding backend `fujitsu'

[dll] add_backend: adding backend `gt68xx'

[dll] add_backend: adding backend `hp'

[dll] add_backend: adding backend `hp4200'

[dll] add_backend: adding backend `hpsj5s'

[dll] add_backend: adding backend `leo'

[dll] add_backend: adding backend `matsushita'

[dll] add_backend: adding backend `microtek'

[dll] add_backend: adding backend `microtek2'

[dll] add_backend: adding backend `mustek'

[dll] add_backend: adding backend `mustek_usb'

[dll] add_backend: adding backend `nec'

[dll] add_backend: adding backend `pie'

[dll] add_backend: adding backend `pint'

[dll] add_backend: adding backend `plustek'

[dll] add_backend: adding backend `qcam'

[dll] add_backend: adding backend `ricoh'

[dll] add_backend: adding backend `s9036'

[dll] add_backend: adding backend `sceptre'

[dll] add_backend: adding backend `sharp'

[dll] add_backend: adding backend `sm3600'

[dll] add_backend: adding backend `snapscan'

[dll] add_backend: adding backend `sp15c'

[dll] add_backend: adding backend `tamarack'

[dll] add_backend: adding backend `teco1'

[dll] add_backend: adding backend `teco2'

[dll] add_backend: adding backend `teco3'

[dll] add_backend: adding backend `umax'

[dll] add_backend: adding backend `umax1220u'

[dll] add_backend: adding backend `v4l'

[dll] add_backend: adding backend `viceo'

[dll] add_backend: adding backend `niash'

[dll] load: searching backend `hp4200' in `/usr/lib/sane'

[dll] load: trying to load `/usr/lib/sane/libsane-hp4200.so.1'

[dll] load: dlopen()ing `/usr/lib/sane/libsane-hp4200.so.1'

[dll] init: initializing backend `hp4200'

[sanei_debug] Setting debug level of hp4200 to 128.

[hp4200] sane_hp4200_init

[sanei_debug] Setting debug level of sanei_usb to 128.

[sanei_usb] sanei_usb_init: found kernel scanner device (0x03f0/0x0105) at /dev/usb/scanner0

usb_set_debug: Setting debugging level to 255 (on)

usb_find_busses: Skipping non bus directory devices

usb_find_busses: Skipping non bus directory drivers

usb_find_busses: Found 002

usb_find_busses: Found 001

usb_find_devices_on_bus: Found 001 on 001

usb_find_devices_on_bus: Found 002 on 001

skipped 1 class/vendor specific interface descriptors

usb_find_devices_on_bus: Found 003 on 001

usb_find_devices_on_bus: Found 001 on 002

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x046d/0xc00c doesn't look like a scanner (0/3)

[sanei_usb] sanei_usb_init: found libusb device (0x03f0/0x0105) at libusb:001:003

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: found 2 devices

[hp4200] sane_hp4200_init: configuration file not found, defaulting to /dev/usbscanner.

[hp4200] add_device(/dev/usbscanner)

[hp4200] find_device

[hp4200] add_device: open(/dev/usbscanner) failed: No such file or directory

[hp4200] sane_hp4200_init: failed to add device "/dev/usbscanner"

[dll] init: backend `hp4200' is version 1.0.0

[hp4200] sane_hp4200_open (/dev/usb/scanner0, 0xbffff204)

[hp4200] find_device

[hp4200] add_device(/dev/usb/scanner0)

[hp4200] find_device

[sanei_usb] kernel_get_vendor_product: ioctl (vendor) of device 0 failed: Invalid argument

[sanei_usb] sanei_usb_get_vendor_product: ioctl (product) of device 0 failed: Invalid argument

[sanei_usb] sanei_usb_get_vendor_product: device 5: Your OS doesn't seem to support detection of vendor+product ids

[hp4200] : sanei_usb_get_vendor_product failed

scanimage: open of device hp4200:/dev/usb/scanner0 failed: Operation not supported

[dll] sane_exit: exiting

[dll] sane_exit: calling backend `hp4200's exit function

[hp4200] sane_hp4200_exit

[hp4200] sane_hp4200_close (0x805bce8)

[dll] sane_exit: finished

Link to comment
Share on other sites

Changed the name of a configuration file from hp4200.conf to HP4200.conf:

 

[root@localhost gregor]# SANE_CONFIG_DIR=/etc/sane.d SANE_DEBUG_HP4200=128 SANE_DEBUG_SANEI_USB=128 SANE_DEBUG_DLL=128 scanimage -d hp4200:/dev/usb/scanner0

[sanei_debug] Setting debug level of dll to 128.

[dll] sane_init: SANE dll backend version 1.0.8 from sane-backends 1.0.11

[dll] add_backend: adding backend `net'

[dll] add_backend: adding backend `abaton'

[dll] add_backend: adding backend `agfafocus'

[dll] add_backend: adding backend `apple'

[dll] add_backend: adding backend `avision'

[dll] add_backend: adding backend `artec'

[dll] add_backend: adding backend `artec_eplus48u'

[dll] add_backend: adding backend `as6e'

[dll] add_backend: adding backend `bh'

[dll] add_backend: adding backend `canon'

[dll] add_backend: adding backend `canon630u'

[dll] add_backend: adding backend `coolscan'

[dll] add_backend: adding backend `coolscan2'

[dll] add_backend: adding backend `dmc'

[dll] add_backend: adding backend `epson'

[dll] add_backend: adding backend `fujitsu'

[dll] add_backend: adding backend `gt68xx'

[dll] add_backend: adding backend `hp'

[dll] add_backend: adding backend `hp4200'

[dll] add_backend: adding backend `hpsj5s'

[dll] add_backend: adding backend `leo'

[dll] add_backend: adding backend `matsushita'

[dll] add_backend: adding backend `microtek'

[dll] add_backend: adding backend `microtek2'

[dll] add_backend: adding backend `mustek'

[dll] add_backend: adding backend `mustek_usb'

[dll] add_backend: adding backend `nec'

[dll] add_backend: adding backend `pie'

[dll] add_backend: adding backend `pint'

[dll] add_backend: adding backend `plustek'

[dll] add_backend: adding backend `qcam'

[dll] add_backend: adding backend `ricoh'

[dll] add_backend: adding backend `s9036'

[dll] add_backend: adding backend `sceptre'

[dll] add_backend: adding backend `sharp'

[dll] add_backend: adding backend `sm3600'

[dll] add_backend: adding backend `snapscan'

[dll] add_backend: adding backend `sp15c'

[dll] add_backend: adding backend `tamarack'

[dll] add_backend: adding backend `teco1'

[dll] add_backend: adding backend `teco2'

[dll] add_backend: adding backend `teco3'

[dll] add_backend: adding backend `umax'

[dll] add_backend: adding backend `umax1220u'

[dll] add_backend: adding backend `v4l'

[dll] add_backend: adding backend `viceo'

[dll] add_backend: adding backend `niash'

[dll] load: searching backend `hp4200' in `/usr/lib/sane'

[dll] load: trying to load `/usr/lib/sane/libsane-hp4200.so.1'

[dll] load: dlopen()ing `/usr/lib/sane/libsane-hp4200.so.1'

[dll] init: initializing backend `hp4200'

[sanei_debug] Setting debug level of hp4200 to 128.

[hp4200] sane_hp4200_init

[sanei_debug] Setting debug level of sanei_usb to 128.

[sanei_usb] sanei_usb_init: found kernel scanner device (0x03f0/0x0105) at /dev/usb/scanner0

usb_set_debug: Setting debugging level to 255 (on)

usb_find_busses: Skipping non bus directory devices

usb_find_busses: Skipping non bus directory drivers

usb_find_busses: Found 002

usb_find_busses: Found 001

usb_find_devices_on_bus: Found 001 on 001

usb_find_devices_on_bus: Found 002 on 001

skipped 1 class/vendor specific interface descriptors

usb_find_devices_on_bus: Found 003 on 001

usb_find_devices_on_bus: Found 001 on 002

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x046d/0xc00c doesn't look like a scanner (0/3)

[sanei_usb] sanei_usb_init: found libusb device (0x03f0/0x0105) at libusb:001:003

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: found 2 devices

[hp4200] attach_matching_devices(usb 0x03f0 0x0105)

[sanei_usb] sanei_usb_find_devices: vendor=0x03f0, product=0x0105, attach=0x4001b1f0

[hp4200] attach

[hp4200] add_device(/dev/usb/scanner0)

[hp4200] find_device

[hp4200] attach

[hp4200] add_device(libusb:001:003)

[hp4200] find_device

[hp4200] add_device: open(libusb:001:003) failed: No such file or directory

[hp4200] attach_matching_devices(/dev/usb/scanner0)

[hp4200] attach

[hp4200] add_device(/dev/usb/scanner0)

[hp4200] find_device

[dll] init: backend `hp4200' is version 1.0.0

[hp4200] sane_hp4200_open (/dev/usb/scanner0, 0xbffff1c4)

[hp4200] find_device

[sanei_usb] kernel_get_vendor_product: ioctl (vendor) of device 0 failed: Invalid argument

[sanei_usb] sanei_usb_get_vendor_product: ioctl (product) of device 0 failed: Invalid argument

[sanei_usb] sanei_usb_get_vendor_product: device 5: Your OS doesn't seem to support detection of vendor+product ids

[hp4200] : sanei_usb_get_vendor_product failed

scanimage: open of device hp4200:/dev/usb/scanner0 failed: Operation not supported

[dll] sane_exit: exiting

[dll] sane_exit: calling backend `hp4200's exit function

[hp4200] sane_hp4200_exit

[hp4200] sane_hp4200_close (0x805bce8)

[dll] sane_exit: finished

Link to comment
Share on other sites

[dll] load: searching backend `hp4200' in `/usr/lib/sane'

[dll] load: trying to load `/usr/lib/sane/libsane-hp4200.so.1'

[dll] load: dlopen()ing `/usr/lib/sane/libsane-hp4200.so.1'

[dll] init: initializing backend `hp4200'

[sanei_debug] Setting debug level of hp4200 to 128.

[hp4200] sane_hp4200_init

[sanei_debug] Setting debug level of sanei_usb to 128.

usb_os_init: Found USB VFS at /proc/bus/usb

usb_set_debug: Setting debugging level to 255 (on)

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x046d/0xc00c doesn't look like a scanner (0/3)

[sanei_usb] sanei_usb_init: found libusb device (0x03f0/0x0105) at libusb:001:003

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: found 1 devices

[hp4200] attach_matching_devices(usb 0x03f0 0x0105)

[sanei_usb] sanei_usb_find_devices: vendor=0x03f0, product=0x0105, attach=0x4058b1f0

[hp4200] attach

[hp4200] add_device(libusb:001:003)

[hp4200] find_device

[hp4200] add_device: open(libusb:001:003) failed: No such file or directory

[dll] init: backend `hp4200' is version 1.0.0

[hp4200] sane_hp4200_get_devices (0xbffff218, 0)

Link to comment
Share on other sites

Ok, I've been at it a bit again,...

 

Gregory, nice to know you're on my side; I was already thinking why you got that link so quickly to say it wasn't supported,... guess you had been looking for it too.. (btw I have to wonder if all this is worth it, 8-bit color and 600dpi seems to be the limit)

 

I'm sorry if this post gets long, but I don't want to omit anything that might give a hint as to what could be a remedy for this situation.

 

here we go (I'm posting the whole result for comparison reasons) :

[root@zurich robert]# rmmod scanner

[root@zurich robert]# SANE_CONFIG_DIR=/etc/sane.d SANE_DEBUG_HP4200=128 SANE_DEBUG_SANEI_USB=128 SANE_DEBUG_DLL=128 scanimage -d hp4200:/proc/bus/usb/001/003

[sanei_debug] Setting debug level of dll to 128.

[dll] sane_init: SANE dll backend version 1.0.8 from sane-backends 1.0.11

[dll] add_backend: adding backend `hp4200'

[dll] load: searching backend `hp4200' in `/usr/lib/sane'

[dll] load: trying to load `/usr/lib/sane/libsane-hp4200.so.1'

[dll] load: dlopen()ing `/usr/lib/sane/libsane-hp4200.so.1'

[dll] init: initializing backend `hp4200'

[sanei_debug] Setting debug level of hp4200 to 128.

[hp4200] sane_hp4200_init

[sanei_debug] Setting debug level of sanei_usb to 128.

[sanei_usb] sanei_usb_init: found kernel scanner device (0x03f0/0x0105) at /dev/usb/scanner0

usb_set_debug: Setting debugging level to 255 (on)

usb_find_busses: Skipping non bus directory devices

usb_find_busses: Skipping non bus directory drivers

usb_find_busses: Found 005

usb_find_busses: Found 004

usb_find_busses: Found 003

usb_find_busses: Found 002

usb_find_busses: Found 001

usb_find_devices_on_bus: Found 001 on 001

usb_find_devices_on_bus: Found 002 on 001

skipped 1 class/vendor specific interface descriptors

usb_find_devices_on_bus: Found 003 on 001

usb_find_devices_on_bus: Found 001 on 002

usb_find_devices_on_bus: Found 001 on 003

usb_find_devices_on_bus: Found 002 on 003

skipped 4 class/vendor specific interface descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

usb_find_devices_on_bus: Found 001 on 004

usb_find_devices_on_bus: Found 001 on 005

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x046d/0xc506 doesn't look like a scanner (0/3)

[sanei_usb] sanei_usb_init: found libusb device (0x03f0/0x0105) at libusb:001:003

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: found libusb device (0x0471/0x0312) at libusb:003:002

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: found 3 devices

[hp4200] sane_hp4200_init: configuration file not found, defaulting to /dev/usbscanner.

[hp4200] add_device(/dev/usbscanner)

[hp4200] find_device

[hp4200] add_device: open(/dev/usbscanner) failed: No such file or directory

[hp4200] sane_hp4200_init: failed to add device "/dev/usbscanner"

[dll] init: backend `hp4200' is version 1.0.0

[hp4200] sane_hp4200_open (/proc/bus/usb/001/003, 0xbffff074)

[hp4200] find_device

[hp4200] add_device(/proc/bus/usb/001/003)

[hp4200] find_device

[sanei_usb] kernel_get_vendor_product: ioctl (vendor) of device 0 failed: Invalid argument

[sanei_usb] sanei_usb_get_vendor_product: ioctl (product) of device 0 failed: Invalid argument

[sanei_usb] sanei_usb_get_vendor_product: device 5: Your OS doesn't seem to support detection of vendor+product ids

[hp4200] : sanei_usb_get_vendor_product failed

scanimage: open of device hp4200:/proc/bus/usb/001/003 failed: Operation not supported

[dll] sane_exit: exiting

[dll] sane_exit: calling backend `hp4200's exit function

[hp4200] sane_hp4200_exit

[hp4200] sane_hp4200_close (0x80625f8)

[dll] sane_exit: finished

Ok, so wrong syntax or so.

 

Then I thought: let's try it the right way:

[root@zurich robert]# SANE_CONFIG_DIR=/etc/sane.d SANE_DEBUG_HP4200=128 SANE_DEBUG_SANEI_USB=128 SANE_DEBUG_DLL=128 scanimage -L

[sanei_debug] Setting debug level of dll to 128.

[dll] sane_init: SANE dll backend version 1.0.8 from sane-backends 1.0.11

[dll] add_backend: adding backend `hp4200'

[dll] load: searching backend `hp4200' in `/usr/lib/sane'

[dll] load: trying to load `/usr/lib/sane/libsane-hp4200.so.1'

[dll] load: dlopen()ing `/usr/lib/sane/libsane-hp4200.so.1'

[dll] init: initializing backend `hp4200'

[sanei_debug] Setting debug level of hp4200 to 128.

[hp4200] sane_hp4200_init

[sanei_debug] Setting debug level of sanei_usb to 128.

usb_set_debug: Setting debugging level to 255 (on)

usb_find_busses: Skipping non bus directory devices

usb_find_busses: Skipping non bus directory drivers

usb_find_busses: Found 005

usb_find_busses: Found 004

usb_find_busses: Found 003

usb_find_busses: Found 002

usb_find_busses: Found 001

usb_find_devices_on_bus: Found 001 on 001

usb_find_devices_on_bus: Found 002 on 001

skipped 1 class/vendor specific interface descriptors

usb_find_devices_on_bus: Found 003 on 001

usb_find_devices_on_bus: Found 001 on 002

usb_find_devices_on_bus: Found 001 on 003

usb_find_devices_on_bus: Found 002 on 003

skipped 4 class/vendor specific interface descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

usb_find_devices_on_bus: Found 001 on 004

usb_find_devices_on_bus: Found 001 on 005

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x046d/0xc506 doesn't look like a scanner (0/3)

[sanei_usb] sanei_usb_init: found libusb device (0x03f0/0x0105) at libusb:001:003

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: found libusb device (0x0471/0x0312) at libusb:003:002

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: found 2 devices

[hp4200] sane_hp4200_init: configuration file not found, defaulting to /dev/usbscanner.

[hp4200] add_device(/dev/usbscanner)

[hp4200] find_device

[hp4200] add_device: open(/dev/usbscanner) failed: No such file or directory

[hp4200] sane_hp4200_init: failed to add device "/dev/usbscanner"

[dll] init: backend `hp4200' is version 1.0.0

[hp4200] sane_hp4200_get_devices (0xbffff0a8, 0)



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

[dll] sane_exit: exiting

[dll] sane_exit: calling backend `hp4200's exit function

[hp4200] sane_hp4200_exit

[dll] sane_exit: finished

 

Hmm, did I read that correctly that it found a device but couldn't connect to it since /dev/usbscanner doesn't exist? (Which is the default since I commented out the line /dev/usb/scanner0 from /etc/sane.d/hp4200.conf )

Let's try again:

 

 

[root@zurich robert]# ln -s /dev/usb/scanner0 /dev/usbscanner

[root@zurich robert]# SANE_CONFIG_DIR=/etc/sane.d SANE_DEBUG_HP4200=128 SANE_DEBUG_SANEI_USB=128 SANE_DEBUG_DLL=128 scanimage -L

[sanei_debug] Setting debug level of dll to 128.

[dll] sane_init: SANE dll backend version 1.0.8 from sane-backends 1.0.11

[dll] add_backend: adding backend `hp4200'

[dll] load: searching backend `hp4200' in `/usr/lib/sane'

[dll] load: trying to load `/usr/lib/sane/libsane-hp4200.so.1'

[dll] load: dlopen()ing `/usr/lib/sane/libsane-hp4200.so.1'

[dll] init: initializing backend `hp4200'

[sanei_debug] Setting debug level of hp4200 to 128.

[hp4200] sane_hp4200_init

[sanei_debug] Setting debug level of sanei_usb to 128.

[sanei_usb] sanei_usb_init: found kernel scanner device (0x03f0/0x0105) at /dev/usbscanner

[sanei_usb] sanei_usb_init: found kernel scanner device (0x03f0/0x0105) at /dev/usb/scanner0

usb_set_debug: Setting debugging level to 255 (on)

usb_find_busses: Skipping non bus directory devices

usb_find_busses: Skipping non bus directory drivers

usb_find_busses: Found 005

usb_find_busses: Found 004

usb_find_busses: Found 003

usb_find_busses: Found 002

usb_find_busses: Found 001

usb_find_devices_on_bus: Found 001 on 001

usb_find_devices_on_bus: Found 002 on 001

skipped 1 class/vendor specific interface descriptors

usb_find_devices_on_bus: Found 003 on 001

usb_find_devices_on_bus: Found 001 on 002

usb_find_devices_on_bus: Found 001 on 003

usb_find_devices_on_bus: Found 002 on 003

skipped 4 class/vendor specific interface descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

usb_find_devices_on_bus: Found 001 on 004

usb_find_devices_on_bus: Found 001 on 005

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x046d/0xc506 doesn't look like a scanner (0/3)

[sanei_usb] sanei_usb_init: found libusb device (0x03f0/0x0105) at libusb:001:003

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: found libusb device (0x0471/0x0312) at libusb:003:002

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: found 4 devices

[hp4200] sane_hp4200_init: configuration file not found, defaulting to /dev/usbscanner.

[hp4200] add_device(/dev/usbscanner)

[hp4200] find_device

[dll] init: backend `hp4200' is version 1.0.0

[hp4200] sane_hp4200_get_devices (0xbffff0a8, 0)

device `hp4200:/dev/usbscanner' is a Hewlett-Packard HP-4200 flatbed scanner

[dll] sane_exit: exiting

[dll] sane_exit: calling backend `hp4200's exit function

[hp4200] sane_hp4200_exit

[dll] sane_exit: finished

Hello!

It said my scanners name! ;)

Unfortunately, at this point when I try (as user or as root):

xsane -d hp4200:/dev/usbscanner

I get a popup:

Failed to open device 'hp4200:/dev/usbscanner':

Operation not supported

 

So then I put the path /dev/usb/scanner0 back into the hp4200.conf file and removed /dev/usbscanner (the link) but it still didn't see it, it really wants it at /dev/usbscanner:

[root@zurich robert]# SANE_CONFIG_DIR=/etc/sane.d SANE_DEBUG_HP4200=128 SANE_DEBUG_SANEI_USB=128 SANE_DEBUG_DLL=128 scanimage -L

[sanei_debug] Setting debug level of dll to 128.

[dll] sane_init: SANE dll backend version 1.0.8 from sane-backends 1.0.11

[dll] add_backend: adding backend `hp4200'

[dll] load: searching backend `hp4200' in `/usr/lib/sane'

[dll] load: trying to load `/usr/lib/sane/libsane-hp4200.so.1'

[dll] load: dlopen()ing `/usr/lib/sane/libsane-hp4200.so.1'

[dll] init: initializing backend `hp4200'

[sanei_debug] Setting debug level of hp4200 to 128.

[hp4200] sane_hp4200_init

[sanei_debug] Setting debug level of sanei_usb to 128.

[sanei_usb] sanei_usb_init: found kernel scanner device (0x03f0/0x0105) at /dev/usb/scanner0

usb_set_debug: Setting debugging level to 255 (on)

usb_find_busses: Skipping non bus directory devices

usb_find_busses: Skipping non bus directory drivers

usb_find_busses: Found 005

usb_find_busses: Found 004

usb_find_busses: Found 003

usb_find_busses: Found 002

usb_find_busses: Found 001

usb_find_devices_on_bus: Found 001 on 001

usb_find_devices_on_bus: Found 002 on 001

skipped 1 class/vendor specific interface descriptors

usb_find_devices_on_bus: Found 003 on 001

usb_find_devices_on_bus: Found 001 on 002

usb_find_devices_on_bus: Found 001 on 003

usb_find_devices_on_bus: Found 002 on 003

skipped 4 class/vendor specific interface descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

skipped 2 class/vendor specific interface descriptors

skipping descriptor 0x25

skipped 1 class/vendor specific endpoint descriptors

usb_find_devices_on_bus: Found 001 on 004

usb_find_devices_on_bus: Found 001 on 005

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x046d/0xc506 doesn't look like a scanner (0/3)

[sanei_usb] sanei_usb_init: found libusb device (0x03f0/0x0105) at libusb:001:003

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: found libusb device (0x0471/0x0312) at libusb:003:002

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub

[sanei_usb] sanei_usb_init: found 3 devices

[hp4200] sane_hp4200_init: configuration file not found, defaulting to /dev/usbscanner.

[hp4200] add_device(/dev/usbscanner)

[hp4200] find_device

[hp4200] add_device: open(/dev/usbscanner) failed: No such file or directory

[hp4200] sane_hp4200_init: failed to add device "/dev/usbscanner"

[dll] init: backend `hp4200' is version 1.0.0

[hp4200] sane_hp4200_get_devices (0xbffff0a8, 0)



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

[dll] sane_exit: exiting

[dll] sane_exit: calling backend `hp4200's exit function

[hp4200] sane_hp4200_exit

[dll] sane_exit: finished

 

Ok, no problem:

[root@zurich robert]# mknod /dev/usbscanner c 180 48

made sure that running the scanimage -L would see the scanner again.

 

I also did a chmod 777 /dev/usbscanner since it didn't have the same permissions as /dev/usb/scanner0 ... but the result is still the same: operation not supported...

 

BTW the mknod wasn't too bad at all:

[root@zurich robert]# sane-find-scanner



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

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



found USB scanner (vendor=0x03f0, product=0x0105) at /dev/usb/scanner0

found USB scanner (vendor=0x03f0, product=0x0105) at /dev/usbscanner

found USB scanner (vendor=0x03f0, product=0x0105) at libusb:001:003

found USB scanner (vendor=0x0471, product=0x0312) at libusb:003:002

 # A USB device was detected. This program can't be sure if it's really

 # a scanner. If it is your scanner, it may or may not be supported by

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



 # Scanners connected to the parallel port or other proprietary ports can't be

 # detected by this program.

[root@zurich robert]# scanimage -L

device `hp4200:/dev/usbscanner' is a Hewlett-Packard HP-4200 flatbed scanner

[root@zurich robert]#

 

But it keeps saying operation not supported...

:(

So what else is there to try?

Link to comment
Share on other sites

well to get at usb scanners, sane can use either libusb methods or the kernel method. the kernel method uses the scanner .o moudule.

BTW the mknod wasn't too bad at all:

 

[root@zurich robert]# sane-find-scanner

 

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

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

 

found USB scanner (vendor=0x03f0, product=0x0105) at /dev/usb/scanner0

found USB scanner (vendor=0x03f0, product=0x0105) at /dev/usbscanner

found USB scanner (vendor=0x03f0, product=0x0105) at libusb:001:003

found USB scanner (vendor=0x0471, product=0x0312) at libusb:003:002

  # A USB device was detected. This program can't be sure if it's really

  # a scanner. If it is your scanner, it may or may not be supported by

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

 

  # Scanners connected to the parallel port or other proprietary ports can't be

  # detected by this program.

[root@zurich robert]# scanimage -L

device `hp4200:/dev/usbscanner' is a Hewlett-Packard HP-4200 flatbed scanner

[root@zurich robert]#

 

now at this point is scanner.o loaded?

remember you need it for /dev/usbscanner... access.

 

I had many problems of the same nature when i tried to get my hp3300c work in linux.

Link to comment
Share on other sites

This may be completely off base, but isn't there a discrepancy between your sane-find-scanner output:

 

$ sane-find-scanner

 

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

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

 

found USB scanner (vendor=0x03f0, product=0x0105) at /dev/usb/scanner0

found USB scanner (vendor=0x03f0, product=0x0105) at libusb:001:004

found USB scanner (vendor=0x0471, product=0x0312) at libusb:003:003

and your hp4200.conf file:

 

# Autodetect the HP4200c

usb 0x03f0 0x0105

device libusb:001:003

 

Your conf file has libusb:001:003 and the sane-find output identifies libusb:001:004 for vendor=0x03f0, product=0x0105. Seems like they should be the same if I were to hazard a guess. You could try editng hp4200.conf to give it the same libusb.

Link to comment
Share on other sites

This probably happened since I also unplugged and replugged my scanner and webcam...

 

I will try what you suggest tonight at home though, but I don't think that will help.... will see, you never know.

(Actually, it is trying to talk to the scanner via /dev/usbscanner anyway...)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...