Hi, everyone.

I am trying to get my Microtek Scanmaker 35t+ SCSI slide scanner  
working on my Ubuntu box, and I'm not having any luck. In particular,  
everything seems to be working right, but when I try to scan, I get a  
"Error during device I/O" error and then everything just stops. I'm  
hoping somebody out there can help me.

I don't know what information to provide so I'll start with the  
basics: machine is a P4 running Kubuntu (Ubunutu+KDE) Breezy, with an  
OrangeMicro Grappler 906F SCSI card. The card works fine for other  
applications; I have a tape changer/drive connected through it which  
is great.

Running a cat /proc/scsi/scsi on the system shows this about the  
scanner:

Host: scsi0 Channel: 00 Id: 05 Lun: 00
   Vendor: MICROTEK Model: ScanMaker 35t+   Rev: 1.40
   Type:   Scanner                          ANSI SCSI revision: 01 CCS

I have modprobe sg being run as part of my bootmisc script, and the  
scanner is /dev/sg2 (sg0 and sg1 belong to the tape drive).

scanimage -L doesn't produce any errors. I will append its output to  
the bottom of the message, but at least to my untrained eye there  
didn't seem to be anything amiss.

The problem is when I try to actually use the scanner via scanimage  
or xsane. The output it gives me is basically the same stuff as  
scanimage -L, but then followed by its actual attempts to scan, which  
fail:

[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
[microtek] .wait_ready 5...
[microtek] finagle_precal...
[microtek] .scanning_frame...
[microtek] .scanning_frame:  in- 0,0  2686,2686
[microtek] .scanning_frame: out- 0,0  2686,2686
[microtek] .accessory...
[microtek] .download_gamma...
[microtek] .download_gamma:  1024 entries of 2 bytes, max 255
[microtek] .download_gamma: by default
[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.

That's the most I can get it to do. Running xsane does the same thing  
but gives me the error in a dialog instead of on the console. I've  
tried playing around with the file permissions on /dev/sg2 and /dev/ 
scanner, checking the config files, running it as root ... I can't  
get it to do anything more. Since this scanner allegedly works with  
Sane, I'm hoping maybe someone can shed some light on the problem?

Thanks very much in advance!

-James Tuttle
jwtut...@gmail.com


Following is the complete output of scanimage -T, with maximum  
debugging verbosity:
[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
[microtek] attach_scanner:  /dev/sg2
[microtek] attach_scanner:  opening /dev/sg2
[microtek] attach_scanner:  sending INQUIRY
[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 34 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.40'
[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/scanner
[microtek] attach_scanner:  /dev/scanner
[microtek] attach_scanner:  opening /dev/scanner
[microtek] attach_scanner:  sending INQUIRY
[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 34 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.40'
[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/sg2
[microtek] attach_scanner:  /dev/sg2
[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=0xbfd3078c,info=(nil))
[microtek] sane_control_option (opt=0,act=0,val=0xbfd27668,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=0x8051684,info=(nil))
[microtek] sane_get_option_descriptor (15)...
[microtek] sane_control_option (opt=15,act=0,val=0x8051688,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=0xbfd27664,info=(nil))
[microtek] sane_control_option (opt=13,act=0,val=0xbfd27664,info=(nil))
[microtek] sane_control_option (opt=12,act=0,val=0xbfd30780,info=(nil))
[microtek] sane_get_option_descriptor (14)...
[microtek] sane_control_option  
(opt=14,act=1,val=0xbfd30784,info=0xbfd27668)
[microtek] sane_control_option (opt=13,act=0,val=0xbfd30780,info=(nil))
[microtek] sane_get_option_descriptor (15)...
[microtek] sane_control_option  
(opt=15,act=1,val=0xbfd30784,info=0xbfd27668)
[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
[microtek] .wait_ready 5...
[microtek] finagle_precal...
[microtek] .scanning_frame...
[microtek] .scanning_frame:  in- 0,0  2686,2686
[microtek] .scanning_frame: out- 0,0  2686,2686
[microtek] .accessory...
[microtek] .download_gamma...
[microtek] .download_gamma:  1024 entries of 2 bytes, max 255
[microtek] .download_gamma: by default
[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.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 186 bytes
Desc: This is a digitally signed message part
Url : 
http://lists.alioth.debian.org/pipermail/sane-devel/attachments/20060605/db41b821/PGP.pgp
From cont...@kikinovak.net  Mon Jun  5 09:22:37 2006
From: cont...@kikinovak.net (Niki Kovacs)
Date: Mon Jun  5 09:21:59 2006
Subject: [sane-devel] Setting up Canon Perfection USB scanner for use in
        network: questions, problems
Message-ID: <1149499358.3489.22.camel@fujitsu.aurouge>

Hi,

I have a small home LAN consisting of four PC's: one old Pentium III box
acting as gateway / connection handler / printer server / file server /
scanner server, and then one desktop and two laptops. I recently
migrated this LAN from Slackware 10.2 to CentOS 4.3, and everything runs
rather fine. 

One thing I have some trouble setting up is my Canon Perfection USB
scanner for network use, which worked fine with Slackware, because
things work a bit differently under CentOS.

The scanner is attached to the "server" box (192.168.1.1) with a minimal
install of CentOS, no window manager, no X. I installed sane-backends on
this machine and ran scanimage -L as root, which gave this:

[root@babasse ~]# scanimage -L
device `epson:libusb:001:002' is a Epson Perfection610 flatbed scanner

I read the various docs on sane-project.org, especially this document:

http://penguin-breeder.org/sane/saned/

My first problem, and apparently one big difference between CentOS and
Slackware, is that there is no entry for the scanner in /dev. Now what
does the above output of scanimage -L exactly mean? That my scanner
device file is /proc/bus/usb/001/002?

[root@babasse 001]# ls -l /proc/bus/usb/001/002
-rw-r--r--  1 root root 50 jun  5 08:57 /proc/bus/usb/001/002

Now, if that is the case (if not: correct me please), how do I change
permissions to that device file? So it doesn't belong to root.root, but
to saned.saned, according to the document linked above. 

By the way: saned.saned doesn't exist, so I just created this system
user like this:

# useradd -d /dev/null -s /bin/false saned

... which gives:

[root@babasse 001]# cat /etc/passwd | grep saned
saned:x:500:500::/dev/null:/bin/false

(Did I define this system user in an orthodox way? Or is there a better
way to do this?)

Now when I su to that user and try to run scanimage -L as saned, I get a
"No scanners were found" error, which is most likely a permission
problem on the device. Now the big question: how do I fix this? I
googled about "libusb hotplug scanner device permissions" and some
permutations. The problem is not the lack of information on the subject,
but the diverging wealth of it.

Any suggestions?

Niki Kovacs

Reply via email to