[sane-devel] Using scanimage's -device option to specify one of two identical scanners

Joel Penner joelcpenner at gmail.com
Sun Feb 23 17:39:13 UTC 2014


With both 9000f scanners connected, it's:

pi at raspberrypi ~/sambashare2 $ sudo LD_LIBRARY_PATH=/usr/lib/:/lib
scanimage -L
device `pixma:04A91908' is a CANON Canoscan 9000F multi-function peripheral
device `pixma:04A91908' is a CANON Canoscan 9000F multi-function peripheral
pi at raspberrypi ~/sambashare2 $



On Sun, Feb 23, 2014 at 7:01 AM, m. allan noah <kitno455 at gmail.com> wrote:

> 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"
>
> --
> 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
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/sane-devel/attachments/20140223/894f20a8/attachment.html>


More information about the sane-devel mailing list