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
15
votes
2 answers

Can the Web NFC api be used in Progressive Web Applications?

I need to implement NFC (near field communication) in a PWA (progressive webapplication) Every browser I have tested (Chrome MacOSX, Safari MacOSX, Safari iOS, Chrome for android) does not include the navigator.nfc object in navigator and it seems…
Stan Hurks
  • 1,844
  • 4
  • 14
  • 25
15
votes
2 answers

Creating an NDEF WiFi record using application/vnd.wfa.wsc in Android

As of Android 5.0.0 you can long tap on a WiFi connection and write that connection to a tag ("Write to NFC tag"). You can find the source for that operation here: WriteWifiConfigToNfcDialog.java. The relevant line that takes a WiFi connection and…
henrycjc
  • 663
  • 7
  • 20
15
votes
4 answers

Unable to claim USB interface (Device or resource busy)

I want to use my ACR122U contact-less smart card reader in Ubuntu 14 smarty. So I installed my required packages and drivers. Finally when I want to use the reader I receive the following error: rc@rc-System-Product-Name:~/Desktop/itsme$ sudo…
hamid s
  • 171
  • 1
  • 3
  • 5
15
votes
4 answers

Reading a Mifare tag using Windows Phone 8 NFC?

Does Windows Phone 8 NFC support Mifare Ultralight/Classic based tags? I use this code to access NFC device on Nokia Lumia 920 (code example was taken from NDEF Tag Reader – NFC NDEF Tag Reader) public partial class MainPage :…
A-student
  • 785
  • 1
  • 5
  • 12
14
votes
4 answers

How to prevent NFC tag cloning?

I am making an app using NFC tags and I have to prevent the NFC tag from cloning. I have seen many other NFC tags which when tried to be cloned, shows a pop up message "Cloning is restricted, tag is secured by secret key", I want the same security…
codeRider
  • 685
  • 1
  • 5
  • 14
14
votes
2 answers

Method onNewIntent(intent) not executing in NFC

I am implementing the NFC in android project. I have written the entries which are required in the AndroidManifest.xml and Java code. When any tag come near by device then my app detect the tag then it open the activity but here I am getting NFC Tag…
N Sharma
  • 33,489
  • 95
  • 256
  • 444
14
votes
4 answers

What NFC tags does the Nexus 7 Support? (2012)

I tried the Ultralight C the other day on a friends device, and it wasn't working. I raise these concerns because I know the Mifare Classic tags don't work with Blackberry, and I was trying to find a tag that works on majority of devices. I still…
giovanni645
  • 155
  • 1
  • 1
  • 6
13
votes
1 answer

Android NFC Locks up / Stops Scanning after Repetative Scans

Overview: We have developed an app that allows customers check in using an NFC enabled card with a stationary Nexus S. The app sit ready to read a card, when a card is tapped, the app reads the unique ID for the NFC card. Problem: The challenge we…
user1061045
  • 163
  • 7
13
votes
3 answers

Strange character on Android NDEF record payload

I just started coding with Android NFC, i've successfully read and write NDEF data into mifare classic tag. The problem is when app read the payload from ndef record, it always contain character '*en' at the beginning of the text. I think it is…
Lorensius W. L. T
  • 1,734
  • 4
  • 19
  • 31
13
votes
3 answers

Getting started with Open NFC emulator

I would like to get started with developing NFC apps for android. I have started with android recently and I'm finding it a very interesting platform to develop for. Before I go out and invest in an Android device that has a built in NFC reader and…
nikhil
  • 8,925
  • 21
  • 62
  • 102
13
votes
2 answers

Can NFC in nexus mobile read ordinary RFID tag?

Can NFC in nexus s mobile can read ordinary RFID tags?
Qaiser Mehmood
  • 975
  • 6
  • 21
  • 33
13
votes
2 answers

Can HTML5 access NFC chips on mobile phones

I'm not too familiar with HTML5 so does anyone know if HTML5 will be able to access NFC chips built into mobile devices? Or, can someone suggest another way to do this using some other method? My goal is to produce a cross platform HTML5 web app…
fynnbob
  • 553
  • 1
  • 5
  • 14
13
votes
1 answer

Use my application for NFC payment when not set as default

Hi I'm working on android application for NFC payments. There is an option in Android settings to use an open application instead of the default one. For example when I have default application set to Android Pay and I open my app before the…
Stepan Sanda
  • 2,322
  • 7
  • 31
  • 55
13
votes
4 answers

iOS 11 CoreNFC How To Check if device has NFC Capability?

How does one detect if an iPhone has the ability to use the NFC chip provided by the core NFC framework? I know right now it only works on iPhone 7 and 7 plus but I don't want to hardcode hardware string identifiers as I don't know what devices will…
SolidSnake4444
  • 3,372
  • 6
  • 40
  • 63
13
votes
2 answers

NFC unavailable when camera is open

This is my Torch app: final Camera.Parameters p; Camera camera=Camera.open(); camera.setPreviewTexture(new SurfaceTexture(0)); p =…
CL So
  • 3,647
  • 10
  • 51
  • 95