PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Scanner-Probleme mit Sane nach Update von 9.1 nach 9.2



Eagle
29.11.04, 07:44
Hallo,

nach einem Update von SuSE 9.1 auf 9.2 stehe ich wieder einmal vor dem leidiglichen und selben Thema "Scanner-Einbindung".

- Plustek 12000T
- sane-backends-1.0.15 (TAR-Version von sane.org)

Entsprechend der früheren Diskussionen und dem Posting hier www.linux-club.de/viewtopic.php?t=12129&sid=450bbe4ec00c544b4b535daf6706fbc3, bin ich wie folgt vorgegangen:

- Nachinstallieren von libieee1284-0.2.8.tar.bz2
- Deinstallieren der sane-Pakete unter SuSE und löschen der entsprechenden Verzeichnisse.
- Installieren von sane-backends-1.0.15


./configure --prefix=/usr --sysconfdir=/etc --mandir=/usr/share/man --infodir=/usr/share/info

liefert folgende Ausgabe:


-> Variables used for compilation/linking:
CPPFLAGS=" -DPATH_SANE_CONFIG_DIR=$(configdir) -DPATH_SANE_DATA_DIR=$(datadir) -DV_MAJOR=1 -DV_MINOR=0 -I/usr/include/gphoto2 "
CFLAGS="-g -O2 -W -Wall"
LDFLAGS=" "
LIBS="-lusb -lnsl -lm -ljpeg -lieee1284 -lgphoto2 -lgphoto2_port -lm -lresmgr"
-> Installation directories:
Configuration: /etc
Libraries: /usr/lib
Binaries: /usr/bin and /usr/sbin
Manpages: /usr/share/man
Documentation:
-> Network parameters:
Build saned: yes
IPv6 support: yes
-> The following backends will be built:
abaton agfafocus apple artec as6e avision bh canon canon630u coolscan coolscan2 dc25 dmc epson fujitsu gt68xx hpleo matsushita microtek microtek2 mustek mustek_usb nec pie plustek plustek_pp ricoh s9036 sceptre sharp sp15c st400 tamarack test teco1 teco2 teco3 umax umax_pp umax1220u artec_eplus48u ma1509 ibm hp5400 u12 snapscan niash dc210 dc240 canon_pp hpsj5s mustek_pp gphoto2 qcam v4l net sm3600
************************************************** **************
* Please be sure to read file PROBLEMS in this directory *
* BEFORE running any of the SANE applications. Some devices *
* may be damaged by inproper operation, so please do heed this *
* advice. *
************************************************** **************





export SANE_DEBUG_PLUSTEK_PP=20 ; export SANE_DEBUG_SANEI_PP=20 ; scanimage -L


wirft dann folgende Meldungen aus:


[sanei_debug] Setting debug level of plustek_pp to 20.
[sanei_debug] Setting debug level of sanei_pp to 20.
[sanei_pp] pp_init: called for the first time
[sanei_pp] pp_init: initializing libieee1284
[sanei_pp] pp_init: 1 ports reported by IEEE 1284 library
[sanei_pp] pp_init: port 0 is `parport0`
[sanei_pp] pp_init: initialized successfully
[sanei_pp] pp_calibrate_delay: Delay expected: 1000, real 1986, pp_thresh=2
[plustek_pp] PlustekPP backend V0.43-5, part of sane-backends 1.0.15
[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 0x378<
[plustek_pp] Decoding device name >0x378<
[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 7<
[plustek_pp] ><
[plustek_pp] >#<
[plustek_pp] ># example for accessing the scanner via libieee1284<
[plustek_pp] >#<
[plustek_pp] >[direct]<
[plustek_pp] attach (0x378, 0xbfff3e20, (nil))
[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 >parport0<
[sanei_pp] pp_open: `0x378` is not a valid device name
[sanei_pp] sanei_pp_open: connection failed
[plustek_pp] open: PtDrvInit failed: 4
[plustek_pp] open failed: -1
[plustek_pp] >device parport0<
[plustek_pp] Decoding device name >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 (parport0, 0xbfff3e20, (nil))
[plustek_pp] Device configuration:
[plustek_pp] device name : >parport0<
[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 'parport0'
[sanei_pp] pp_open: trying to attach dev `parport0`
[sanei_pp] pp_open: looking up port in list
[sanei_pp] pp_open: checking >parport0<
[sanei_pp] pp_open: port is in list at port[0]
[sanei_pp] pp_open: opening device
[sanei_pp] Supported Modes: SPP PS/2
[sanei_pp] pp_open: device `parport0` opened...
[sanei_pp] sanei_pp_open: connected to device using fd 0
[plustek_pp] ptdrvInit(0)
[plustek_pp] Init settings done
[plustek_pp] ScanData = 0x0806d4f8
[plustek_pp] Assigning port handle 0
[plustek_pp] ptdrvOpen(port=0x0)
[plustek_pp] Try to claim the parport
[sanei_pp] sanei_pp_claim: fd = 0
[plustek_pp] Setting SPP-mode
[plustek_pp] Setting PS/2-mode
[plustek_pp] We're using libIEEE1284 I/O
[plustek_pp] Starting Scanner-Autodetection
[plustek_pp] ************ DETECTP48xx ************
[plustek_pp] ModelSet4800()
[plustek_pp] modelInitPageSettings()
[plustek_pp] A4 set
[plustek_pp] ModelSet4800() done.
[plustek_pp] P48xxInitAsic()
[plustek_pp] DacInitialize()
[plustek_pp] ImageInitialize()
[plustek_pp] IOFuncInitialize()
[plustek_pp] IOInitialize()
[plustek_pp] * using readfunction >fnBiDirRead<
[plustek_pp] MotorInitialize()
[plustek_pp] ResetPort()
[plustek_pp] Test 0x55
[plustek_pp] Test 0xAA
[plustek_pp] Compare data=0x80 and status=0x50, port=0x0
[plustek_pp] p48xxReadWriteTest()
[plustek_pp] Can't find your model, asic = 0x5a
[plustek_pp] detectScannerConnection() returns -9031.
[plustek_pp] ************* ASIC9800x *************
[plustek_pp] ResetPort()
[plustek_pp] IOInitialize()
[plustek_pp] * using readfunction >fnBiDirRead<
[plustek_pp] ASIC = 0x81
[plustek_pp] ************* ASIC98001 *************
[plustek_pp] ModelSet9636()
[plustek_pp] ModelSet9360()
[plustek_pp] modelInitPageSettings()
[plustek_pp] A4 set
[plustek_pp] ModelSet9630() done.
[plustek_pp] modelInitPageSettings()
[plustek_pp] A4 set
[plustek_pp] ModelSet9636() done.
[plustek_pp] P9636InitAsic()
[plustek_pp] DacInitialize()
[plustek_pp] ImageInitialize()
[plustek_pp] IOFuncInitialize()
[plustek_pp] IOInitialize()
[plustek_pp] * using readfunction >fnBiDirRead<
[plustek_pp] MotorInitialize()
[plustek_pp] 0x81
[plustek_pp] CCID = 0x00
[plustek_pp] P9636InitAsic() done.
[plustek_pp] ResetPort()
[plustek_pp] Test 0x55
[plustek_pp] Test 0xAA
[plustek_pp] Compare data=0x80 and status=0x10, port=0x0
[plustek_pp] ioP98ReadWriteTest()
[plustek_pp] Putting Scanner (ASIC 98001) into Idle-Mode
[plustek_pp] detectScannerConnection() returns 0.
[plustek_pp] p9636InitP98001(0)
[plustek_pp] bData = 0x0000, PCB-ID = 0x00
[plustek_pp] CCD-ID = 0x00 = _CCD_3797
[plustek_pp] bSetScanModeFlag = 0
[plustek_pp] *** setupBuffers ***
[plustek_pp] Driverbuf(147360 bytes) needed !
[plustek_pp] pColorRunTab = 0x4038c534 - 0x4038bfa8
[plustek_pp] Adjust for 98001 ASIC
[plustek_pp] sb2 = 0x40368008, sb1 = 0x40372be8, Color = 0x40382db8
[plustek_pp] Pro = 0x403883a8, size = 147360
[plustek_pp] *** DETECTION DONE, result: 0 ***
[plustek_pp] Switching lamp 0 on.
[plustek_pp] ptdrvClose()
[plustek_pp] *** cleanup buffers ***
[plustek_pp] MiscRestorePort()
[plustek_pp] Releasing parport
[sanei_pp] sanei_pp_release: fd = 0
[plustek_pp] MiscGetModelName - id = 15
[plustek_pp] pt_drv0: 9636T/12000T found
[plustek_pp] pt_drv0: Lamp-Timer set to 180 seconds.
[plustek_pp] pt_drv0: WarmUp period set to 30 seconds.
[plustek_pp] pt_drv0: Lamp untouched on driver unload.
[plustek_pp] Lamp-Timer started!
[plustek_pp] ioctl(_PTDRV_OPEN_DEVICE)
[plustek_pp] Lamp-Timer stopped!
[plustek_pp] Init settings done
[plustek_pp] ptdrvOpen(port=0x0)
[plustek_pp] Try to claim the parport
[sanei_pp] sanei_pp_claim: fd = 0
[plustek_pp] Setting SPP-mode
[plustek_pp] Setting PS/2-mode
[plustek_pp] We're using libIEEE1284 I/O
[plustek_pp] Starting Scanner-detection (ASIC 98001)
[plustek_pp] ************* ASIC98001 *************
[plustek_pp] ModelSet9636()
[plustek_pp] ModelSet9360()
[plustek_pp] modelInitPageSettings()
[plustek_pp] A4 set
[plustek_pp] ModelSet9630() done.
[plustek_pp] modelInitPageSettings()
[plustek_pp] A4 set
[plustek_pp] ModelSet9636() done.
[plustek_pp] P9636InitAsic()
[plustek_pp] DacInitialize()
[plustek_pp] ImageInitialize()
[plustek_pp] IOFuncInitialize()
[plustek_pp] IOInitialize()
[plustek_pp] * using readfunction >fnBiDirRead<
[plustek_pp] MotorInitialize()
[plustek_pp] 0x81
[plustek_pp] CCID = 0x00
[plustek_pp] P9636InitAsic() done.
[plustek_pp] ResetPort()
[plustek_pp] Test 0x55
[plustek_pp] Test 0xAA
[plustek_pp] Compare data=0x80 and status=0x10, port=0x0
[plustek_pp] ioP98ReadWriteTest()
[plustek_pp] Putting Scanner (ASIC 98001) into Idle-Mode
[plustek_pp] detectScannerConnection() returns 0.
[plustek_pp] p9636InitP98001(0)
[plustek_pp] bData = 0x0000, PCB-ID = 0x00
[plustek_pp] CCD-ID = 0x00 = _CCD_3797
[plustek_pp] bSetScanModeFlag = 0
[plustek_pp] *** setupBuffers ***
[plustek_pp] Driverbuf(147360 bytes) needed !
[plustek_pp] pColorRunTab = 0x4038c534 - 0x4038bfa8
[plustek_pp] Adjust for 98001 ASIC
[plustek_pp] sb2 = 0x40368008, sb1 = 0x40372be8, Color = 0x40382db8
[plustek_pp] Pro = 0x403883a8, size = 147360
[plustek_pp] *** DETECTION DONE, result: 0 ***
[plustek_pp] ioctl(_PTDRV_ADJUST)
[plustek_pp] Adjusting device 0
[plustek_pp] warmup: -1
[plustek_pp] lampOff: -1
[plustek_pp] lampOffOnEnd: -1
[plustek_pp] ioctl(_PTDRV_GET_CAPABILITES)
[plustek_pp] ioctl(_PTDRV_GET_LENSINFO)
[plustek_pp] Scanner information:
[plustek_pp] Vendor : Plustek
[plustek_pp] Model : 9636T/12000T
[plustek_pp] Asic : 0x81
[plustek_pp] Flags : 0x00000280
[plustek_pp] drvclose()
[plustek_pp] ioctl(_PTDRV_STOP_SCAN)
[plustek_pp] Waiting for Sensor to be back in position
[plustek_pp] - done !
[plustek_pp] ioctl(_PTDRV_CLOSE_DEVICE)
[plustek_pp] *** cleanup buffers ***
[plustek_pp] Putting Scanner (ASIC 98001) into Idle-Mode
[plustek_pp] Lamp-Timer started!
[plustek_pp] ptdrvClose()
[plustek_pp] MiscRestorePort()
[plustek_pp] Releasing parport
[sanei_pp] sanei_pp_release: fd = 0
[plustek_pp] attach: model = >9636T/12000T<
[plustek_pp] sane_get_devices (0xbfff5ed8, 0)
device `plustek_pp:parport0' is a Plustek 9636T/12000T parallel port flatbed scanner
[plustek_pp] sane_exit
[plustek_pp] ptdrvShutdown()
[plustek_pp] cleanup device 0
[plustek_pp] Lamp-Timer stopped!
[plustek_pp] Try to claim the parport
[sanei_pp] sanei_pp_claim: fd = 0
[plustek_pp] Putting Scanner (ASIC 98001) into Idle-Mode
[plustek_pp] Releasing parport
[sanei_pp] sanei_pp_release: fd = 0
[sanei_pp] sanei_pp_close: fd = 0
[sanei_pp] sanei_pp_close: freeing resources
[sanei_pp] pp_close: fd=0
[sanei_pp] pp_close: this is port 'parport0'
[sanei_pp] pp_close: trying to free io port
[sanei_pp] pp_close: marking port as unused
[sanei_pp] sanei_pp_close: finished


In der /etc/sane.d/dll.conf steht folgender Eintrag drinnen:


plustek
plustek_pp

In der /etc/sane.d/plustek_pp.conf habe ich folgende Einträge:


[direct]
device 0x378

#
# leave the default values as specified in /etc/modules.conf
#
option warmup -1
option lOffOnEnd -1
option lampOff -1

# model override switch, mostly for cosmetic changes, if the autodetection
# does not work or could not work correctly
#option mov 7

#
# example for accessing the scanner via libieee1284
#
[direct]
device parport0

#
# example for accessing the scanner via the kernel module
#
#[kernel]
#device /dev/pt_drv

#option warmup -1
#option lOffOnEnd -1
#option lampOff -1


Dennoch läßt sich der Scanner nicht starten. Vor allem Xsane liefert immer wieder "Keine Geräte erreichbar!".
Da ich diese Prozedur jetzt doch mehrmals durchgezogen habe, bin ich ohne jeglichen Rat, wie ich weitermachen kann. Ich hoffe auch hier wieder die Lösung zu finden.

Vergessen hatte ich noch:


ll /dev/pt_drv*
liefert



crw-r--r-- 1 root root 40, 0 2004-11-27 13:18 /dev/pt_drv
crw-r--r-- 1 root root 40, 0 2004-11-27 13:18 /dev/pt_drv0
crw-r--r-- 1 root root 40, 1 2004-11-27 13:18 /dev/pt_drv1
crw-r--r-- 1 root root 40, 2 2004-11-27 13:18 /dev/pt_drv2
crw-r--r-- 1 root root 40, 3 2004-11-27 13:18 /dev/pt_drv3


Und selbstverständlich sind all diese Befehle als Root durchgeführt wurden.
Also es wäre super, wieder den eigenen Fehler, den ich momentan nicht sehe, gezeigt zu bekommen.

Vielen Dank

Andreas

gottfried60
29.11.04, 19:54
vielleicht liegt es an dem (ab Kernel >6.2) nicht mehr enthaltenen Scanner Modul. Ich bekomme meinen Scanner mit 9.1 Kernel 6.4.. auch nicht mehr in Gang . Soll jetzt über libusb gehen, siehe meine Anfrage Scanner Snapscan ..... gottfried60 (http://www.linuxforen.de/forums/showthread.php?t=162288)
war dein Kernel <=6.2 könnte es daran liegen.
gottfried

Eagle
29.11.04, 20:12
Also ich glaube nicht, daß das mit dem Kernel zusammenhängt. Bei mir lief der Scanner (Plustek 12000T) unter Suse 9.1. Und desweiteren, der Scanner-Treiber pt_drv wird ja geladen! Die Lampe schaltet sich beim Systemstart ein und nach 180s wieder aus. Ich mache über die boot.local ein modprobe pt_drv.

Lediglich über xSane läßt sich der Scanner nicht ansprechen. Das mit 9.1 kenne ich, liegt aber daran, daß sich ein paar Sachen geändert hatten und vor allem Suse immer wieder in Sachen Dateienablage so eine Extrawurst fahren muß. Und die Entwickler von sane.org halten sich nun mal an die Standards.

Gruß
Andreas

Eagle
02.12.04, 21:19
Hallo,

also als root funktioniert das Ganze. Xsane läßt sich starten. Unter
dem User jedoch bricht das Ganze ab.

Dazu liefert
export SANE_DEBUG_PLUSTEK_PP=20 ; xsane
folgende Ausgabe mit einem Speicherzugriffsfehler :?:



[sanei_debug] Setting debug level of plustek_pp to 20.
[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 0x378<
[plustek_pp] Decoding device name >0x378<
[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 7<
[plustek_pp] ><
[plustek_pp] >#<
[plustek_pp] ># example for accessing the scanner via libieee1284<
[plustek_pp] >#<
[plustek_pp] >#[direct]<
[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] attach (0x378, 0xbfff8b00, (nil))
[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()
[plustek_pp] open: PtDrvInit failed: 4
[plustek_pp] open failed: -1
[plustek_pp] >device /dev/pt_drv<
[plustek_pp] Decoding device name >/dev/pt_drv<
[plustek_pp] ><
[plustek_pp] >#option warmup -1<
[plustek_pp] >#option lOffOnEnd -1<
[plustek_pp] >#option lampOff -1<
[plustek_pp] attach (/dev/pt_drv, 0xbfff8b00, (nil))
[plustek_pp] Device configuration:
[plustek_pp] device name : >/dev/pt_drv<
[plustek_pp] direct I/O : no
[plustek_pp] warmup : -1s
[plustek_pp] lampOff : -1
[plustek_pp] lampOffOnEnd : yes
[plustek_pp] model override: 0
[plustek_pp] ---------------------
[plustek_pp] drvopen()
[plustek_pp] Scanner information:
[plustek_pp] Vendor : Plustek
[plustek_pp] Model : 9636T/12000T
[plustek_pp] Asic : 0x81
[plustek_pp] Flags : 0x00000280
[plustek_pp] Version: 0x00000000
[plustek_pp] drvclose()
[plustek_pp] attach: model = >9636T/12000T<
[plustek_pp] sane_get_devices (0xbfffabb8, 0)
[plustek_pp] sane_open - /dev/pt_drv
[plustek_pp] Presetting Gamma tables (len=4096)
[plustek_pp] ----------------------------------
Speicherzugriffsfehler


Kann mir jemand erklären, warum der user diesen Fehler bekommt, der Root kann das Programm jedoch laufen lassen.

Grüße
Andreas