[sane-devel] driver for LM983x based scanners next shot

Henning Meier-Geinitz henning at meier-geinitz.de
Sun Nov 25 20:44:33 GMT 2001


Hi,

On Thu, Nov 22, 2001 at 11:56:53AM +0100, Jaeger, Gerhard wrote:
> am I right, that the Mustek devices use CID instead of CCD sensors?
> So this is good news, that they seem to work somehow, as the Plustek
> devices are using CCD sensors...

I'm not sure, what CID is :-] As far as I know, the BearPaws use CCD
type sensors, at least they don't have CIS. That's the row types I know.

> > Kernel panic
> [SNAP]
> 
> Hmmm...
> Seems to be a kernel problem :-(

I haven't look at this. Currently I run 2.4.10.

> >
> > Then I tried Linux 2.4.10: I used the following config file:
> >
> > usb 0x0400-0x1000
> > /dev/usb/scanner
> > usb 0x0400-0x1001
> > /dev/usb/scanner1
> >
> > The first one is the Mustek BearPaw 1200, the second one the Mustek
> > BearPaw 2400.
> 
> Cool didn't notice that these settings were good for the Mustek BearPaws... 

I just tried them because there are the vendor/device ids of these
scanners. That may be a problem, because 0x400/0x1000 is the generic
id of the lm9831 which can be changed, but wasn't by Mustek. So if we
set the device settings for BearPaw, they may not be the correct ones
for other scanners which also use 0x400/0x1000. That's why I proposed
to use options like "bearpaw2400" to select a specific scanner, if
necessary.

> Doesn't look too bad - maybe only a problem of the settings in 
> plustek-usbdevs.c ...


I tried some hours now and found settings that seem to work for the
BearPaw 2400. I don't have source code, ini files or other date about
this scanner so everything is guessed or tried. Color scanning works
quiete well, gray has horizontal stripes. Minimum resolution is 75
dpi. With lower res, the motor doesn't move at all. So preview doesn't
work in XSane. However, it's possible to increase oversampling to e.g.
5 in XSane preferences :-) The hardware maximum is 1200 (x) and 2400
dpi (y) but it won't work if I set more than 600x600 in the
definition. Here is the data, I will try to make it work better during
the next days:

/* Mustek BearPaw 2400
 * NS9832 + 5 Buttons + NEC548 (?)
 */
static DCapsDef Cap0x0400_0x1001_0 =
{
	{{ 15, 115}, 0, {2550, 3508}, { 100, 100 }, COLOR_BW },
	{{ 0,  0}, 0, {0, 0}, { 0, 0 }, 0 },
	{{ 0,  0}, 0, {0, 0}, { 0, 0 }, 0 },
	{{ 0,  0}, 0, {0, 0}, { 0, 0 }, 0 },
	{600, 600},
	0,
	SENSORORDER_bgr,
	/*	8, 2, 2, 0x05*/
	9, 5, 2, 0x05
};



static HWDef Hw0x0400_0x1001_0 =
{
  /*	1.4, 1.2,*/
	1.0, 0.9,
	9, 9,
	/*	600,*/
	1200,
	2048,
	4, 5,
	3000, 4095,
	0x02, 0x3f,	0x2f, 0x36,
	{2, 7, 0, 1, 0, 0, 0, 0, 4, 0},
	{7, 20, 1, 4, 7, 10, 0, 6, 12, 0},
	1,
	16,
	64,
	152,
	5416,
	3,
	0,
	0xfc,
	0,
	0xff,
	64,
	20,
	0x0d, 0x88, 0x28, 0x3b,
	0, 0, 0,
	SANE_FALSE,
	MODEL_Tokyo600
};


	{"0x0400-0x1001",	&Cap0x0400_0x1001_0, &Hw0x0400_0x1001_0},


> I think I have to write a description what the different settings supposed to 
> be and how to adopt for other scanners...

That would be nice. I could understand some of the descriptions,
partly by looking at the lm983x manual. Some questions/comments: The
min dpi seems to be ignored by the backend. At least, even if I set it
to 100, 100, the backend scans 50x50 (which doesn't work).
What about the bCCD and bPCB values? Are these for specifying the type
of CCD? What is a PCB? I just ignored all the register values for know
until I know more :-)

Bye,
  Henning



More information about the sane-devel mailing list