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 [email protected] 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 [email protected] Mon Jun 5 09:22:37 2006 From: [email protected] (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: <[email protected]> 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
