[sane-devel] Reflecta RubyScan - Salix USB Scanner (115b:3100)

Martin Knoblauch spamtrap at knobisoft.de
Wed Oct 7 12:54:27 UTC 2009


----- Original Message ----

> From: m. allan noah <kitno455 at gmail.com>
> To: Martin Knoblauch <spamtrap at knobisoft.de>
> Cc: sane-devel at lists.alioth.debian.org
> Sent: Wed, October 7, 2009 2:37:01 PM
> Subject: Re: [sane-devel] Reflecta RubyScan - Salix USB Scanner (115b:3100)
> 
> strange- it looks more like a video camera than a scanner- did you try
> asking the linux-uvc guys if they recognize it?
> 
> allan
>
Hi Allan,

 it is recognized as a uvcvideo device - sort of generically. I can scan with "uvccapture", but it gives ioctl errors (EINVAL) and the resulting image has artifacts that do not show up under "the other OS". Anyway, it is supposed to be a slide scanner, so "sane" seemed appropriate :-)

./uvccapture -v -x1984 -y1328
Using videodevice: /dev/video0
Saving images to: snap.jpg
Image size: 1984x1328
Taking snapshot every 0 seconds
Taking images using mmap
Resetting camera settings
ioctl querycontrol error 22
ioctl querycontrol error 22
ioctl querycontrol error 22
Camera brightness level is 0
ioctl querycontrol error 22
Camera contrast level is -1
ioctl querycontrol error 22
Camera saturation level is -1
ioctl querycontrol error 22
Camera gain level is -1
Saving image to: snap.jpg

Cheers
Martin
 
> On Wed, Oct 7, 2009 at 8:25 AM, Martin Knoblauch wrote:
> > Hi,
> >
> >  I have recently accquired a "Reflecta RubyScan" slide scanner. Works fine 
> with Windows, but I would love to use it under Linux.
> >
> >  It seems to be not supported by "sane". Has anyone seen it before? What would 
> be minimally needed to make it work? I may find some time to work on it, but I 
> am absolutely new to scanner programming. Please CC me (spamtrap.knobisoft.de) 
> on replies, as I only rfeceive the digest version of the list.
> >
> > Thanks in advance
> > Martin
> >
> > "sane-find-scanner -v -v" gives:
> >
> > 
> > bLength               18
> > bDescriptorType       1
> > bcdUSB                2.00
> > bDeviceClass          239
> > bDeviceSubClass       2
> > bDeviceProtocol       1
> > bMaxPacketSize0       64
> > idVendor              0x115B
> > idProduct             0x3100
> > bcdDevice             1.00
> > iManufacturer         1 (Salix Corp.)
> > iProduct              2 (USB Scanner.)
> > iSerialNumber         0 ()
> > bNumConfigurations    1
> >  
> >  bLength              9
> >  bDescriptorType      2
> >  wTotalLength         325
> >  bNumInterfaces       2
> >  bConfigurationValue  1
> >  iConfiguration       0 ()
> >  bmAttributes         128 ()
> >  MaxPower             128 mA
> >  
> >   
> >   bLength            9
> >   bDescriptorType    4
> >   bInterfaceNumber   0
> >   bAlternateSetting  0
> >   bNumEndpoints      1
> >   bInterfaceClass    14
> >   bInterfaceSubClass 1
> >   bInterfaceProtocol 0
> >   iInterface         2 (USB Scanner.)
> >    
> >    bLength           7
> >    bDescriptorType   5
> >    bEndpointAddress  0x81 (in 0x01)
> >    bmAttributes      3 (interrupt)
> >    wMaxPacketSize    10
> >    bInterval         5 ms
> >    bRefresh          0
> >    bSynchAddress     0
> >  
> >   
> >   bLength            9
> >   bDescriptorType    4
> >   bInterfaceNumber   1
> >   bAlternateSetting  0
> >   bNumEndpoints      0
> >   bInterfaceClass    14
> >   bInterfaceSubClass 2
> >   bInterfaceProtocol 0
> >   iInterface         0 ()
> >   
> >   bLength            9
> >   bDescriptorType    4
> >   bInterfaceNumber   1
> >   bAlternateSetting  1
> >   bNumEndpoints      1
> >   bInterfaceClass    14
> >   bInterfaceSubClass 2
> >   bInterfaceProtocol 0
> >   iInterface         0 ()
> >    
> >    bLength           7
> >    bDescriptorType   5
> >    bEndpointAddress  0x82 (in 0x02)
> >    bmAttributes      5 (isochronous)
> >    wMaxPacketSize    128
> >    bInterval         1 ms
> >    bRefresh          0
> >    bSynchAddress     0
> >   
> >   bLength            9
> >   bDescriptorType    4
> >   bInterfaceNumber   1
> >   bAlternateSetting  2
> >   bNumEndpoints      1
> >   bInterfaceClass    14
> >   bInterfaceSubClass 2
> >   bInterfaceProtocol 0
> >   iInterface         0 ()
> >    
> >    bLength           7
> >    bDescriptorType   5
> >    bEndpointAddress  0x82 (in 0x02)
> >    bmAttributes      5 (isochronous)
> >    wMaxPacketSize    512
> >    bInterval         1 ms
> >    bRefresh          0
> >    bSynchAddress     0
> >   
> >   bLength            9
> >   bDescriptorType    4
> >   bInterfaceNumber   1
> >   bAlternateSetting  3
> >   bNumEndpoints      1
> >   bInterfaceClass    14
> >   bInterfaceSubClass 2
> >   bInterfaceProtocol 0
> >   iInterface         0 ()
> >    
> >    bLength           7
> >    bDescriptorType   5
> >    bEndpointAddress  0x82 (in 0x02)
> >    bmAttributes      5 (isochronous)
> >    wMaxPacketSize    1024
> >    bInterval         1 ms
> >    bRefresh          0
> >    bSynchAddress     0
> >   
> >   bLength            9
> >   bDescriptorType    4
> >   bInterfaceNumber   1
> >   bAlternateSetting  4
> >   bNumEndpoints      1
> >   bInterfaceClass    14
> >   bInterfaceSubClass 2
> >   bInterfaceProtocol 0
> >   iInterface         0 ()
> >    
> >    bLength           7
> >    bDescriptorType   5
> >    bEndpointAddress  0x82 (in 0x02)
> >    bmAttributes      5 (isochronous)
> >    wMaxPacketSize    2816
> >    bInterval         1 ms
> >    bRefresh          0
> >    bSynchAddress     0
> >   
> >   bLength            9
> >   bDescriptorType    4
> >   bInterfaceNumber   1
> >   bAlternateSetting  5
> >   bNumEndpoints      1
> >   bInterfaceClass    14
> >   bInterfaceSubClass 2
> >   bInterfaceProtocol 0
> >   iInterface         0 ()
> >    
> >    bLength           7
> >    bDescriptorType   5
> >    bEndpointAddress  0x82 (in 0x02)
> >    bmAttributes      5 (isochronous)
> >    wMaxPacketSize    3072
> >    bInterval         1 ms
> >    bRefresh          0
> >    bSynchAddress     0
> >   
> >   bLength            9
> >   bDescriptorType    4
> >   bInterfaceNumber   1
> >   bAlternateSetting  6
> >   bNumEndpoints      1
> >   bInterfaceClass    14
> >   bInterfaceSubClass 2
> >   bInterfaceProtocol 0
> >   iInterface         0 ()
> >    
> >    bLength           7
> >    bDescriptorType   5
> >    bEndpointAddress  0x82 (in 0x02)
> >    bmAttributes      5 (isochronous)
> >    wMaxPacketSize    4992
> >    bInterval         1 ms
> >    bRefresh          0
> >    bSynchAddress     0
> >   
> >   bLength            9
> >   bDescriptorType    4
> >   bInterfaceNumber   1
> >   bAlternateSetting  7
> >   bNumEndpoints      1
> >   bInterfaceClass    14
> >   bInterfaceSubClass 2
> >   bInterfaceProtocol 0
> >   iInterface         0 ()
> >    
> >    bLength           7
> >    bDescriptorType   5
> >    bEndpointAddress  0x82 (in 0x02)
> >    bmAttributes      5 (isochronous)
> >    wMaxPacketSize    5120
> >    bInterval         1 ms
> >    bRefresh          0
> >    bSynchAddress     0
> >
> >
> > Similarly "/usr/sbin/lsusb -v -s 001:014" gives:
> >
> > Bus 001 Device 014: ID 115b:3100 Salix Technology Co., Ltd.
> > Device Descriptor:
> >  bLength                18
> >  bDescriptorType         1
> >  bcdUSB               2.00
> >  bDeviceClass          239 Miscellaneous Device
> >  bDeviceSubClass         2 ?
> >  bDeviceProtocol         1 Interface Association
> >  bMaxPacketSize0        64
> >  idVendor           0x115b Salix Technology Co., Ltd.
> >  idProduct          0x3100
> >  bcdDevice            1.00
> >  iManufacturer           1 Salix Corp.
> >  iProduct                2 USB Scanner.
> >  iSerial                 0
> >  bNumConfigurations      1
> >  Configuration Descriptor:
> >    bLength                 9
> >    bDescriptorType         2
> >    wTotalLength          325
> >    bNumInterfaces          2
> >    bConfigurationValue     1
> >    iConfiguration          0
> >    bmAttributes         0x80
> >      (Bus Powered)
> >    MaxPower              128mA
> >    Interface Association:
> >      bLength                 8
> >      bDescriptorType        11
> >      bFirstInterface         0
> >      bInterfaceCount         2
> >      bFunctionClass         14 Video
> >      bFunctionSubClass       3 Video Interface Collection
> >      bFunctionProtocol       0
> >      iFunction               2 USB Scanner.
> >    Interface Descriptor:
> >      bLength                 9
> >      bDescriptorType         4
> >      bInterfaceNumber        0
> >      bAlternateSetting       0
> >      bNumEndpoints           1
> >      bInterfaceClass        14 Video
> >      bInterfaceSubClass      1 Video Control
> >      bInterfaceProtocol      0
> >      iInterface              2 USB Scanner.
> >      VideoControl Interface Descriptor:
> >        bLength                13
> >        bDescriptorType        36
> >        bDescriptorSubtype      1 (HEADER)
> >        bcdUVC               1.00
> >        wTotalLength           79
> >        dwClockFrequency       30.000000MHz
> >        bInCollection           1
> >        baInterfaceNr( 0)       1
> >      VideoControl Interface Descriptor:
> >        bLength                18
> >        bDescriptorType        36
> >        bDescriptorSubtype      2 (INPUT_TERMINAL)
> >        bTerminalID             1
> >        wTerminalType      0x0201 Camera Sensor
> >        bAssocTerminal          0
> >        iTerminal               0
> >        wObjectiveFocalLengthMin      0
> >        wObjectiveFocalLengthMax      0
> >        wOcularFocalLength            0
> >        bControlSize                  3
> >        bmControls           0x00000000
> >      VideoControl Interface Descriptor:
> >        bLength                11
> >        bDescriptorType        36
> >        bDescriptorSubtype      5 (PROCESSING_UNIT)
> >      Warning: Descriptor too short
> >        bUnitID                 2
> >        bSourceID               1
> >        wMaxMultiplier          0
> >        bControlSize            2
> >        bmControls     0x00000451
> >          Brightness
> >          Sharpness
> >          White Balance Temperature
> >          Power Line Frequency
> >        iProcessing             0
> >        bmVideoStandards     0x 9
> >          None
> >          SECAM - 625/50
> >      VideoControl Interface Descriptor:
> >        bLength                 9
> >        bDescriptorType        36
> >        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
> >        bTerminalID             3
> >        wTerminalType      0x0101 USB Streaming
> >        bAssocTerminal          0
> >        bSourceID               2
> >        iTerminal               0
> >      VideoControl Interface Descriptor:
> >        bLength                28
> >        bDescriptorType        36
> >        bDescriptorSubtype      6 (EXTENSION_UNIT)
> >        bUnitID                 4
> >        guidExtensionCode         {5dc717a9-1941-da11-ae0e-000d56ac7b4c}
> >        bNumControl             8
> >        bNrPins                 1
> >        baSourceID( 0)          1
> >        bControlSize            3
> >        bmControls( 0)       0x59
> >        bmControls( 1)       0x80
> >        bmControls( 2)       0x80
> >        iExtension              0
> >      Endpoint Descriptor:
> >        bLength                 7
> >        bDescriptorType         5
> >        bEndpointAddress     0x81  EP 1 IN
> >        bmAttributes            3
> >          Transfer Type            Interrupt
> >          Synch Type               None
> >          Usage Type               Data
> >        wMaxPacketSize     0x000a  1x 10 bytes
> >        bInterval               5
> >    Interface Descriptor:
> >      bLength                 9
> >      bDescriptorType         4
> >      bInterfaceNumber        1
> >      bAlternateSetting       0
> >      bNumEndpoints           0
> >      bInterfaceClass        14 Video
> >      bInterfaceSubClass      2 Video Streaming
> >      bInterfaceProtocol      0
> >      iInterface              0
> >      VideoStreaming Interface Descriptor:
> >        bLength                            14
> >        bDescriptorType                    36
> >        bDescriptorSubtype                  1 (INPUT_HEADER)
> >        bNumFormats                         1
> >        wTotalLength                       87
> >        bEndPointAddress                  130
> >        bmInfo                              0
> >        bTerminalLink                       3
> >        bStillCaptureMethod                 2
> >        bTriggerSupport                     1
> >        bTriggerUsage                       1
> >        bControlSize                        1
> >        bmaControls( 0)                    27
> >      VideoStreaming Interface Descriptor:
> >        bLength                            27
> >        bDescriptorType                    36
> >        bDescriptorSubtype                  4 (FORMAT_UNCOMPRESSED)
> >        bFormatIndex                        1
> >        bNumFrameDescriptors                1
> >        guidFormat                           
>  {59555932-0000-1000-8000-00aa00389b71}
> >        bBitsPerPixel                      16
> >        bDefaultFrameIndex                  1
> >        bAspectRatioX                       0
> >        bAspectRatioY                       0
> >        bmInterlaceFlags                 0x00
> >          Interlaced stream or variable: No
> >          Fields per frame: 1 fields
> >          Field 1 first: No
> >          Field pattern: Field 1 only
> >          bCopyProtect                      0
> >      VideoStreaming Interface Descriptor:
> >        bLength                            30
> >        bDescriptorType                    36
> >        bDescriptorSubtype                  5 (FRAME_UNCOMPRESSED)
> >        bFrameIndex                         1
> >        bmCapabilities                   0x00
> >          Still image unsupported
> >        wWidth                           1984
> >        wHeight                          1328
> >        dwMinBitRate                196608000
> >        dwMaxBitRate                196608000
> >        dwMaxVideoFrameBufferSize     5269504
> >        dwDefaultFrameInterval        4000000
> >        bFrameIntervalType                  1
> >        dwFrameInterval( 0)           4000000
> >      VideoStreaming Interface Descriptor:
> >        bLength                            10
> >        bDescriptorType                    36
> >        bDescriptorSubtype                  3 (STILL_IMAGE_FRAME)
> >        bEndpointAddress                    0
> >        bNumImageSizePatterns               1
> >        wWidth( 0)                       1984
> >        wHeight( 0)                      1328
> >        bNumCompressionPatterns             1
> >      VideoStreaming Interface Descriptor:
> >        bLength                             6
> >        bDescriptorType                    36
> >        bDescriptorSubtype                 13 (COLORFORMAT)
> >        bColorPrimaries                     0 (Unspecified)
> >        bTransferCharacteristics            0 (Unspecified)
> >        bMatrixCoefficients                 0 (Unspecified)
> >    Interface Descriptor:
> >      bLength                 9
> >      bDescriptorType         4
> >      bInterfaceNumber        1
> >      bAlternateSetting       1
> >      bNumEndpoints           1
> >      bInterfaceClass        14 Video
> >      bInterfaceSubClass      2 Video Streaming
> >      bInterfaceProtocol      0
> >      iInterface              0
> >      Endpoint Descriptor:
> >        bLength                 7
> >        bDescriptorType         5
> >        bEndpointAddress     0x82  EP 2 IN
> >        bmAttributes            5
> >          Transfer Type            Isochronous
> >          Synch Type               Asynchronous
> >          Usage Type               Data
> >        wMaxPacketSize     0x0080  1x 128 bytes
> >        bInterval               1
> >    Interface Descriptor:
> >      bLength                 9
> >      bDescriptorType         4
> >      bInterfaceNumber        1
> >      bAlternateSetting       2
> >      bNumEndpoints           1
> >      bInterfaceClass        14 Video
> >      bInterfaceSubClass      2 Video Streaming
> >      bInterfaceProtocol      0
> >      iInterface              0
> >      Endpoint Descriptor:
> >        bLength                 7
> >        bDescriptorType         5
> >        bEndpointAddress     0x82  EP 2 IN
> >        bmAttributes            5
> >          Transfer Type            Isochronous
> >          Synch Type               Asynchronous
> >          Usage Type               Data
> >        wMaxPacketSize     0x0200  1x 512 bytes
> >        bInterval               1
> >    Interface Descriptor:
> >      bLength                 9
> >      bDescriptorType         4
> >      bInterfaceNumber        1
> >      bAlternateSetting       3
> >      bNumEndpoints           1
> >      bInterfaceClass        14 Video
> >      bInterfaceSubClass      2 Video Streaming
> >      bInterfaceProtocol      0
> >      iInterface              0
> >      Endpoint Descriptor:
> >        bLength                 7
> >        bDescriptorType         5
> >        bEndpointAddress     0x82  EP 2 IN
> >        bmAttributes            5
> >          Transfer Type            Isochronous
> >          Synch Type               Asynchronous
> >          Usage Type               Data
> >        wMaxPacketSize     0x0400  1x 1024 bytes
> >        bInterval               1
> >    Interface Descriptor:
> >      bLength                 9
> >      bDescriptorType         4
> >      bInterfaceNumber        1
> >      bAlternateSetting       4
> >      bNumEndpoints           1
> >      bInterfaceClass        14 Video
> >      bInterfaceSubClass      2 Video Streaming
> >      bInterfaceProtocol      0
> >      iInterface              0
> >      Endpoint Descriptor:
> >        bLength                 7
> >        bDescriptorType         5
> >        bEndpointAddress     0x82  EP 2 IN
> >        bmAttributes            5
> >          Transfer Type            Isochronous
> >          Synch Type               Asynchronous
> >          Usage Type               Data
> >        wMaxPacketSize     0x0b00  2x 768 bytes
> >        bInterval               1
> >    Interface Descriptor:
> >      bLength                 9
> >      bDescriptorType         4
> >      bInterfaceNumber        1
> >      bAlternateSetting       5
> >      bNumEndpoints           1
> >      bInterfaceClass        14 Video
> >      bInterfaceSubClass      2 Video Streaming
> >      bInterfaceProtocol      0
> >      iInterface              0
> >      Endpoint Descriptor:
> >        bLength                 7
> >        bDescriptorType         5
> >        bEndpointAddress     0x82  EP 2 IN
> >        bmAttributes            5
> >          Transfer Type            Isochronous
> >          Synch Type               Asynchronous
> >          Usage Type               Data
> >        wMaxPacketSize     0x0c00  2x 1024 bytes
> >        bInterval               1
> >    Interface Descriptor:
> >      bLength                 9
> >      bDescriptorType         4
> >      bInterfaceNumber        1
> >      bAlternateSetting       6
> >      bNumEndpoints           1
> >      bInterfaceClass        14 Video
> >      bInterfaceSubClass      2 Video Streaming
> >      bInterfaceProtocol      0
> >      iInterface              0
> >      Endpoint Descriptor:
> >        bLength                 7
> >        bDescriptorType         5
> >        bEndpointAddress     0x82  EP 2 IN
> >        bmAttributes            5
> >          Transfer Type            Isochronous
> >          Synch Type               Asynchronous
> >          Usage Type               Data
> >        wMaxPacketSize     0x1380  3x 896 bytes
> >        bInterval               1
> >    Interface Descriptor:
> >      bLength                 9
> >      bDescriptorType         4
> >      bInterfaceNumber        1
> >      bAlternateSetting       7
> >      bNumEndpoints           1
> >      bInterfaceClass        14 Video
> >      bInterfaceSubClass      2 Video Streaming
> >      bInterfaceProtocol      0
> >      iInterface              0
> >      Endpoint Descriptor:
> >        bLength                 7
> >        bDescriptorType         5
> >        bEndpointAddress     0x82  EP 2 IN
> >        bmAttributes            5
> >          Transfer Type            Isochronous
> >          Synch Type               Asynchronous
> >          Usage Type               Data
> >        wMaxPacketSize     0x1400  3x 1024 bytes
> >        bInterval               1
> > Device Qualifier (for other device speed):
> >  bLength                10
> >  bDescriptorType         6
> >  bcdUSB               2.00
> >  bDeviceClass          239 Miscellaneous Device
> >  bDeviceSubClass         2 ?
> >  bDeviceProtocol         1 Interface Association
> >  bMaxPacketSize0        64
> >  bNumConfigurations      1
> > Device Status:     0x0000
> >  (Bus Powered)
> >
> >
> >  ------------------------------------------------------
> > Martin Knoblauch
> > email: k n o b i AT knobisoft DOT de
> > www:   http://www.knobisoft.de
> >
> >
> > --
> > sane-devel mailing list: sane-devel at lists.alioth.debian.org
> > http://lists.alioth.debian.org/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