Question

I have an NFC receiver / sender (depends on how configured)...I want to use it as an NFC receiver and when the customer holds his phone to it (I am going for Android for now), It needs to get some sort of response.

As Android has 'Android Beam', which detects when 2 phones are near each other, I would have expected for the NFC reader to pick up at least SOMETHING. But it doesn't, when I hold my phone to the antenna, no data is received by the NFC receiver.

I have been Googling a lot for examples, but what I find is how to implement NFC communications in Android. But ideally, I don't want to implement an app. I just needs some sort of unique ID from the device to be send out to the NFC receiver.

Does anyone have an idea how come I do not receive anything, while when I put 2 Android phones together, Android beam works perfectly?

Was it helpful?

Solution

By default, an Android device will cyclically check if there is another peer-to-peer device, an NFC tag (or actually any contactless transponder with a supported protocol) or another ISO 14443 reader (this will typically only be available on some 4.4 devices and on devices with activated secure element) available.

So, if your NFC reader is active in peer-to-peer mode or card emulation mode, it should pick up some communication:

  1. In peer-to-peer mode, the Android device will at least activate the NFC lick up to the NFC Forum LLCP protocol.
  2. In reader/writer mode (i.e. when your NFC device is in card emulation mode), the Android device should try to activate the emulated card and check for availability of NDEF data.

Nevertheless, none of this will provide you any (somewhat) unique identification of the device unless you have an app providing this functionality on the device. In reader/writer mode, an Android device will not reveal any data usable for identification (you may be able to identify the NFC chipset and the Android version though). In peer-to-peer mode, an Android device does not reveal any useful data either. The ID's that are exchanged during activation of the communication channel must be random as per the NFC standard (ISO/IEC 18092). Still, as with R/W mode, you may be able to identify the NFC chipset, the Android version and for some devices even the device manufacturer.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top