I'm not sure if it's a system config, porting, backend or libieee1284
problem. I'm trying to get a parport plustek opticpro 4800p working in
FreeBSD 5.2.1-Release. I have sane-backends 1.0.14 with libieee1284
0.2.8 installed.
When I do a scanimage -L, I get the no scanners were identified
msg. I've attached the debugging output from it. By the looks of the
messages it seems to open the parport just fine using libieee, but dies
during negotiation (after [plustek_pp] We're using libIEEE1284 I/O).
Digging into the libieee code, the only way to get the Failed at event
2 message is if it times out during a wait_status call in default.c.
I've looked at this off and on for several days and just don't have any
more ideas left.
Thanks,
Micah
Config files included below:
dll.conf:
all entries except plustek_pp commented out.
plustek_pp:
#(Most comments removed)
[direct]
#device ppi0
device 0x378
# device lpt0
# device parport0
option warmup-1
option lOffOnEnd -1
option lampOff -1
Debugging output:
[sanei_debug] Setting debug level of dll to 128.
[dll] sane_init: SANE dll backend version 1.0.10 from sane-backends 1.0.14
[dll] sane_init: reading dll.conf
[dll] add_backend: adding backend `plustek_pp'
[dll] sane_get_devices
[dll] load: searching backend `plustek_pp' in `/usr/local/lib/sane'
[dll] load: trying to load `/usr/local/lib/sane/libsane-plustek_pp.so.1'
[dll] load: dlopen()ing `/usr/local/lib/sane/libsane-plustek_pp.so.1'
[dll] init: initializing backend `plustek_pp'
[sanei_debug] Setting debug level of plustek_pp to 128.
[sanei_debug] Setting debug level of sanei_pp to 128.
[sanei_pp] pp_init: called for the first time
[sanei_pp] pp_init: initializing libieee1284
We can use /dev/io
[sanei_pp] pp_init: 3 ports reported by IEEE 1284 library
[sanei_pp] pp_init: port 0 is `0x278`
[sanei_pp] pp_init: port 1 is `0x378`
[sanei_pp] pp_init: port 2 is `0x3bc`
[sanei_pp] pp_init: initialized successfully
[sanei_pp] pp_calibrate_delay: Delay expected: 1000, real 5274, pp_thresh=5
[plustek_pp] PlustekPP backend V0.01-8, part of sane-backends 1.0.14
[plustek_pp] # Plustek-PP SANE Backend configuration file
[plustek_pp] # For use with Plustek parallel-port scanners
[plustek_pp] #
[plustek_pp]
[plustek_pp] #
[plustek_pp] # user either [direct] or [kernel] to access the scanner
[plustek_pp] # when using [kernel], device specifies the device-node,
which is created
[plustek_pp] # by the kernel-module loader (applies only to Linux)
[plustek_pp] # when using [direct], device is used to set the
parallel-port base address
[plustek_pp] # or a device-name suitable for libieee1284, i.e. parport0
[plustek_pp] #
[plustek_pp] [direct]
[plustek_pp] #device ppi0
[plustek_pp] device 0x378
[plustek_pp] Decoding device name 0x378
[plustek_pp] # device lpt0
[plustek_pp] # device parport0
[plustek_pp]
[plustek_pp] #
[plustek_pp] # leave the default values as specified in /etc/modules.conf
[plustek_pp] #
[plustek_pp] option warmup-1
[plustek_pp] Decoding option warmup
[plustek_pp] option lOffOnEnd -1
[plustek_pp] Decoding option lOffOnEnd
[plustek_pp] option lampOff -1
[plustek_pp] Decoding option lampOff
[plustek_pp]
[plustek_pp] # model override switch, mostly for cosmetic changes, if
the autodetection
[plustek_pp] # does not work or could not work correctly
[plustek_pp] # option mov 6
[plustek_pp]
[plustek_pp] #
[plustek_pp] # example for accessing the scanner via libieee1284
[plustek_pp] #
[plustek_pp] # [direct]
[plustek_pp] # device lpt0
[plustek_pp] # device parport0
[plustek_pp]
[plustek_pp] #
[plustek_pp] # example for accessing the scanner via the kernel module
[plustek_pp] #
[plustek_pp] #[kernel]
[plustek_pp] #device /dev/pt_drv
[plustek_pp] #
[plustek_pp] #option warmup-1
[plustek_pp] #option lOffOnEnd -1
[plustek_pp] #option lampOff -1
[plustek_pp] attach (0x378, 0xbfbfdeb0, 0x0)
[plustek_pp] Device configuration:
[plustek_pp] device name : 0x378
[plustek_pp] direct I/O: yes
[plustek_pp] warmup: -1s
[plustek_pp] lampOff : -1
[plustek_pp] lampOffOnEnd : yes
[plustek_pp] model override: 0
[plustek_pp] -
[plustek_pp] drvopen()
[sanei_pp] sanei_pp_open: called for device '0x378'
[sanei_pp] pp_open: trying to attach dev `0x378`
[sanei_pp] pp_open: looking up port in list
[sanei_pp] pp_open: checking 0x278
[sanei_pp] pp_open: checking 0x378
[sanei_pp] pp_open: port is in list at port[1]
[sanei_pp] pp_open: opening device
== ieee1284_open
== init_port
Got 0 from IO init
== 0
[sanei_pp] Supported Modes: SPP PS/2
[sanei_pp] pp_open: device `0x378` opened...
[sanei_pp] sanei_pp_open: connected to device using fd 1
[plustek_pp] ptdrvInit(0)
[plustek_pp] Init settings done
[plustek_pp] ScanData = 0x0805a000
[plustek_pp] Assigning port handle 1
[plustek_pp] ptdrvOpen(port=0x1)
[plustek_pp] Try to claim the parport
[sanei_pp] sanei_pp_claim: fd = 1
[plustek_pp] Setting SPP-mode
[plustek_pp] Setting PS/2-mode
[plustek_pp] We're using libIEEE1284 I/O