[sane-devel] FreeBSD 5.2.1 and Mustek 2400CU Plus

Linas Valiukas shirshegsm@delfi.lt
Mon, 4 Oct 2004 23:46:43 +0300


--Boundary-00=_zabYBuwY6FKMi8n
Content-Type: text/plain;
  charset="us-ascii"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Hello.

I'm using FreeBSD 5.2.1-RELEASE on i386 and sane-backends-1.0.14_1 (from 
ports). Also I have Mustek 2400CU Plus connected to USB port.

My problem is that after scanning something I have to reattach my scanner 
(detach and attach again the USB cable), because SANE doesn't find my scanner 
anymore.

Here's what I get when plugging in my scanner at the first time:

%scanimage -L
device `gt68xx:libusb:/dev/usb0:/dev/ugen0' is a Mustek BearPaw 2400 CU Plus 
flatbed scanner

And then I scan something...

%scanimage > picture.pnm

...and when I'm trying to try scanning again I get:

%scanimage -L
No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).

I've checked output of usbdevs (command, which shows attached USB devices). 
Before scanning:

%usbdevs
addr 1: UHCI root hub, VIA
 addr 2: USB Scanner, Mustek Systems

...and after:
%usbdevs
addr 1: UHCI root hub, VIA
 addr 2: ?????, Mustek Systems

It looks like that after using my BearPaw, system can't find out that device 
on addr 1 is a scanner. Also, when I'm scanning multiple pages with scanadf, 
I can scan them all (I don't get "No scanners were identified" error between 
scans).

Here's some debug output:

first scan:
%env SANE_DEBUG_GT68XX=255 scanimage > /dev/null
<...>
[gt68xx] sane_read: scan complete: 3973 bytes, 9080709 total
[gt68xx] sane_read: start (line 3543 of 3543, byte_count 2563 of 2563)
[gt68xx] sane_read: nothing more to scan: EOF
[gt68xx] sane_cancel: start
[gt68xx] sane_cancel: scan finished, scanned 9080709 bytes in 56 seconds
[gt68xx] gt68xx_line_reader_free: enter
[gt68xx] gt68xx_device_read_finish: read_bytes_left = 0
[gt68xx] gt68xx_line_reader_free: leave
[gt68xx] gt68xx_device_generic_req: command=0x41
[gt68xx] >> 41 01 00 00 00 00 00 00 41 01 00 00 00 00 00 00 41 01 00 00 00 00 
00 00 41 01 00 00 00 00 00 00 41 01 00 00 00 00 00 00 41 01 0000 00 00 00 00 
41 01 00 00 00 00 00 00 41 01 00 00 00 00 00 00
[gt68xx] << 00 41 b3 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[gt68xx] gt68xx_device_generic_req: command=0x17
[gt68xx] >> 17 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[gt68xx] << 00 17 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[gt68xx] gt68xx_device_generic_req: command=0x24
[gt68xx] >> 24 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[gt68xx] << 00 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[gt68xx] sane_cancel: exit
[gt68xx] sane_close: start
[gt68xx] gt68xx_device_generic_req: command=0x25
[gt68xx] >> 25 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[gt68xx] << 00 25 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[gt68xx] gt68xx_device_close: enter: dev=0x8059800
[gt68xx] gt68xx_device_close: leave: ok
[gt68xx] gt68xx_calibrator_free: enter
[gt68xx] gt68xx_calibrator_free: min_clip_count=0, max_clip_count=0
[gt68xx] gt68xx_calibrator_free: leave: ok
[gt68xx] gt68xx_calibrator_free: enter
[gt68xx] gt68xx_calibrator_free: min_clip_count=518050, max_clip_count=4
[gt68xx] gt68xx_calibrator_free: leave: ok
[gt68xx] gt68xx_calibrator_free: enter
[gt68xx] gt68xx_calibrator_free: min_clip_count=0, max_clip_count=0
[gt68xx] gt68xx_calibrator_free: leave: ok
[gt68xx] sane_close: exit
[gt68xx] sane_exit: start
[gt68xx] gt68xx_device_free: enter: dev=0x8059800
[gt68xx] gt68xx_device_free: freeing dev
[gt68xx] gt68xx_device_free: leave: ok
[gt68xx] sane_exit: exit

second scan:
%env SANE_DEBUG_GT68XX=255 scanimage > /dev/null
[sanei_debug] Setting debug level of gt68xx to 255.
[gt68xx] SANE GT68xx backend version 1.0 build 60 from sane-backends 1.0.14
[gt68xx] sane_init: authorize != null
[gt68xx] sane_init: debug options are enabled, handle with care
[gt68xx] sane_init: little endian machine
[gt68xx] sane_init: reading config file `gt68xx.conf'
<...>
[gt68xx] sane_init: config file line 96: trying to attach `usb 0x055f 0x021d'
<...>
[gt68xx] sane_init: exit
[gt68xx] sane_get_devices: start: local_only = false
[gt68xx] sane_get_devices: exit
scanimage: no SANE devices found
[gt68xx] sane_exit: start
[gt68xx] sane_exit: exit

I'm using PS2Dfw.usb backend (which is identical to Mustek's provided in 
installation CD - by the way, my BearPaw on Windows works just fine).

Yes, I know that reattaching the cable is not a big deal. But I want to know 
what's wrong, how to fix it and what can I do to work it properly... ;-)

Can you help me with this?

Respectfully Yours,

Linas Valiukas

--Boundary-00=_zabYBuwY6FKMi8n
Content-Type: application/pgp-keys;
  name="OpenPGP key 0x692E662F8F8ECEFE588CC55CDBA23BED89508A29"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=0x692E662F8F8ECEFE588CC55CDBA23BED89508A29.asc

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.2.6 (FreeBSD)

mQGiBEFgLuoRBADKyjZYFGgKgMwHDR1jHekLwPKsRlCZvkjS64TfaZXSfgztchcT
C4ieSQZfxmgDCYlUQ5Rg13x+xgIGnIuoD0ajxt6FXri3M1p4ALktHlMw31aRbZZt
5xypifNRIB+REnp6kYSzEF5MepAvFlSlU4PYtv2M1bQVzJJSCq75w6xcgwCgqs/6
jvV07NX9DMFK5MI+YZNsiqkD/0P7Sv8HZKw3sWIcr1r3kPWyuAkrQ4tm0dcOWEIy
Z+2LhsLOxkod2C/T0bm2pVTwD2veQLfNaQqE45HWTbl2BHmPu8vHYbP+rYRE5DLN
+J/ihlLZcHnXmY4mb0rx+5P2S7dgM2pDKJ6n4PYt2pOCXeItXWgUOGbWKnMKjtQG
TPfoA/9ZJW3EyNbdkHbZgykDnfgTnwYdTFcHtPnLd84zLE7XwBE9NAeOpdC3SIwK
GSI5QcbgghBeQGjSZluezOz2pRiJdtBGRkBcdhcnxtuPguhV5+uz0Sp+hFUIMdSz
IzTMahiv4Nkd4I69emk5NToy/0QI8qgmopZrLNNtdiSa/ecDtrQxTGluYXMgVmFs
aXVrYXMgKFNoaXJzaGVHU00pIDxzaGlyc2hlZ3NtQGRlbGZpLmx0PoheBBMRAgAe
BQJBYC7qAhsDBgsJCAcDAgMVAgMDFgIBAh4BAheAAAoJENuiO+2JUIopf2AAoIaw
DetwPrCNfa86yqeFPq8SlhucAJ0UcrNMmtB0wCGntS20ivUhJcBcKLkBDQRBYC7s
EAQA/uaj55ji2GGTKtGPBFhbWUYMuZahLiVfDfDOWmLqJQHPTVMDu1UkWtaXJZ0J
5sEUiA1q+2Uda3JMrB4xy91xMa+adZGkX6F3z+wbf7aCBAHsH1qEWWTop8JWfMA7
zc6sD/bkRR0w6ST5POaXvfyCGc32N0bN9TXQP+McTxt/josAAwYEAPUDxKv6VOIG
qeamFBR6edsQ2xaVjFpUBBKfeO3xQNlPMS+8qKQ6nb9OXuOILESq063H6uXPxnFf
omjfA879mSvpqmvLLOiXOVe+fEINkHszT0dGkQ3Joqv9Vvr5o0LBDNi655dSfFl9
fnYX5XA8WsL40qbuHgvEJJD7vaCNx5+oiEkEGBECAAkFAkFgLuwCGwwACgkQ26I7
7YlQiikM1ACgosQFmW2kbHqp9h4Yy3t+tBncYwAAn2T9BhesJDRzCY3VeckZC+mz
MkDu
=NjCr
-----END PGP PUBLIC KEY BLOCK-----

--Boundary-00=_zabYBuwY6FKMi8n--