Questions tagged [nfc]

Near Field Communication (NFC) is a set of short-range communication protocols that enables electronic devices to exchange data within short distances of roughly 10 cm or less. Can be used with Tags [mifare] [iso-15693] [ndef] [nfc-p2p], etc., as some questions are very specific to the NFC Tag type.

Near field communication (NFC) builds on the RFID standards that have bi-directional contactless communications: ISO/IEC 14443, ISO/IEC 18092 and JIS 6319-4 (FeliCa). Nowadays, almost all smartphone manufacturers (and some tablet manufacturers) have added support for this technology in their high-end devices. It allows users to share data through NFC tags and NFC peer-to-peer communication between 2 devices and, in some regions, to use their device as a contactless payment card.

Tag Types & Modes of operation

In addition to the signaling technologies used by near field communication technology, four tag types and two sets of active/passive roles exist. Tag types refer to the speed and compatibility between an NFC tag and NFC readers, and the roles define how active and passive devices respond during a NFC communication. Most often a URL will be embedded in a NFC tag. URLs take up only a small amount of memory, lowering the production cost of the NFC tags since many are placed on posters or other items that are thrown away later on. NFC tags can, however, hold nearly any type of information, though more memory costs more money.

Tag Types:

  • Type 1: Type 1 NFC tags have data collision protection and can be set to either read and rewrite capable or read-only. Read-only programming prevents the information from being changed or written over once embedded in the tag. Type 1 tags have 96 bytes of memory, enough for a URL or a small amount of data. The tag’s memory can expand to a larger size as needed. The low price makes type 1 tags to ideal choice for most near field communication needs.
  • Type 2: Type 2 NFC tags also have data collision protection and can be rewriteable or read-only. They start at 48 bytes of memory, half of what the type 1 tags can hold, but can expand to be as large as a type 1 tag. Communication speeds are the same for tag types 1 and 2.
  • Type 3: Also equipped with data collision protection, NFC tag type 3 has larger memory and faster speeds than tag types 1 and 2. This tag is part of the FeliCa system. The bigger size lets it hold more complex codes beyond URLs, but it costs more to create each tag.
  • Type 4: Type 4 NFC tags can use either NFC-A or NFC-B communication and have data collision protection. The tag is set as either rewritable or read-only when manufactured and this setting cannot be changed by the user, unlike the other NFC tags which can be altered at a later date. The tag holds 32 Kbytes in memory and has faster speeds than the other tags.
  • Type 5: Type 5 NFC tags use NFC-V communication and offer support for offers support for the ISO/IEC 15693 specification. Type 5 Tags are NFC-RFID crossover technology that gives longer range ‘vicinity’ communication with dedicated reader hardware and also allows ‘proximity’ interaction with a NFC readers.

In addition to the five tag types, four modes of operation exist. The modes – reader/writer, card, initiator, and target – describe what role a device or tag is playing in an NFC transaction. Devices can switch between more than one role depending on the transaction being processed.

NFC Basic Roles:

  • Reader/Writer and Card – Typically a transaction occurs between an active device that sends out signals and receives information and a passive device that simply sends the information and does not receive anything other than instructions on what data to reply with. The reader/writer is the smartphone serving as the active device and the card is the NFC tag serving as the passive device. Smartphones can take on the role of card, however, when they act as a credit card for contactless payments. Then the credit card reader becomes the reader/writer and the smartphone serves as the passive card device.
  • Initiator and Target – NFC technology has a major advantage over other technologies such as RFID. NFC can create peer-to-peer sharing between two phones. In this case, the phone making the connection or sending an invitation is the initiator and the phone receiving the instructions and sending back information is the target. Yet both phones can serve both roles by switching back and forth depending on what transmission is being sent, though this requires a higher level of technology.

The Nokia C7-00 was the first smartphone with NFC shortly followed by the Google Nexus S. Any two NFC-enabled Android or Windows (Phone) 8 devices can share data by touching with each other, such as web page URLs, files and even apps. The first Android OS that supported NFC was 2.3.3. Android 4.0 made NFC more powerful with the so-called Android Beam functionality. Android NFC devices often also support the related RFID technology ISO/IEC 15693. Many devices also support the proprietary MIFARE protocol.

In addition to the commercial products, the academic world seems to be interested in this technology as well. More and more literature is published in areas like home care, mobile sensing and game supply.

The is the first Apple hardware to offer NFC, limited reading support was available in iOS 11 with more complete reading and writing support available in iOS 13

4425 questions
124
votes
14 answers

Can an Android NFC phone act as an NFC tag?

From what I have understood so far, an NFC phone will act as an NFC reader which will read data from an NFC tag. Now my question is, can we switch this around? Can we make an Android NFC phone behave as the tag which an NFC reader will get data…
Joshua Partogi
  • 16,167
  • 14
  • 53
  • 75
96
votes
7 answers

Reading NFC Tags with iPhone 6 / iOS 8

Now that Apple just announced the iPhone 6 will have an NFC chip, does anyone know if iOS 8 will enable reading/detecting RFID tags for the iPhone 6 device? Anyone have any details to share on this?
Bryan C
  • 1,594
  • 4
  • 16
  • 30
56
votes
4 answers

How to get NFC working on Android using Qt 5.6

I'm trying to read NFC tags on my Android phone using the NFC module of Qt. According to this page, Qt will support NFC on Android starting from version 5.6. This version hasn't been released yet, so I built it from source, following the…
Pat
  • 1,726
  • 11
  • 18
51
votes
7 answers

Reading RFID with Android phones

I did enough research on reading RFID tags using Android phones(smart phones). My understanding of this is that for NFC-enabled smart phones (Nexus S) it is possible to read RFID tags, but there are restrictions. For non-NFC-enabled Androids we…
varunrao321
  • 925
  • 2
  • 10
  • 18
44
votes
1 answer

Serials on NFC Tags - truly unique? cloneable?

So are NFC tags really UNIQUE from each other, at least in their SERIAL NUMBER? And can we rely on the fact that no 2 NFC tags can have the same serial number? I'm highly skeptical about this as there are (and will be more) NFC tags out there and I…
BrownChiLD
  • 3,545
  • 9
  • 43
  • 61
42
votes
4 answers

Emulate Mifare card with Android 4.4

I have researched Mifare and other card emulation I have very good knowledge in programming (not Android, but C/C++). I have proxmark and I have made multiple emulation codes for proxmark, so I know how the cards communicate. I don't understand…
user2570174
  • 601
  • 1
  • 6
  • 9
39
votes
1 answer

Android: Authenticating with NXP MiFare Ultralight C

I have been trying for more than a week to make an Android phone authenticate with a Mifare Ultralight C. I have confirmed I can write to the tag (by writing to an unsecured memory page and then reading what I wrote). I can also write to the key…
Matt Redmond
  • 726
  • 7
  • 12
36
votes
5 answers

How to check whether NFC is enabled or not in android?

How can i check whether NFC is enabled or not programmatically? Is there any way to enable the NFC on the device from my program? Please help me
Santhosh
  • 4,956
  • 12
  • 62
  • 90
33
votes
6 answers

Bluetooth pairing without user confirmation

Can I pair two devices over Bluetooth without a need to confirm this in user interface, accept to pair this devices. Can I exchange some extra data over, for example NFC, and then safely pair those two devices over Bluetooth without any extra user…
michael
  • 3,250
  • 10
  • 43
  • 58
33
votes
1 answer

NFC tag emulation for Android virtual device (AVD)

Is there any way to develop NFC tag reading/writing applications without an NFC enabled phone? Is there a way to create an AVD which has NFC enabled? I have searched and found Open NFC exists, but I cannot find much information about it now. Is it…
Zveratko
  • 2,663
  • 6
  • 35
  • 64
33
votes
3 answers

How to launch my app via NFC tag?

I'm currently working on porting an app to UWP. The app has a page with a "Write to NFC" button. After the user taps it, it waits for an NFC tag and writes a LaunchApp:WriteTag binary message. What worked fine under WP8.1, doesn't work at all under…
sibbl
  • 3,203
  • 26
  • 38
31
votes
2 answers

Reading Visa payWave Credit Card Details via NFC on Android

Is it possible to read the credit card details (name, number, expiry) of a Visa payWave card via NFC on a Samsung Galaxy Nexus? What about other NFC-enabled credit cards? If it's not possible, is there some way to retrieve a unique ID from the…
user1233983
  • 333
  • 1
  • 4
  • 6
31
votes
5 answers

Android: Changing NFC settings (on/off) programmatically

I trying to change NFC settings (on/off) programmatically on Android 2.3.3. On the phone, under the "Wireless & network settings", you can choose to set whether you want to use NFC to read and exchange tags or not. So I would like to toggle this…
dosa
  • 635
  • 2
  • 6
  • 11
31
votes
5 answers

Share Wifi credentials via NFC tag without special apps

I am looking for a way to create a NFC-tag that shares the wifi credentials of my network without my guests having to have any special NFC apps on their phone (other than whats coming with the phone). I have been looking at apps and services like…
Christian L
  • 357
  • 1
  • 4
  • 5
27
votes
2 answers

Android application to mimic a physical RFID card

Is it possible for an Android application to send a previously stored RFID card ID to a NFC reader? The aim would be to use an Android device to enable access to a room instead of a physical RFID card. Having read a lot of other threads about…
user1860579
  • 303
  • 1
  • 5
  • 9
1
2 3
99 100