[gnucash-de] Probleme mit Towitoko Chipdrive - genauere
Informationen
Bernhard Kausler
bernhardkausler at compuserve.de
Fre Mar 5 13:29:11 CST 2004
Hallo!
Hier sind jetzt meine genauen Konfigurationen. Danke schon mal an alle,
die mir helfen bzw. helfen werden ;)
Mittlerweile haben mich schon andere Leute kontaktiert, die ähnliche
Probleme haben. Langsam bekomme ich den Ehrgeiz, ein einfaches
verständliches HOWTO für Computer-Laien zu entwickeln, die einfach nur
Homebanking unter Linux möchten ohne sich mit den technischen Details
befassen zu müssen. (Vielleicht auch einen besseren Konf.-Assistenten
entwickeln...)
So, zu Beginn, folgende Module sind geladen:
Module Size Used by
pl2303 15620 0
usbserial 26092 1 pl2303
sg 30880 0
sd_mod 11936 0
yenta_socket 14464 0
pcmcia_core 54208 1 yenta_socket
nvidia 1703212 12
"* USB readers: Linux kernel version 2.4.12 or greater with PL2303 USB
serial driver enabled is needed.
See http://www.linux-usb.org/USB-guide/book1.html
Note that PL2303 support is still in experimental stage!
Also note that pl2303.c drivers from kernel versions previous to 2.4.12
will surely not work with this driver and will probably hang your
machine."
So stehst in der README zum towitoko Treiber 2.0.7 von Carlos Prados.
Meine Kernel-Version ist der gepachtte Gentoo-Kernel 2.6.3. Wie man
sieht, ist der erforderliche Treiber geladen, allerdings "used by 0"
obwohl zu dem Zeitpunkt mein Lesegerät eingesteckt ist.
Mein Leser wird folgendermaßen als USB-Gerät erkannt:
SPRx32 USB Smart Card Reader
Hersteller: SCM Microsystems Inc.
Seriennummer: 02001991
Klasse 0 (Schnittstelle)
Unterklasse 0
Protokoll 0
USB-Version 1.16
Anbieter-Kennung 0x4e6 (Shuttle Technology Inc.)
Produkt-Kennung 0xe003
Revision 4.21
Geschwindigkeit 12 Mbit/s
Kanäle 0
Max. Paketgröße 0
Soweit scheint alles in Ordnung zu sein.
Mein Notebook besitzt drei USB-Anschlüsse. Es werden allerdins 4
UHCI-Kontroller erkannt. Der vierte ist wahrscheinlich der integrierte
SD-Kartenleser. Das hab ich allerdins noch nicht ausprobiert.
So ich stecke jetzt mal einen Leser an alle drei Anschlüsse an. Folgende
Messages druckt dabei mein system-logger:
Mar 5 19:39:32 nb-bdkausle usb 3-1: new full speed USB device using
address 6
Mar 5 19:39:32 nb-bdkausle usb.agent[5863]: ... no modules for USB
product 4e6/e003/415
Mar 5 19:39:33 nb-bdkausle usb 3-1: USB disconnect, address 6
Mar 5 19:39:38 nb-bdkausle usb 2-1: new full speed USB device using
address 3
Mar 5 19:39:39 nb-bdkausle usb.agent[5923]: ... no modules for USB
product 4e6/e003/415
Mar 5 19:39:39 nb-bdkausle usb 2-1: USB disconnect, address 3
Mar 5 19:39:46 nb-bdkausle usb 4-1: new full speed USB device using
address 5
Mar 5 19:39:46 nb-bdkausle usb.agent[5977]: ... no modules for USB
product 4e6/e003/415
Stecke ich den Leser immer wieder am selben Anschluss ein und aus, zählt
die "address" jeweils um eins weiter und die (anscheinend) Prozessnummer
(z.B. [5977]) wird erhöht.
Wie man sieht, erkennt der Kernel nicht, dass er hier doch jetzt
bitteschön den "pl2303" Treiber einsetzen soll! Bloß warum nicht??
Meine libchipcard Konfigurationsdateien sehen folgendermaßen aus:
chipcardc.conf:
timeout="750"
maxmsg="20"
commands="/usr/share/libchipcard/commands"
[service/1]
type="local"
address="/tmp/chipcardd-socket"
chipcardd.conf:
type="local"
address="/tmp/chipcardd-socket"
timeout="750"
maxmsg="20"
enabled="1"
[reader/1]
readertype="towitoko"
drivertype="pcsc" #hier hab ich auch schon
ctapi ausprobiert, ändert auch nichts
driver="/usr/lib/libtowitoko.so"
name="towitoko"
port="USB1" #hier hab ich schon alles mögliche und unmögliche probiert
flags= #mein Leser hat ja eigentlich ein Pinpad, das
soll aber erst in der kommenden Version 1.0 der libchipcard unterstützt
werde. Also erstmal weglassen.
So, jetzt starte ich mal den pcscd mit ein paar Debuging-Ausgaben...
bash-2.05b# pcscd -d stdout
pcscdaemon.c:258 main: debug messages to stdout
pcscdaemon.c:395 main: warning: no reader.conf found
pcscdaemon.c:413 main: pcsc-lite daemon ready.
Gut keine Fehlermeldung. Das Ding ist im Standby. Die reader.conf ist
nur bei seriellen Lesegeräten erforderlich.
Zitat aus der README zu pcsc-lite:
"USB users do not need to use the /etc/reader.conf. pcscd will give
a warning that the file does not exist or contain anything useful."
Mit einer passenden reader.conf gehts allerdins auch nicht.
So, jetz noch den libchipcardd starten.
bash-2.05b# chipcardd
Sehr schön, ebenfalls keine Fehlermeldung.
Aber oh! Was macht der pcscd da!!
winscard_msg.c:263 SHMProcessEvents: Common channel packet arrival
winscard.c:77 SCardEstablishContext: Establishing Context: 17024034
winscard.c:77 SCardEstablishContext: Establishing Context: 16977293
winscard.c:154 SCardConnect: Attempting Connect to towitoko
winscard.c:160 SCardConnect: Reader towitoko Not Found
winscard.c:154 SCardConnect: Attempting Connect to towitoko
.
.
.
winscard.c:154 SCardConnect: Attempting Connect to towitoko
winscard.c:160 SCardConnect: Reader towitoko Not Found
winscard.c:88 SCardReleaseContext: Releasing Context: 17024034
winscard.c:88 SCardReleaseContext: Releasing Context: 16977293
pcscdaemon.c:141 SVCServiceRun: Client 8 has disappeared.
hbcicard info fordert micht gleichzeitig auf:
bash-2.05b# hbcicard info
Kontaktiere Karte.
Bitten legen Sie Ihre Karte in einen Leser ein
Keine Karte innerhalb einiger Sekunden eingelegt, abgebrochen.
4:2004/03/05 20-10-08:hbcicard(7240):libchipcard.c: 523: Some requests
still enlisted
Dabei hab ich doch wie ein Wahnsinniger alle möglichen Karten in das
Gerät geschoben!
Schließlich hab ich den chipcardd-Prozess getötet.
Hier noch die Ausgaben des system-loggers zu diesen Vorgang:
Mar 5 20:07:06 nb-bdkausle chipcardd[7233]: chipcardd.c: 717:
Chipcardd v0.9.1.0 (STABLE) started.
Mar 5 20:07:06 nb-bdkausle chipcardd[7235]: chipcardd.c: 950:
Initializing daemon.
Mar 5 20:07:06 nb-bdkausle chipcardd[7234]: chipcardd.c: 780: Nanny
now supervising daemon 7235
Mar 5 20:07:06 nb-bdkausle chipcardd[7235]: ctcore.c: 1141: Checking
for PC/SC readers
Mar 5 20:07:06 nb-bdkausle chipcardd[7235]: ctcore.c: 244: Added
reader "towitoko" (id=2771)
Mar 5 20:07:07 nb-bdkausle chipcardd[7235]: ctdriver_pcsc.c: 241:
Could not connect (80100009)
.
.
.
Mar 5 20:07:20 nb-bdkausle chipcardd[7235]: ctdriver_pcsc.c: 241:
Could not connect (80100009)
Mar 5 20:07:21 nb-bdkausle chipcardd[7235]: ctdriver_pcsc.c: 241:
Could not connect (80100009)
Mar 5 20:07:21 nb-bdkausle chipcardd[7235]: chipcardd.c: 440: Daemon
got a termination signal
Mar 5 20:07:21 nb-bdkausle chipcardd[7235]: ctdriver_pcsc.c: 241:
Could not connect (80100009)
Mar 5 20:07:21 nb-bdkausle chipcardd[7234]: chipcardd.c: 444: Nanny
got a termination signal, will terminate child.
Mar 5 20:07:21 nb-bdkausle chipcardd[7234]: chipcardd.c: 814:
Terminating daemon.
Mar 5 20:07:21 nb-bdkausle chipcardd[7234]: chipcardd.c: 463: Nanny
got a child signal
Mar 5 20:07:21 nb-bdkausle chipcardd[7234]: chipcardd.c: 843: Daemon
terminated, exiting.
So, ich hoffe das reicht. Mehr relevante Informationen fallen mir jetzt
auch nicht mehr ein.
Hoffentlich kann mir jemand helfen. Ich bin mit meinem Latein am Ende.
Bernhard