[sane-devel] CanoScan LiDE20 / Plustek on OpenBSD

Craig sane-lists at slashboot.org
Mon Jun 19 11:28:54 UTC 2006


Gerhard Jaeger wrote:
 > On Sunday 18 June 2006 17:40, Craig wrote:
 >> Hi.
 >>
 >> I've been trying without success for a while now, to get this USB
 >> scanner working on OpenBSD 3.9 and previously 3.8, using
 >> sane-backends-1.0.17 and previously 1.0.16
 >>
 >> sane-find-scanner reports:
 >> found USB scanner (vendor=0x04a9 [Canon], product=0x220d [CanoScan],
 >> chip=LM9832/3) at libusb:/dev/usb1:/dev/ugen0
 >>
 >> But scanimage -L swears that it is not there.
 >>
 >> I've disabled the 'uscanner*' device in my kernel, to ensure that libusb
 >> is able to catch the scanner and I have all prerequisite depends in
 >> place. I notice some other people have had these same problems and
 >> nobody has made any progress with the matter so far.
 >>
 >> Any pointers, advice or suggestions? Let me know if you need any more
 >> information and I'll gladly provide it.
 >>
 >> Many thanks in advance for any assistance that might be forthcoming.
 >>
 > Please provide more information!
 > I.e. the output of:
 > export SANE_DEBUG_PLUSTEK=19 ; scanimage -L
 >
 > Thanks
 > Gerhard
 >
 >
Thanks Gerhard.

I've included the debug output below. Am I right in thinking that the 
backend is seeing the scanner, but that the default settings are having 
no effect and resulting in a false return value?

-- 
Best regards,

Craig

http://slashboot.org/

Support OpenBSD
http://www.openbsd.org/orders.html

# export SANE_DEBUG_PLUSTEK=19 ; scanimage -L
[sanei_debug] Setting debug level of plustek to 19.
[plustek] Plustek backend V0.50-7, part of sane-backends 1.0.17
[plustek] Retrieving all supported and conntected devices
[plustek] Checking for 0x07b3-0x0010
[plustek] Checking for 0x07b3-0x0011
[plustek] Checking for 0x07b3-0x0017
[plustek] Checking for 0x07b3-0x0015
[plustek] Checking for 0x07b3-0x0017
[plustek] Checking for 0x07b3-0x0013
[plustek] Checking for 0x07b3-0x0013
[plustek] Checking for 0x07b3-0x0011
[plustek] Checking for 0x07b3-0x0010
[plustek] Checking for 0x07b3-0x0014
[plustek] Checking for 0x07b3-0x0015
[plustek] Checking for 0x07b3-0x0014
[plustek] Checking for 0x07b3-0x0016
[plustek] Checking for 0x07b3-0x0017
[plustek] Checking for 0x07b3-0x0017
[plustek] Checking for 0x07b3-0x0007
[plustek] Checking for 0x07b3-0x000f
[plustek] Checking for 0x07b3-0x000f
[plustek] Checking for 0x07b3-0x0005
[plustek] Checking for 0x07b3-0x0014
[plustek] Checking for 0x07b3-0x0012
[plustek] Checking for 0x0400-0x1000
[plustek] Checking for 0x0400-0x1001
[plustek] Checking for 0x0400-0x1001
[plustek] Checking for 0x0458-0x2007
[plustek] Checking for 0x0458-0x2008
[plustek] Checking for 0x0458-0x2009
[plustek] Checking for 0x0458-0x2013
[plustek] Checking for 0x0458-0x2015
[plustek] Checking for 0x0458-0x2016
[plustek] Checking for 0x03f0-0x0505
[plustek] Checking for 0x03f0-0x0605
[plustek] Checking for 0x04b8-0x010f
[plustek] Checking for 0x04b8-0x011d
[plustek] Checking for 0x1606-0x0050
[plustek] Checking for 0x1606-0x0060
[plustek] Checking for 0x1606-0x0160
[plustek] Checking for 0x049f-0x001a
[plustek] Checking for 0x04a9-0x2206
[plustek] Checking for 0x04a9-0x2207
[plustek] Checking for 0x04a9-0x2208
[plustek] Checking for 0x04a9-0x220d
[plustek] Checking for 0x04a9-0x220e
[plustek] Checking for 0x04a9-0x2220
[plustek] Available and supported devices:
[plustek] Device: >libusb:/dev/usb1:/dev/ugen0< - 0x04a9x0x220d
[plustek] ># Plustek-SANE Backend configuration file<
[plustek] ># For use with LM9831/2/3 based USB scanners<
[plustek] >#<
[plustek] ><
[plustek] ># each device needs at least two lines:<
[plustek] ># - [usb] vendor-ID and product-ID<
[plustek] ># - device devicename<
[plustek] ># i.e. for Plustek (0x07B3) UT12/16/24 (0x0017)<
[plustek] ># [usb] 0x07B3 0x0017<
[plustek] ># device /dev/usbscanner<
[plustek] ># or<
[plustek] ># device libusb:bbb:ddd<
[plustek] ># where bbb is the busnumber and ddd the device number<
[plustek] ># make sure that your user has access to /proc/bus/usb/bbb/ddd<
[plustek] >#<
[plustek] ># additionally you can specify some options<
[plustek] ># warmup, lOffOnEnd, lampOff<
[plustek] >#<
[plustek] ># For autodetection use<
[plustek] ># [usb]<
[plustek] ># device /dev/usbscanner<
[plustek] >#<
[plustek] ># or simply<
[plustek] ># [usb]<
[plustek] >#<
[plustek] ># or if you want a specific device but you have no idea about 
the<
[plustek] ># device node or you use libusb, simply set vendor- and 
product-ID<
[plustek] ># [usb] 0x07B3 0x0017<
[plustek] ># device auto<
[plustek] >#<
[plustek] ># NOTE: autodetection is safe, as it uses the info it got<
[plustek] >#       from the USB subsystem. If you're not using the<
[plustek] >#       autodetection, you MUST have attached that device<
[plustek] >#       at your USB-port, that you have specified...<
[plustek] >#<
[plustek] ><
[plustek] >[usb]<
[plustek] next device uses autodetection
[plustek] ... next device
[plustek] >#[usb] 0x04A9 0x220D<
[plustek] >usb 0x04A9 0x220D<
[plustek] ignoring >usb 0x04A9 0x220D<
[plustek] ><
[plustek] >#device /dev/uscanner<
[plustek] >#device libusb:/dev/usb1:/dev/ugen0<
[plustek] >device auto<
[plustek] Decoding device name >auto<
[plustek] ><
[plustek] >#<
[plustek] ># options for the previous USB entry<
[plustek] >#<
[plustek] ># switch lamp off after xxx secs, 0 disables the feature<
[plustek] ># (can also be set via frontend)<
[plustek] >option lampOff 300<
[plustek] Decoding option >lampOff<
[plustek] ><
[plustek] ># warmup period in seconds, 0 means no warmup, -1 means 
auto-warmup<
[plustek] ># (can also be set via frontend)<
[plustek] >option warmup -1<
[plustek] Decoding option >warmup<
[plustek] ><
[plustek] ># 0 means leave lamp-status untouched, not 0 means switch off<
[plustek] ># on sane_close<
[plustek] ># (can also be set via frontend)<
[plustek] >option lOffOnEnd 1<
[plustek] Decoding option >lOffOnEnd<
[plustek] ><
[plustek] >#<
[plustek] ># options to tweak the image start-position<
[plustek] ># (WARNING: there's no internal range check!!!)<
[plustek] >#<
[plustek] ># for the normal scan area<
[plustek] >#<
[plustek] >option posOffX 0<
[plustek] Decoding option >posOffX<
[plustek] >option posOffY 0<
[plustek] Decoding option >posOffY<
[plustek] ><
[plustek] ># for transparencies<
[plustek] >option tpaOffX 0<
[plustek] Decoding option >tpaOffX<
[plustek] >option tpaOffY 0<
[plustek] Decoding option >tpaOffY<
[plustek] ><
[plustek] ># for negatives<
[plustek] >option negOffX 0<
[plustek] Decoding option >negOffX<
[plustek] >option negOffY 0<
[plustek] Decoding option >negOffY<
[plustek] ><
[plustek] >#<
[plustek] ># for setting the calibration strip position<
[plustek] ># (WARNING: there's no internal range check!!!)<
[plustek] ># -1 means use built in<
[plustek] ># (can also be set via frontend)<
[plustek] >option posShadingY -1<
[plustek] Decoding option >posShadingY<
[plustek] >option tpaShadingY -1<
[plustek] Decoding option >tpaShadingY<
[plustek] >option negShadingY -1<
[plustek] Decoding option >negShadingY<
[plustek] ><
[plustek] >#<
[plustek] ># to invert the negatives, 0 disables the feature<
[plustek] >#<
[plustek] >option invertNegatives 0<
[plustek] Decoding option >invertNegatives<
[plustek] ><
[plustek] >#<
[plustek] ># to disable the internal sensor speedup function,<
[plustek] ># 1 disables the feature<
[plustek] >#<
[plustek] >option disableSpeedup 0<
[plustek] Decoding option >disableSpeedup<
[plustek] ><
[plustek] >#<
[plustek] ># to save/restore coarse calibration data<
[plustek] ># (can also be set via frontend)<
[plustek] >option cacheCalData 0<
[plustek] Decoding option >cacheCalData<
[plustek] ><
[plustek] >#<
[plustek] ># use alternate calibration routines<
[plustek] >#<
[plustek] >option altCalibration 0<
[plustek] Decoding option >altCalibration<
[plustek] ><
[plustek] >#<
[plustek] ># for skipping whole calibration step<
[plustek] >#<
[plustek] >option skipCalibration 0<
[plustek] Decoding option >skipCalibration<
[plustek] ><
[plustek] >#<
[plustek] ># for skipping entire fine calibration step<
[plustek] ># coarse calibration is done<
[plustek] >#<
[plustek] >option skipFine 0<
[plustek] Decoding option >skipFine<
[plustek] ><
[plustek] >#<
[plustek] ># discard the result of the fine white calibration<
[plustek] >#<
[plustek] >option skipFineWhite 0<
[plustek] Decoding option >skipFineWhite<
[plustek] ><
[plustek] ># for replacing the gain values found during coarse<
[plustek] ># calibration<
[plustek] ># (can also be set via frontend)<
[plustek] >option red_gain   -1<
[plustek] Decoding option >red_gain<
[plustek] >option green_gain -1<
[plustek] Decoding option >green_gain<
[plustek] >option blue_gain  -1<
[plustek] Decoding option >blue_gain<
[plustek] ><
[plustek] ># for replacing the offset values found during coarse<
[plustek] ># calibration<
[plustek] ># (can also be set via frontend)<
[plustek] >option red_offset   -1<
[plustek] Decoding option >red_offset<
[plustek] >option green_offset -1<
[plustek] Decoding option >green_offset<
[plustek] >option blue_offset  -1<
[plustek] Decoding option >blue_offset<
[plustek] ><
[plustek] >#<
[plustek] ># for replacing the default lampoff settings, this<
[plustek] ># works only for CIS devices like CanoScan LiDE20<
[plustek] ># (can also be set via frontend)<
[plustek] >option red_lampoff   -1<
[plustek] Decoding option >red_lampoff<
[plustek] >option green_lampoff -1<
[plustek] Decoding option >green_lampoff<
[plustek] >option blue_lampoff  -1<
[plustek] Decoding option >blue_lampoff<
[plustek] ><
[plustek] >#<
[plustek] ># for adjusting the default gamma values<
[plustek] ># (can also be set via frontend)<
[plustek] >option redGamma         1.0<
[plustek] Decoding option >redGamma<
[plustek] >option greenGamma       1.0<
[plustek] Decoding option >greenGamma<
[plustek] >option blueGamma        1.0<
[plustek] Decoding option >blueGamma<
[plustek] >option grayGamma        1.0<
[plustek] Decoding option >grayGamma<
[plustek] ><
[plustek] >#<
[plustek] ># to enable TPA (EPSON or UMAX, if autodetection fails)<
[plustek] ># 0 means default behaviour as specified in the internal tables<
[plustek] ># 1 means enable (needed for UMAX 3450)<
[plustek] >option enableTPA 0<
[plustek] Decoding option >enableTPA<
[plustek] ><
[plustek] >#<
[plustek] ># model override functionality, currently only available for<
[plustek] ># Mustek devices, using NSCs' vendor ID: 0x0400 and<
[plustek] ># also their product ID: 0x1000 (LM9831) 0x1001 (LM9832)<
[plustek] >#<
[plustek] ># mov/PID    |    0x1000   |   0x1001<
[plustek] ># ---------------------------------------<
[plustek] ># 0 (default)| BearPaw1200 | BearPaw 2400<
[plustek] ># 1          |   ignored   | BearPaw 1200<
[plustek] >#<
[plustek] >option mov 0<
[plustek] Decoding option >mov<
[plustek] ><
[plustek] >#<
[plustek] ># and of course the device-name<
[plustek] >#<
[plustek] ># device /dev/usbscanner<
[plustek] >#device /dev/usb1<
[plustek] ><
[plustek] >#<
[plustek] ># to define a new device, start with a new section:<
[plustek] ># [usb]<
[plustek] >#<
[plustek] attach (auto, 0xcfbe1470, 0x0)
[plustek] Device configuration:
[plustek] device name  : >auto<
[plustek] USB-ID       : ><
[plustek] model ovr.   : 0
[plustek] warmup       : -1s
[plustek] lampOff      : 300
[plustek] lampOffOnEnd : yes
[plustek] cacheCalData : no
[plustek] altCalibrate : no
[plustek] skipCalibr.  : no
[plustek] skipFine     : no
[plustek] skipFineWhite: no
[plustek] invertNegs.  : no
[plustek] dis.Speedup  : no
[plustek] pos_x        : 0
[plustek] pos_y        : 0
[plustek] pos_shading_y: -1
[plustek] neg_x        : 0
[plustek] neg_y        : 0
[plustek] neg_shading_y: -1
[plustek] tpa_x        : 0
[plustek] tpa_y        : 0
[plustek] tpa_shading_y: -1
[plustek] red gain     : -1
[plustek] green gain   : -1
[plustek] blue gain    : -1
[plustek] red offset   : -1
[plustek] green offset : -1
[plustek] blue offset  : -1
[plustek] red lampoff  : -1
[plustek] green lampoff: -1
[plustek] blue lampoff : -1
[plustek] red Gamma    : 1.00
[plustek] green Gamma  : 1.00
[plustek] blue Gamma   : 1.00
[plustek] gray Gamma   : 1.00
[plustek] ---------------------
[plustek] usbDev_open(auto,) - 0x847160c0
[plustek] Vendor ID=0x04A9, Product ID=0x220D
[plustek] usbio_DetectLM983x
[plustek] usbio_DetectLM983x: found LM9832/3
[plustek]  * setting device to idle state!
[plustek] Detected vendor & product ID: 0x04A9-0x220D
[plustek] Device description for >0x04A9-0x220D< found.
[plustek] usb_initDev(41,0x04a9,-1)
[plustek] Device WAF  : 0x00000002
[plustek] Transferrate: 1000000 Bytes/s
[plustek] Device Flags: 0x00000000
[plustek] Vendor adjusted to: >Canon<
[plustek] LAMP-STATUS: 0x00000000
[plustek] RESETTING REGISTERS(-1) - 0x80
[plustek] SETTING THE MISC I/Os
[plustek] MISC I/O after RESET: 0x66, 0x16, 0x91
[plustek] Calibration file-name set to:
[plustek] >/root/.sane/Canon-N670U_N676U_LiDE20.cal<
[plustek] usb_SetScanParameters()
[plustek] * HDPI: 4.000
[plustek] * XDPI=150, HDPI=4.000
[plustek] * YDPI=150, MinDPIY=75
[plustek] * DataPixelStart=75, LineEnd=75
[plustek] * DataPixelStart=76, LineEnd=76 (ADJ)
[plustek] >> End-Start=0, HDPI=4.00
[plustek] * Full Steps to Skip at Start = 0x0000
[plustek] * StepSize(Preset) = 121 (0x0079)
[plustek] * Scan calculations...
[plustek] * LineLength=6080, LineRateColor=3
[plustek] * Stepsize = 571, 0x46=0x02 0x47=0x3b
[plustek] * DPD =16404 (0x4014)
[plustek] * DPD =1836 (0x072c), step size=571, steps2rev=63
[plustek] * llen=6080, lineRateColor=3, qtcnt=8, hfcnt=8
[plustek] usb_GetMCLKDivider()
[plustek] usb_GetMCLKDiv()
[plustek] - lower mclkdiv limit=4.000000
[plustek] - upper mclkdiv limit=32.500000
[plustek] - hdpi          = 4.000
[plustek] - pixelbits     = 8
[plustek] - pixelsperline = 0
[plustek] - linelen       = 6080
[plustek] - transferrate  = 1000000
[plustek] - MCLK Divider  = 0
[plustek] - Current MCLK Divider = 4
[plustek] * Integration Time Adjust = 0 (HDPI=4.000,MCLKD=4.000)
[plustek] * Setting GreenPWMDutyCycleHigh
[plustek] * Current MCLK Divider = 4.000000
[plustek] * MOTOR-Settings: PWM=0x08, PWM_DUTY=0x1f
[plustek] * FFStepSize = 428, [0x48] = 0x01, [0x49] = 0xac
[plustek] * PhyBytes   = 6
[plustek] * PhyLines   = 3485337796
[plustek] * TotalBytes = 3732157592
[plustek] * PL=295, coeffsize=216, scaler=3
[plustek] * PauseLimit = 295, [0x4e] = 0x91, [0x4f] = 0x01
[plustek] * Scansteps=0 (3485337801*1200/150)
[plustek] usb_SetScanParameters() done.
[plustek] usbDev_getCaps()
[plustek] Scanner information:
[plustek] Vendor : Canon
[plustek] Model  : N670U/N676U/LiDE20
[plustek] Flags  : 0x00000000
[plustek] drvclose()
[plustek] usbDev_stopScan()
[plustek] usbDev_ScanEnd(), start=0, park=0
[plustek] usbDev_close()
[plustek] attach: model = >N670U/N676U/LiDE20<
[plustek] sane_get_devices (0xcfbe1da8, 0)
device `plustek:libusb:/dev/usb1:/dev/ugen0' is a Canon 
N670U/N676U/LiDE20 USB flatbed scanner
[plustek] sane_exit
[plustek] Shutdown called (dev->fd=-1, libusb:/dev/usb1:/dev/ugen0)
[plustek] Waiting for scanner-ready...
[plustek] Switching lamp off...
[plustek] LAMP-STATUS: 0x00000000
[plustek] LAMP-STATUS: 0x00000000
[plustek] Lamp-Timer stopped




More information about the sane-devel mailing list