I am implementing an Android application for NFC devices. I am using a Ndef, NfcV and NdefFormatable tag with two different Android devices: a Samsung Galaxy SII plus and a Samsung Galaxy SII each running android version 4.1.2. the SII plus can see the tag, read it and write it without problem, but the SIII can't see the Ndef technology, it only sees the NfcV technology. Any idea why? The problem occurs on any marketed application as on mine and regardless of the tag having an actual NDEF message or not.
-
Can you determine the chip in the tag with an app such as TagInfo? That may provide a clue to what is going on. – NFC guy Mar 27 '13 at 06:11
-
Tag info shows Type V for the RF technology, tag type EM4x3x with target technology classes : NfcV and Ndef. The NDEF tag is of unknown type. – Jinbonka Mar 27 '13 at 07:16
-
The difference seems similar to what I have observed with Galaxy Nexus and Nexus 4 phones. The Nexus 4 contains a newer NFC software stack, which supports NDEF on different kinds of NfcV tags, while Galaxy Nexus supports only ICODE NfcV tags. The Galaxy S3 has the same NFC software stack as the Galaxy Nexus. It looks like the S2+ has the same one as the Nexus 4 (which makes sense w.r.t. the dates these devices appeared on the market). – NFC guy Mar 29 '13 at 14:02
-
I see, does a list of the different software stacks for the different devices exist ? – Jinbonka Apr 02 '13 at 06:16
1 Answers
The NfcV Tags aren't official NFC Forum tags. Therefore there is no standardized way how an NDEF message has to be stored on the tag. Also not all NfcV tags work in similar ways. Depending on the specific tag you have to send different commands to the tag if you want to low-level read or write the tag. The memory architecture between different tags differs as well.
In practice NFC communication libraries deal with the problem by having a list of some common NfcV tags along with instructions how to read/write to them. This list differs between different phones and android version.
This incompatibility will not go away in the short term. NfcV may become part of the NFC Forum standard, but that does not help you out now. There are two ways how to deal with this problem:
Don't use NfcV if you need a tag type that can reliable exchange data between all NFC devices. NFC Forum Type1 to Type4 are made for this. NfcV reading/writing capabilites are not even guaranteed to be supported.
If you are tied to this specific NFC tag due to project reasons, you can ignore the built-in NDEF reading code and do it on your own. For this you need the tag datasheet and send raw commands using tag.transceive. It's a bit more work, but it is not that hard.

- 83,631
- 31
- 151
- 221
-
Ty for your answer, do you know if there exist such a list of phones and supported libraries ? – Jinbonka Mar 27 '13 at 11:18
-
Now Nexus4 is providing the support for the NDEF storage on NFC-V tag – Deepak Goel May 22 '13 at 12:43