Reputation: 1183
In question [1] I read that NFC tags do not have to be in NDEF format if you want to use them under Android. I would like to perform this under Win 8.1 in .Net. My situation is like this:
I have an RFID card Mifare Classic 1K with an ID stored in it. (recorded by manufacturer) This ID is read by our attendance-system by usual RFID reader (for example PROMAG MFR120 by Gigatek) We do not write anything to the card, we just need to read the ID. But we need to read it also by NFC reader and here is the problem.
Our cards Mifare Classic 1K are not formatted in NDEF format so they are invisible for NFC reader by Broadcom. NFC reader only knows that a card has arrived / departed (.NET events DeviceArrived, DeviceDeparted are fired) but no message arrives, because our NFC reader cannot communicate with Mifare card in current state. At least Broadcom reader cannot. NXP reader should be compatible, but I don't have such a device. Am I right?
Therefore I would like to read the card manually on a low level, not by .NET class Proximity which is probably designed only for NDEF formated cards. I expect that if I read the card manually, I could read all data in binary, byte or string format and "parse" it my way.
Is this possible in .NET or do I have to reformat Mifare card to NDEF? I am afraid that it will stop working with current readers.
Thanks for comments and ides in advance ...
PS: My equipment is Lenovo ThinkPad 10 + Win 8.1 + Broadcom NFC reader integrated in the tablet.
[1] Question about NDEF under Android: Do NFC tags have to be NDEF formated?
Upvotes: 0
Views: 2086
Reputation: 526
One thing to understand about reading tags with the proximity API in .net... the manufacturer UID is not available at all. Broadcom, or NXP, NDEF or not, you cannot access the tag UID. To solve the problem myself, I ended up adding the tag UID to an NDEF record when issuing the card to be able to access it using the proximity api in windows 8.x and Windows Phone.
Also, the internal readers on devices like the Lenovo ThinkPad, are only accessible through the proximity api, and there's no facility for low level nfc tasks (that I'm aware of).
If you do format your tags with an NDEF message, I don't think you'll have issues with your current readers, since you are only reading the manufacturer UID, that will not be broken by adding an Ndef Message to a Mifare 1K, or any other tag for that matter.
You are correct in your assumption that a Broadcom chipset will not read the contents of a Mifare 1K. You can still get the UID though.
Hope this information helps.
Upvotes: 1