Microtek 600GS & Solaris 7 : trouble

Romain Dolbeau (dolbeaur@club-internet.fr)
Sat, 19 Jun 1999 11:53:23 +0100

Hello,

(first, I apologize for the length of the post and my
poor english)

I'm trying to use a Microtek 600GS on a SPARCstation 1+
running Solaris 7. The installed 'Generic SCSI' is the
SCG driver by Klaus Schilling (aka SOLARIS_INTERFACE).

At first, the scanner was not recognized, it reports
"MII SC25 ScanMaker 600GS V4.6", and the microtek backend
only check for "SC {21,23,31}". Only find-scanner would
see it (trivial patch at the end of message, now it is
seen as a "600ZS").

Now, it is seen, but doesn't work.

First, there's a mis-feature inside the Solaris-SCG backend :
there's a seg-fault roaming line 2658 of
"sane-1.0.1/sanei/sanei_scsi.c" when DEBUG_LEVEL >= 3; the
DEBUG line try to printf() "*dst_size", which is sometimes
explicitly NULL.

Second, line 2688 of this file is :
2688: if (*(u_char *) & scmd.sense && handler)
When I try to "preview", "*(u_char *) & scmd.sense" is 0,
so the backend throw to an I/O error.
I've tried removing the check (maybe it's stupid ?), the result
is that the scanner start doing _something_ : the light move
from one side to the other, go back, then the software hang.
After a delay, I got SCSI error on the console :

####
WARNING: /sbus@1,f8000000/esp@0,800000 (esp0):
Connected command timeout for Target 0.0
WARNING: /sbus@1,f8000000/esp@0,800000 (esp0):
Reverting to slow SCSI cable mode
handle_incomplete: 1 retry cnt: 0
scgintr: DONE_ERROR pkt_reason: 6 state: 7 resid: 0 packet resid: 28770
WARNING: /sbus@1,f8000000/esp@0,800000/sd@1,0 (sd1):
SCSI transport failed: reason 'reset': retrying command

WARNING: /sbus@1,f8000000/esp@0,800000 (esp0):
Connected command timeout for Target 0.0
handle_incomplete: 1 retry cnt: 0
WARNING: /sbus@1,f8000000/esp@0,800000/sd@2,0 (sd2):
SCSI transport failed: reason 'reset': retrying command
####

Also,
"[sanei_scsi] sanei_scsi_cmd 8: timeout"
"[sanei_scsi] sanei_scsi_cmd 1b: timeout"
are send to stderr by xscanimage. Plus, an alert box with
"Error during read : Error during device I/O" shows up.

I still can quit xscanimage, but the scanner won't talk to
anybody until everything is power cycled, it seems.

If I "scan" instead of "preview", the result is almost the
same, that is, the back-and-forth move is replaced by
a window and the scanner seems to scan, but fails at the
end with the same SCSI error.
Note : when the light reached the end of the scanner, the
progress bar is only at around 5-10% of the total.

Here is the scanner inquiry:

####
========== Scanner Inquiry Report ==========
===== Scanner ID...
Device Type Code: 0x06
Model Code: 0x16
Vendor Name: 'MII SC25' Model Name: 'ScanMaker 600GS '
Vendor Specific String: 'SCSI F/WV2.5 CTL5380'
Firmware Rev: 'V4.6'
SCSI F/W version: 2.5 Scanner F/W version: 4.6
Response data format: 0x01
===== Imaging Capabilities...
Modes: Lineart Halftone Gray
Resolution Step Sizes: 1% 5% Expanded Resolution Support? yes
Supported Bits Per Sample: 8
Max. document size code: 0x00
Max. document size: 2549 x 4199 pixels
Frame units: pixels 1/8"'s
# of built-in halftones: 12 Downloadable patterns? Yes
Data Compression:
Contrast Settings: 14 Exposure Settings: 14
Adjustable Shadow/Highlight? yes Adjustable Midtone? no
Digital brightness/offset? no
Gamma Table Size: 256 entries of 1 bytes (max. value: 255)
===== Source Options...
Feed type: flatbed ADF support? yes
Document Feeder Support? yes Feeder Backtracking? no
Feeder Installed? no Feeder Ready? no
Transparency Adapter Installed? no
Fast Color Prescan? no
Selectable Transfer Format? no
Color Transfer Sequence: plane-by-plane (3-pass)
Three pass scan support? yes
ModeSelect-1 and ModeSense-1 Support? no
Can Disable Linearization Table? no
Can Disable Start-of-Scan Recalibration? no
Internal expanded expansion? no
####

and what scsiinfo -p has to say (the last one is the scanner):

####
esp0: sd1,0 tgt 1 lun 0:
Asynchronous Noisy CanReconnect
Non-removable Disk: QUANTUM P105SS 910-10-94 A.1
[]
esp0: sd2,0 tgt 2 lun 0:
Asynchronous Noisy CanReconnect
Non-removable Disk: QUANTUM P105SS 910-10-94 A.1
[]
esp0: scg0,0 tgt 0 lun 0:
Asynchronous Noisy CanReconnect
<<< SCSI probe failed: device driver doesn't support probing >>>
####

Any idea on how to make that thing work ?

TIA

##### PATCH 1 [600 GS recognition]
*** sane-1.0.1/backend/microtek.c Sun Feb 28 20:23:53 1999
--- sane-1.0.1-new/backend/microtek.c Sat Jun 19 10:44:38 1999
***************
*** 1762,1767 ****
--- 1762,1768 ----
!(strncmp("MII SC21", &(result[8]), 8)) || /* for the 600ZS */
!(strncmp("MII SC23", &(result[8]), 8)) || /* for the -other-
600ZS */
!(strncmp("AGFA ", &(result[8]), 8)) || /* for Arcus II */
+ !(strncmp("MII SC25", &(result[8]), 8)) || /* for ScanMaker
600GS */
!(strncmp(" ", &(result[8]), 8)) ) {
switch (result[62]) {
case 0x16 :
##### END OF PATCH 1

-- 
romain

--
Source code, list archive, and docs: http://www.mostang.com/sane/
To unsubscribe: echo unsubscribe sane-devel | mail majordomo@mostang.com