ISO/IEC 14443 allows for more than one card to be detected. One is then put into hibernation while the other is accessed. Then swap over if that is what you want to do. If you try to close one card, it is very possible that you will turn off the activating field and both will be closed!

Whether the SCR-331 supports this, I do not know. The same for Mifare: I do not know if it supports the suspend and wakeup commands. Nor do I know if the software that you are using supports it.

There is a hardware issue: two cards very close together do affect one another, and sometimes both will work, sometimes one will work, sometimes neither will work.

Peter

Arthur Chiu wrote:

Would it be possible for a contactless reader (I am using SCR331-DI)
to detect 2 cards at once? Meaning, I place 2 mifare cards on top of
the wireless reader, establish connection with one of them, do some
data transfer, cloes connection and connect the other one. Would this
be possible? This is what I am doing right now:

while((Reader[0].dwEventState & SCARD_STATE_PRESENT) !=
SCARD_STATE_PRESENT) { ret = SCardGetStatusChange(ContextHandle, MINTIMEOUT, Reader, 1); }

I first use a while loop to detect that a card has been inserted (contactless). Then I use this:

ret = SCardConnect(ContextHandle,Readername, SCARD_SHARE_SHARED, SCARD_PROTOCOL_T0 | SCARD_PROTOCOL_T1, &CardHandle, &Protocol);

to establish a connection with the card before I begin transaction
and data transfer. So, if I put two cards on top of the reader, what
would be different or needed in order to detect both? I tried running
pcscd in foreground, but after it detects the insertion of the first
card, and I put the second card on top, there is no reaction. What
can I do? Or it is a limitation of the hardware that I can't do this?


Thanks a lot for all help in advance. :)

Cheers,

Arthur



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

Reply via email to