[sane-devel] Problem with Sane and Microtek 35t+ (in plain text)

Matt Henley nwmatt at gmail.com
Tue Feb 28 15:35:34 UTC 2006


Note:  Trying this again in plain text.. gmail settings got me..I sent
this to the microtek backend maintainer in January, but have not
received a response.  Could someone look at the output and let me know
if there are any obvious problems... I had this working several years
ago so I know it should work.

Hi,

I am trying to get sane to work with my slide scanner... several years
ago I had it working but then switched to digital cameras and forgot
my scanner.  I am trying it again but it no longer seems to work.  It
is found without a problem by 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.

found SCSI scanner "MICROTEK ScanMaker 35t+ 1.60" at /dev/sg0
  # Your SCSI scanner was detected. It may or may not be supported by SANE. Try
  # scanimage -L and read the backend's manpage.

   # No USB scanners found. If you expected something different, make sure that
  # you have loaded a kernel driver for your USB host controller and have setup
  # the USB system correctly. See man sane-usb for details.

  # Not checking for parallel port scanners.

  # Most 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.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
scanimage -L works fine as well

device `microtek:/dev/sg0' is a Microtek ScanMaker 35t+ flatbed scanner

but when i use scanimage I get the following:
scanimage: sane_start: Error during device I/O
dmesg reports:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[4295188.985000] ACPI: PCI Interrupt 0000:00:0b.0[A] -> Link [LNKD] ->
GSI 11 (level, low) -> IRQ 11
[4295188.985000] sym0: <810a> rev 0x12 at pci 0000:00:0b.0 irq 11
[4295188.987000] sym0: No NVRAM, ID 7, Fast-10, SE, parity checking
[4295188.987000] sym0: SCSI BUS has been reset.
[4295188.994000] scsi4 :  sym-2.2.1
[4295193.801000]   Vendor: MICROTEK  Model: ScanMaker 35t+    Rev: 1.60
[4295193.802000]   Type:   Scanner                            ANSI
SCSI revision: 01 CCS
[4295193.802000]  target4:0:6: Beginning Domain Validation
[4295193.863000]  target4:0:6: Ending Domain Validation
[4295193.865000] Attached scsi generic sg0 at scsi4, channel 0, id 6,
lun 0,  type 6
[4295248.091000]  4:0:6:0: timing out command, waited 0s
[4303030.035000 ]  4:0:6:0: timing out command, waited 0s
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

then using
SANE_DEBUG_MICROTEK=128
SANE_DEBUG_SANEI_SCSI=255

scanimage reports the following (attached below)

looking at the scanner itself:

Microtek Scanmaker 35t plus
Microtek Model No.:PTS-1950
S/N:S778309288
I have a single-ended termination connector on the scanner

Any ideas?  I know that I got  this device working in the past.
Thanks!
Matt Henley
nwmatt at gmail.com

Scanimage output:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[sanei_debug] Setting debug level of microtek to 128.
[microtek] sane_init:  MICROTEK says hello! (v0.13.1)
[microtek] sane_init:  config-> # Uncomment following line to disable
"real calibration" routines...
[microtek] sane_init:  config-> #norealcal
[microtek] sane_init:  config-> # Uncomment following line to disable
"clever precalibration" routines...
[microtek] sane_init:  config-> #noprecal
[microtek] sane_init:  config-> #   Using "norealcal" will revert
backend to pre-0.11.0 calibration code.
[microtek] sane_init:  config-> scsi * * Scanner
[sanei_debug] Setting debug level of sanei_scsi to 255.
[sanei_scsi] sanei_scsi_find_devices: vendor=(null) model=(null) type=Scanner
        bus=4 chan=0 id=6 lun=0  num=0
[sanei_scsi] lx_chk_id: 4,4  0,0  6,6  0,0
[sanei_scsi] lx_chk_devicename: matched device(direct): /dev/sg0
[microtek] attach_scanner:  /dev/sg0
[microtek] attach_scanner:  opening /dev/sg0
[sanei_debug] Setting debug level of sanei_scsi to 255.
[sanei_debug] Setting debug level of sanei_scsi to 255.
[sanei_scsi] sanei_scsi_find_devices: vendor=(null) model=(null) type=Scanner
        bus=4 chan=0 id=6 lun=0  num=0
[sanei_scsi] lx_chk_id: 4,4  0,0  6,6  0,0
[sanei_scsi] lx_chk_devicename: matched device(direct): /dev/sg0
[sanei_scsi] get_max_buffer_size for /dev/sg0: 131072
[sanei_debug] Setting debug level of sanei_scsi to 255.
[sanei_scsi] sanei_scsi_open: sanei_scsi_max_request_size=131072 bytes
[sanei_scsi] sanei_scsi_open: SG driver version: 30533
[sanei_scsi] sanei_scsi_open_extended: using 131072 bytes as SCSI buffer
[sanei_scsi] trying to enable low level command queueing
[sanei_scsi] sanei_scsi_open: Host adapter queue depth: 2
[sanei_scsi] sanei_scsi_open: SG driver can change buffer size at run time
[sanei_scsi] sanei_scsi_open: low level command queueing enabled
[sanei_scsi] sanei_scsi_open: using new SG header structure
[microtek] attach_scanner:  sending INQUIRY
[sanei_scsi] scsi_req_enter: entered 0x80519e8
[sanei_scsi] sanei_scsi.issue: 0x80519e8
dev_max(currently)=32 max_active_device=1 (origin 1)
 def_reserved_size=32768
 >>> device=sg0 scsi4 chan=0 id=6 lun=0   em=0 sg_tablesize=96 excl=1
   FD(1): timeout=120000ms bufflen=131072 (res)sgat=4 low_dma=0
   cmd_q=1 f_packid=0 k_orphan=0 closed=0
     rb>> act: id=0 blen=96 t_o/elap=120000/5ms sgat=0 op=0x12
[sanei_scsi] scsi_req_enter: queue_used: 1, queue_max: 2
[sanei_scsi] sanei_scsi_req_wait: waiting for 0x80519e8
[sanei_scsi] sanei_scsi.issue: 0x80519e8
dev_max(currently)=32 max_active_device=1 (origin 1)
 def_reserved_size=32768
 >>> device=sg0 scsi4 chan=0 id=6 lun=0   em=0 sg_tablesize=96 excl=1
   FD(1): timeout=120000ms bufflen=131072 (res)sgat=4 low_dma=0
   cmd_q=1 f_packid=0 k_orphan=0 closed=0
     rb>> rcv: id=0 blen=96 dur=15ms sgat=0 op=0x12
[sanei_scsi] sanei_scsi_req_wait: read 64 bytes
[microtek] id_microtek...
[microtek] parse_inquiry...
[microtek] parse_inquiry:  Not an E6 -- pretend recal cannot be disabled.
[microtek] dump_inquiry...
[microtek]  === SANE/Microtek backend v0.13.1 ===
[microtek] ========== Scanner Inquiry Block ========mm
[microtek] 06 31 19 01 5b 00 00 00 4d 49 43 52 4f 54 45 4b
[microtek] 53 63 61 6e 4d 61 6b 65 72 20 33 35 74 2b 20 20
[microtek] 31 2e 36 30 53 43 53 49 20 46 2f 57 56 33 2e 34
[microtek] 20 43 54 4c 35 33 38 30 03 ef 8c c2 80 ec 62 23
[microtek] 01 03 23 01 00 83 00 01 0e 0e 01 05 00 00 00 00
[microtek] 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff
[microtek] ========== Scanner Inquiry Report ==========
[microtek] ===== Scanner ID...
[microtek] Device Type Code: 0x06
[microtek] Model Code: 0x62
[microtek] Vendor Name: 'MICROTEK'   Model Name: 'ScanMaker 35t+  '
[microtek] Vendor Specific String: 'SCSI F/WV3.4 CTL5380'
[microtek] Firmware Rev: '1.60'
[microtek] SCSI F/W version: 3.1     Scanner F/W version: 1.9
[microtek] Response data format: 0x01
[microtek] ===== Imaging Capabilities...
[microtek] Modes:  Lineart Halftone Gray Color (X-msv) (OnePass) (Negative)
[microtek] Resolution Step Sizes: 1% 5%    Expanded Resolution Support? yes
[microtek] Supported Bits Per Sample: 4 8
[microtek] Max. document size code: 0x80
[microtek] Max. document size:  2686 x 2686 pixels
[microtek] Frame units:  pixels  1/8"'s
[microtek] # of built-in halftones: 12   Downloadable patterns? Yes
[microtek] Data Compression:
[microtek] Contrast Settings: 14   Exposure Settings: 14
[microtek] Adjustable Shadow/Highlight? yes   Adjustable Midtone? yes
[microtek] Digital brightness/offset? yes
[microtek] Gamma Table Size: 1024 entries of 2 bytes (max. depth: 10)
[microtek] ===== Source Options...
[microtek] Feed type:  edge-feed    ADF support? no
[microtek] Document Feeder Support? yes   Feeder Backtracking? yes
[microtek] Feeder Installed? no           Feeder Ready? no
[microtek] Transparency Adapter Installed? no
[microtek] Fast Color Prescan? yes
[microtek] Selectable Transfer Format? no
[microtek] Color Transfer Sequence: line-by-line, non-sequential with headers
[microtek] Three pass scan support? no
[microtek] ModeSelect-1 and ModeSense-1 Support? yes
[microtek] Can Disable Linearization Table? no
[microtek] Can Disable Start-of-Scan Recalibration? no
[microtek] Internal expanded expansion? no
[microtek] ====== End of Scanner Inquiry Report =======
[microtek] attach_scanner:  happy.
[microtek] sane_init:  config-> /dev/sg0
[microtek] attach_scanner:  /dev/sg0
[microtek] sane_get_devices
[microtek] sane_open
[microtek] sane_open:  find device...
[microtek] sane_open:  create scanner...
[microtek] sane_open:  initialize scanner dependent stuff...
[microtek] sane_open:  All calibration routines disabled.
[microtek] sane_open:  init gamma tables...
[microtek] sane_open:  init pass-time variables...
[microtek] sane_open:  init clever cache...
[microtek] sane_open:  initialize options:
[microtek] init_options...
[microtek] init_options:  quant yes
[microtek] init_options:  done.
[microtek] sane_control_option (opt=0,act=0,val=0xbff937ec,info=(nil))
[microtek] sane_control_option (opt=0,act=0,val=0xbff93748,info=(nil))
[microtek] sane_get_option_descriptor (0)...
[microtek] sane_get_option_descriptor (1)...
[microtek] sane_get_option_descriptor (2)...
[microtek] sane_get_option_descriptor (3)...
[microtek] sane_get_option_descriptor (4)...
[microtek] sane_get_option_descriptor (5)...
[microtek] sane_get_option_descriptor (6)...
[microtek] sane_get_option_descriptor (7)...
[microtek] sane_get_option_descriptor (8)...
[microtek] sane_get_option_descriptor (9)...
[microtek] sane_get_option_descriptor (10)...
[microtek] sane_get_option_descriptor (11)...
[microtek] sane_get_option_descriptor (12)...
[microtek] sane_get_option_descriptor (13)...
[microtek] sane_get_option_descriptor (14)...
[microtek] sane_control_option (opt=14,act=0,val=0x80509b8,info=(nil))
[microtek] sane_get_option_descriptor (15)...
[microtek] sane_control_option (opt=15,act=0,val=0x80509bc,info=(nil))
[microtek] sane_get_option_descriptor (16)...
[microtek] sane_get_option_descriptor (17)...
[microtek] sane_get_option_descriptor (18)...
[microtek] sane_get_option_descriptor (19)...
[microtek] sane_get_option_descriptor (20)...
[microtek] sane_get_option_descriptor (21)...
[microtek] sane_get_option_descriptor (22)...
[microtek] sane_get_option_descriptor (23)...
[microtek] sane_get_option_descriptor (24)...
[microtek] sane_get_option_descriptor (25)...
[microtek] sane_get_option_descriptor (26)...
[microtek] sane_get_option_descriptor (27)...
[microtek] sane_get_option_descriptor (28)...
[microtek] sane_get_option_descriptor (29)...
[microtek] sane_get_option_descriptor (30)...
[microtek] sane_get_option_descriptor (31)...
[microtek] sane_get_option_descriptor (32)...
[microtek] sane_get_option_descriptor (33)...
[microtek] sane_control_option (opt=12,act=0,val=0xbff93744,info=(nil))
[microtek] sane_control_option (opt=13,act=0,val=0xbff93744,info=(nil))
[microtek] sane_control_option (opt=12,act=0,val=0xbff937e8,info=(nil))
[microtek] sane_get_option_descriptor (14)...
[microtek] sane_control_option (opt=14,act=1,val=0xbff937e4,info=0xbff93744)
[microtek] sane_control_option (opt=13,act=0,val=0xbff937e8,info=(nil))
[microtek] sane_get_option_descriptor (15)...
[microtek] sane_control_option (opt=15,act=1,val=0xbff937e4,info=0xbff93744)
[microtek] sane_start...
[microtek] sane_get_parameters...
[microtek] sane_get_parameters:  regular 1-pass color
[microtek] sane_get_parameters:  res_code = 5 ( 5)
[microtek] bright_r of 0 set to 0x0
[microtek] sane_get_parameters:  dots_per_mm:  3.937008
[microtek] sane_get_parameters:  units_per_mm:  76.771654
[microtek] WIDTHPIX:  before exp: 136
[microtek] sane_get_parameters:  lines: 137  ppl: 136  bpl: 408
[sanei_debug] Setting debug level of sanei_scsi to 255.
[sanei_scsi] sanei_scsi_open: SG driver version: 30533
[sanei_scsi] sanei_scsi_open_extended: using 131072 bytes as SCSI buffer
[sanei_scsi] trying to enable low level command queueing
[sanei_scsi] sanei_scsi_open: Host adapter queue depth: 2
[sanei_scsi] sanei_scsi_open: SG driver can change buffer size at run time
[sanei_scsi] sanei_scsi_open: low level command queueing enabled
[sanei_scsi] sanei_scsi_open: using new SG header structure
[microtek] .wait_ready 3...
[sanei_scsi] scsi_req_enter: entered 0x4028a008
[sanei_scsi] sanei_scsi.issue: 0x4028a008
dev_max(currently)=32 max_active_device=1 (origin 1)
 def_reserved_size=32768
 >>> device=sg0 scsi4 chan=0 id=6 lun=0   em=0 sg_tablesize=96 excl=1
   FD(1): timeout=120000ms bufflen=131072 (res)sgat=4 low_dma=0
   cmd_q=1 f_packid=0 k_orphan=0 closed=0
     rcv: id=1 blen=0 dur=3ms sgat=0 op=0x00
[sanei_scsi] scsi_req_enter: queue_used: 1, queue_max: 2
[sanei_scsi] sanei_scsi_req_wait: waiting for 0x4028a008
[sanei_scsi] sanei_scsi.issue: 0x4028a008
dev_max(currently)=32 max_active_device=1 (origin 1)
 def_reserved_size=32768
 >>> device=sg0 scsi4 chan=0 id=6 lun=0   em=0 sg_tablesize=96 excl=1
   FD(1): timeout=120000ms bufflen=131072 (res)sgat=4 low_dma=0
   cmd_q=1 f_packid=0 k_orphan=0 closed=0
     rcv: id=1 blen=0 dur=3ms sgat=0 op=0x00
[sanei_scsi] sanei_scsi_req_wait: read 64 bytes
[microtek] finagle_precal...
[microtek] .scanning_frame...
[microtek] .scanning_frame:  in- 0,0  2686,2686
[microtek] .scanning_frame: out- 0,0  2686,2686
[sanei_scsi] scsi_req_enter: entered 0x4028a008
[sanei_scsi] sanei_scsi.issue: 0x4028a008
dev_max(currently)=32 max_active_device=1 (origin 1)
 def_reserved_size=32768
 >>> device=sg0 scsi4 chan=0 id=6 lun=0   em=0 sg_tablesize=96 excl=1
   FD(1): timeout=120000ms bufflen=131072 (res)sgat=4 low_dma=0
   cmd_q=1 f_packid=0 k_orphan=0 closed=0
     rb>> rcv: id=2 blen=9 dur=4ms sgat=0 op=0x04
[sanei_scsi] scsi_req_enter: queue_used: 1, queue_max: 2
[sanei_scsi] sanei_scsi_req_wait: waiting for 0x4028a008
[sanei_scsi] sanei_scsi.issue: 0x4028a008
dev_max(currently)=32 max_active_device=1 (origin 1)
 def_reserved_size=32768
 >>> device=sg0 scsi4 chan=0 id=6 lun=0   em=0 sg_tablesize=96 excl=1
   FD(1): timeout=120000ms bufflen=131072 (res)sgat=4 low_dma=0
   cmd_q=1 f_packid=0 k_orphan=0 closed=0
     rb>> rcv: id=2 blen=9 dur=4ms sgat=0 op=0x04
[sanei_scsi] sanei_scsi_req_wait: read 64 bytes
[microtek] .accessory...
[sanei_scsi] scsi_req_enter: entered 0x4028a008
[sanei_scsi] sanei_scsi.issue: 0x4028a008
dev_max(currently)=32 max_active_device=1 (origin 1)
 def_reserved_size=32768
 >>> device=sg0 scsi4 chan=0 id=6 lun=0   em=0 sg_tablesize=96 excl=1
   FD(1): timeout=120000ms bufflen=131072 (res)sgat=4 low_dma=0
   cmd_q=1 f_packid=0 k_orphan=0 closed=0
     rcv: id=3 blen=0 dur=3ms sgat=0 op=0x10
[sanei_scsi] scsi_req_enter: queue_used: 1, queue_max: 2
[sanei_scsi] sanei_scsi_req_wait: waiting for 0x4028a008
[sanei_scsi] sanei_scsi.issue: 0x4028a008
dev_max(currently)=32 max_active_device=1 (origin 1)
 def_reserved_size=32768
 >>> device=sg0 scsi4 chan=0 id=6 lun=0   em=0 sg_tablesize=96 excl=1
   FD(1): timeout=120000ms bufflen=131072 (res)sgat=4 low_dma=0
   cmd_q=1 f_packid=0 k_orphan=0 closed=0
     rcv: id=3 blen=0 dur=3ms sgat=0 op=0x10
[sanei_scsi] sanei_scsi_req_wait: read 64 bytes
[microtek] .download_gamma...
[microtek] .download_gamma:  1024 entries of 2 bytes, max 255
[microtek] .download_gamma: by default
[sanei_scsi] scsi_req_enter: entered 0x4028a008
[sanei_scsi] sanei_scsi.issue: 0x4028a008
dev_max(currently)=32 max_active_device=1 (origin 1)
 def_reserved_size=32768
 >>> device=sg0 scsi4 chan=0 id=6 lun=0   em=0 sg_tablesize=96 excl=1
   FD(1): timeout=120000ms bufflen=131072 (res)sgat=4 low_dma=0
   cmd_q=1 f_packid=0 k_orphan=0 closed=0
     rb>> act: id=4 blen=2048 t_o/elap=120000/5ms sgat=0 op=0x55
[sanei_scsi] scsi_req_enter: queue_used: 1, queue_max: 2
[sanei_scsi] sanei_scsi_req_wait: waiting for 0x4028a008
[sanei_scsi] sanei_scsi.issue: 0x4028a008
dev_max(currently)=32 max_active_device=1 (origin 1)
 def_reserved_size=32768
 >>> device=sg0 scsi4 chan=0 id=6 lun=0   em=0 sg_tablesize=96 excl=1
   FD(1): timeout=120000ms bufflen=131072 (res)sgat=4 low_dma=0
   cmd_q=1 f_packid=0 k_orphan=0 closed=0
     rb>> rcv: id=4 blen=2048 dur=8ms sgat=0 op=0x55
[sanei_scsi] sanei_scsi_req_wait: read 64 bytes
[sanei_scsi] sanei_scsi_req_wait: SCSI command complained: Success
[sanei_scsi] sense buffer: 83 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00
[sanei_scsi] target status: 02 host status: 0000 driver status: 0008
[microtek] SENSE!  fd = 3
[microtek] sense = 83 00 04 00.
[microtek] sense:  ERR_ILLTABLE
[sanei_scsi] sanei_scsi_req_wait: SG driver returned resid 2048
[sanei_scsi]                      NOTE: This value may be bogus
[microtek] end_scan...
scanimage: sane_start: Error during device I/O
[microtek] sane_cancel...
[microtek] end_scan...
[microtek] sane_close...
[microtek] sane_exit...
[microtek] sane_exit:  MICROTEK says goodbye.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



More information about the sane-devel mailing list