[sane-devel] Using scanimage's -device option to specify one of two identical scanners
m. allan noah
kitno455 at gmail.com
Sun Feb 23 13:01:07 UTC 2014
What is the output of scanimage -L
allan
On Sun, Feb 23, 2014 at 12:15 AM, Joel Penner <joelcpenner at gmail.com> wrote:
> Using lsusb -t I get this feedback:
>
> pi at raspberrypi ~ $ lsusb -t
> /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc_otg/1p, 480M
> |__ Port 1: Dev 2, If 0, Class=hub, Driver=hub/3p, 480M
> |__ Port 1: Dev 3, If 0, Class=vend., Driver=smsc95xx, 480M
> |__ Port 3: Dev 11, If 0, Class=vend., Driver=usbfs, 480M
>
> I do notice how sane-find-scanner returns the bus/port data:
>
> sudo 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.
> # Also you need support for SCSI Generic (sg) in your operating system.
> # If using Linux, try "modprobe sg".
>
> found USB scanner (vendor=0x04a9 [Canon], product=0x1908 [CanoScan]) at
> libusb:001:011
> found USB scanner (vendor=0x0424, product=0xec00) at libusb:001:003
>
> How would I use the libusb:001:011 identifier for the 9000f with scanimage?
> If I try to tell scanimage to use one of those with the -device option, I
> get this feedback:
>
> pi at raspberrypi ~/sambashare $ sudo LD_LIBRARY_PATH=/usr/lib/:/lib scanimage
> --progress --verbose --batch --format=tiff --resolution=2400 -x 240 -y 135
> -d libusb:001:011 --batch-start=110000 > /home/pi/sambashare/myco%5d.tif
> scanimage: open of device libusb:001:011 failed: Invalid argument
> pi at raspberrypi ~/sambashare $ sudo LD_LIBRARY_PATH=/usr/lib/:/lib scanimage
> --progress --verbose --batch --format=tiff --resolution=2400 -x 240 -y 135
> -d libusb:001:003 --batch-start=110000 > /home/pi/sambashare/myco%5d.tif
> scanimage: open of device libusb:001:003 failed: Invalid argument
>
>
> - Joel
>
> On Thu, Feb 20, 2014 at 5:33 PM, Olaf Meeuwissen <olaf.meeuwissen at avasys.jp>
> wrote:
>>
>>
>> m. allan noah writes:
>>
>> > Some scanners have a serial number which can be seen by software. Some
>> > sane backends use that serial as part of the device name. If your
>> > scanners or the pixma backend don't support this, you will have to
>> > find another way. Perhaps forcing the device name using udev or
>> > whatever Linux is using this week.
>>
>> It just so happens that I've been looking at this about three weeks ago
>> for a third party backend. The scanners this backend should support
>> have varying degrees of serial number support:
>>
>> - not at all
>> - at the USB level only
>> - at the device protocol level only
>> - at both USB and device protocol level only
>>
>> I wanted/needed to be able to support all of the above, even the case
>> where there is *no* serial number support at all. With libusb-1.0 this
>> is possible (at least on a recent enough Linux system) using the
>>
>> libusb_get_bus_number()
>>
>> and
>>
>> libusb_get_device_address()
>>
>> API. When using libusb-1.0.12 or later you can also use
>>
>> libusb_get_port_number()
>>
>> With a USB device hooked up to my machine, lsusb -t shows:
>>
>> /: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/6p, 480M
>> |__ Port 5: Dev 26, If 0, Class=Vendor Specific Class, Driver=, 480M
>>
>> Inserting a USB hub between the two, this changes to:
>>
>> /: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/6p, 480M
>> |__ Port 5: Dev 27, If 0, Class=Hub, Driver=hub/4p, 480M
>> |__ Port 4: Dev 28, If 0, Class=Vendor Specific Class, Driver=,
>> 480M
>>
>> The device number (Dev) changes every time you reconnect the USB cable
>> (or power cycle the device) but bus and port numbers don't change (but
>> they might upon a reboot).
>>
>> > On Thu, Feb 20, 2014 at 1:47 AM, Joel Penner <joelcpenner at gmail.com>
>> > wrote:
>> >> I have two CanoScan 9000f scanners that I'm using for a time-lapse
>> >> scanner
>> >> photography project. How do I tell two instances of scanimage to each
>> >> use
>> >> their own 9000f scanner on the same raspberry pi using the -device
>> >> flag?
>> >> Using sane-find-scanner to find an ID of connected scanners generates
>> >> the
>> >> same ID for both, non-surprisingly.
>>
>> Hope this helps,
>> --
>> Olaf Meeuwissen, LPIC-2 FLOSS Engineer -- AVASYS CORPORATION
>> FSF Associate Member #1962 Help support software freedom
>> http://www.fsf.org/jf?referrer=1962
>>
>> --
>> sane-devel mailing list: sane-devel at lists.alioth.debian.org
>> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/sane-devel
>> Unsubscribe: Send mail with subject "unsubscribe your_password"
>> to sane-devel-request at lists.alioth.debian.org
>
>
--
"The truth is an offense, but not a sin"
More information about the sane-devel
mailing list