[sane-devel] Sane doesn't create a scanner device

dark_mail at gmx.net dark_mail at gmx.net
Wed Oct 26 15:14:43 UTC 2005


I think I gathered some new information:

when on debug level 255, scanimage -L gave me the following output (twice):

[sanei_debug] Setting debug level of sanei_usb to 255.
usb_set_debug: Setting debugging level to 255 (on)
usb_os_find_busses: Found 002
usb_os_find_busses: Found 001
usb_os_find_busses: Skipping non bus directory devices
usb_os_find_devices: Found 001 on 002
usb_os_find_devices: Found 002 on 001
usb_os_find_devices: Found 001 on 001
error obtaining child information: Inappropriate ioctl for device
[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub
[sanei_usb] sanei_usb_init: found libusb device (0x04b8/0x080f)
interface 0  at
libusb:001:002
[sanei_usb] sanei_usb_init: device 0x0000/0x0000 looks like a root hub
[sanei_usb] sanei_usb_init: found 1 devices
[sanei_usb] sanei_usb_find_devices: vendor=0x04b8, product=0x080f
[sanei_usb] sanei_usb_open: trying to open device `libusb:001:002'
USB error: could not set config 1: Device or resource busy
[sanei_usb] sanei_usb_open: libusb complained: could not set config 1:
Device or resource busy
[sanei_usb] Maybe the kernel scanner driver claims the scanner's interface?

This happened with the permissions on all files in /proc/bus/usb/001 set
to 0666.

And when trying iscan, it writes me the following to /var/log/messages
(also twice):

usb 1-1: usbfs: interface 1 claimed by usblp while 'iscan' sets config #1

Is this a lock problem or some strange permission issue?

Anyway, I'll try the CVS version as soon as I find enough time to mess
around with it ...

Thanks for your advices! :)

Olaf Meeuwissen wrote:
> CC:ing sane-devel for the benefit of archival purposes.
> 
> dark_mail at gmx.net writes:
> 
> 
>>Actually, I already have switched to udev. So gathering from your
>>answer I guess iscan and udev don't work together.
> 
> 
> Let me put it this way, iscan does not have any udev support so when
> you plug in your device udev may not recognise it as a scanner.  The
> upshot of that is that the device node may not get the permissions
> needed iscan and other SANE frontends to access it.  You will need
> read and write access to the device for it to work.
> 
> Just to make sure, check that the /proc/bus/usb/###/### entry that
> corresponds to your RX420 has read/write access for everyone.  If it
> doesn't, then, as root, do
> 
>   # chmod 0666 /proc/bus/usb/###/###
> 
> and give it another try.
> 
> # For the security conscious boys and girls out there, I know that
> # this is not a good idea in general, but we're just trying to get
> # the damn thing to work here first.
> 
> 
>>I tried again to make the scanner work, without result. It makes no
>>difference if I'm a normal user or root, neither the with epson- nor
>>with the iscan-backend I get it to work.
> 
> 
> Now, if it also doesn't work when you are root, then there may be
> something else that is getting in your way because root normally can
> do anything to the device.  i say normally, because SELinux and the
> like may throw a spanner in the works here.  For now I'm assuming you
> are using the good old Unix ACL mechanism.
> 
> 
>>The node at /proc/bus/usb/001/ is there, but I can't use it in any way.
>>Creating a link from the respective node to something in /dev/ didn't
>>help me, either.
> 
> 
> With /proc being a virtual file system, I'm surprised you managed to
> make it a symlink to anywhere else to begin with.
> 
> 
>>But I can't believe I'm the only one not able to make it work!
> 
> 
> Actually, there is another thread going on (started by russbucket,
> IIRC) that just may be related to this (at least as far as iscan is
> concerned).
> 
> 
>>What do you think: Is udev the reason? Is it something else? Is it me?
> 
> 
> Nah, it's probably the weather or the phase of the moon ;-)
> 
> Seriously, sane-backends should have reasonably working udev support,
> but I vaguely recall seeing some udev related commits recently.  You
> may want to check CVS for the latest scoop on this.
> 
> 
>>I have updated my sane-backend to version 1.0.16, didn't help.
> 
> 
> That version introduced a locking mechanism which may or may not be
> enabled by default on Gentoo.  I don't know the details (yet).  Any
> one else care to jump in?  Henning?
> 
> BTW, the epson backend in that version should support your scanner out
> of the box.  In 1.0.15 it did not, but you could force support for it
> by adding
> 
>   usb 0x04b8 0x080f
> 
> to your /etc/sane.d/epson.conf.
> 
> 
>>I even installed iscan from rpm (which normally isn't a good idea when
>>you use portage for all other packages).
>>
>>I'm close to despair!
> 
> 
> I can tell from your installation from RPM ;-)
> 
> 
>>Olaf Meeuwissen wrote:
>>
>>>Karl Heinz Kremer <khk at khk.net> writes:
>>>
>>>
>>>
>>>>You need to configure your hotplug system - this will then create the  
>>>>scanner device for you once the scanner is connected to the system.  
>>>>I'm not familiar with Gentoo, so I don't know how this is done with  
>>>>your system.
>>>
>>>
>>>There most likely will be a dynamically created device by the name of
>>>
>>>  /proc/bus/usb/001/004
>>>
>>>but it may not have the correct permissions.  You need read and write
>>>permissions for the user that wants to use the scanner.
>>>
>>>Note that when you re-plug or power cycle the device it will change
>>>"names" (probably to /proc/bus/usb/001/005, 006 and so on).  Unless
>>>you set up hotplug (or udev, which I still have to look into myself)
>>>to do this for you, you will need to do this manually every time you
>>>re-plug, power cycle the device or reboot.
>>>
>>>For USB scanners with a recent enough libusb (>= 0.1.6) and kernel (>=
>>>2.4.12-ish. IIRC) there is no real need to muck with /dev/usb/scanner*
>>>anymore.  For 2.6.x kernels /dev/usb/scanner* is not an option, really.
>>>
>>>
>>>
>>>>On Oct 24, 2005, at 6:40 PM, dark_mail at gmx.net wrote:
>>>>
>>>>
>>>>
>>>>>I'm using an Epson Stylus Photo RX 420 (scanner-printer-combo) on a
>>>>>Gentoo machine (Kernel 2.6.13).
>>>>>
>>>>>Sane is version 1.0.15 (back- and frontend).
>>>>>
>>>>>My problem is the following:
>>>>>
>>>>>sane-find-scanner detects my scanner correctly:
>>>>>
>>>>>found USB scanner (vendor=0x04b8 [EPSON], product=0x080f [USB MFP]) at
>>>>>libusb:001:004
>>>>>
>>>>>But I don't find a device for the scanner anywhere. I even created a
>>>>>/dev/usb/scanner0 by hand, but that didn't help me, either.
>>>>>
>>>>>I also tried iscan, but it only says that it can't connect to the
>>>>>scanner and that I should make sure the scanner is on.
>>>
>>>
>>>What version?  If you take care of the hotplug support it provides,
>>>most of the EPSON scanners should work out-of-the-box (unless your
>>>system has already switched to udev in favour of hotplug).
>>>
>>>
>>>
>>>>>[snip]
>>>
>>>
>>>Hope this helps,
>>
>>
>>
> 




More information about the sane-devel mailing list