Hi,

When you work with Mifare card (and T=CL card) the ATR is emulated and there is nothing strange it is emulated differently by different readers.

See SDI010 Technical Manual at http://www.scmmicro.com/support/pcs_devtools.html  on how SDI010 does it with Mifare

Hope it helps,
Oleg

tscher wrote:
Hi Dr. Rousseau,

thank you very much for your hint. I downloaded and installed your
driver (no errors), removed the "original" SDI010 driver, and startet
everything up. The driver loads nicely, and pcscd shows a response as
soon as I place a card on the reader.

Observation: The ATRs displayed are different, depending on which reader
I place my card.

---- ATR from CardMan 5121 : ---------
Apr 24 13:21:43 wks00041 pcscd:
eventhandler.c:419:EHStatusHandlerThread() Card inserted into OMNIKEY
CardMan 5x21 00 01
Apr 24 13:21:43 wks00041 pcscd: Card ATR: 3B 8F 80 01 80 4F 0C A0 00 00
03 06 03 00 01 00 00 00 00 6A
Apr 24 13:21:43 wks00041 pcscd:
eventhandler.c:350:EHStatusHandlerThread() Card Removed From OMNIKEY
CardMan 5x21 00 01

---- ATR from SDI-010 : ---------
Apr 24 13:22:07 wks00041 pcscd: ifdhandler.c:787:IFDHPowerICC() lun: 1
Apr 24 13:22:07 wks00041 pcscd:
eventhandler.c:419:EHStatusHandlerThread() Card inserted into SCM SDI
010 (608000df) 00 01
Apr 24 13:22:07 wks00041 pcscd: Card ATR: 3B F5 91 00 FF 91 81 71 FE 40
00 41 08 00 00 00 0D
Apr 24 13:22:11 wks00041 pcscd:
eventhandler.c:350:EHStatusHandlerThread() Card Removed From SCM SDI 010
(608000df) 00 01


At this point, I start running into problems. In my application, I call
the following PCSC Api functions (in this order):

SCardEstablishContext() - this returns a valid context
SCardListReaders() - this returns a list with two readers - seems OK
SCardConnect() returns SCARD_S_SUCCESS and a reasonable card handle
SCardStatus() returns SCARD_S_SUCCESS - this seems to be OK too

Now, I send the APDU "0xFF, 0xCA, 0x00, 0x00, 0x00" to retrieve the
serial number of the card. The SCardTransmit() returns SCARD_S_SUCCESS,
but only receives 2 bytes, which are the two status bytes. The status
bytes values are "110" and "0". Does this indicate an Error ?

(When I do this with the Omnikey, I get 6 bytes - 4 bytes UID + 2 status
bytes. The Status bytes are "90" and "0" on an successful operation.)

The same happens when I try to use the "Read Binary" APDU (0xFF 0xB0
.....). Again, I get SCARD_S_SUCCESS but no Data.

So judging on the return values and status bytes, everything seems nice;
but I get no data, except the two status bytes.

Would you have any idea what I am doing wrong here ?

Thanks very much in advance,
best regards

Dieter

Ludovic Rousseau wrote:
  
On 24/04/06, tscher <[EMAIL PROTECTED]> wrote:

    
Good morning,
      
Hello,


    
I am working on integrating mifare card functions into a linux
application software. Last week, I ran into a problem while trying to
connect a SCM Microsystems SDI-010 USB reader to my system. ere´s a
short list of what I am using:

Distribution: Fedora Core 4
Kernel 2.6.15
PcSc-lite Version 1.3.1
SDI010 Driver Version 2.0.1 (from http://www.scmmicro.com)
      
Have you tried my free software CCID driver [1] instead? Your reader
should be supported.

Bye,

[1] http://pcsclite.alioth.debian.org/ccid.html

--
  Dr Ludovic Rousseau

_______________________________________________
Muscle mailing list
[email protected]
http://lists.drizzle.com/mailman/listinfo/muscle


    
_______________________________________________
Muscle mailing list
[email protected]
http://lists.drizzle.com/mailman/listinfo/muscle

  

_______________________________________________
Muscle mailing list
[email protected]
http://lists.drizzle.com/mailman/listinfo/muscle

Reply via email to