Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

getting an android phone detected by an NFC reader/writer (Basic NFC)

If I have an NFC reader/writer device, can I get it to detect my NFC enabled android phone, so that I may be able to transfer data from my phone to the device? I have found some links on Stackoverflow related to card emulation but they all say that card emulation is not possible or is too difficult

How to make an android phone act as Contactless smart card?
NFC card emulation Android
Can an Android NFC phone act as an NFC tag?
NFC - p2p mode scenario
NFC Peer2Peer Mode - Android Beam - ISO 18092
Galaxy Nexus 4.1.1 and ISO14443 reader

But a pdf document I found online says

Card emulation mode is based on ISO standards ISO 14443-A and ISO 14443-B, which are endorsed by the NFC Forum.

Moreover, it further says that P2P mode is also endorsed by the NFC forum, which, if I understood it correctly, is also like one phone working in reader emulation mode while the other working in card emulation mode

So if I have an NFC enabled phone, and USB reader/write, such as, say, THIS ONE, can I get it to detect my phone as an NFC device and transfer some data from my phone to the reader/writer?

---EDIT---
Note: I am not talking about getting the phone to work as a secure payment system or anything like that, my question is more basic: If I send out some data (say a string "ABC" or some number 1234) from my phone using NFC, can I get the external reader/writer to detect it?

like image 888
user13267 Avatar asked Nov 13 '22 00:11

user13267


1 Answers

An NFC device running in P2P mode can receive data from an Android phone using Android Beam.

The NFC device has to implement an "NFC Forum Default SNEP Server", which is the equivalent of an Android Beam receiverAndroid Beam receiver.

There are various libraries and tools to do this, the one I can talk about is the Python based NFCPy, it comes with a beam.py example program that does it out of the box.

like image 97
Stephen Tiedemann Avatar answered Nov 15 '22 13:11

Stephen Tiedemann