Apple Expands NFC Tag Functionality on iPhone in iOS 13
Updated Sept 2021: Read the latest article, iPhone 13 – Using NFC and NFC Tags with iOS 15 in 2021
It’s June again which means another Apple WWDC event, where they announce changes to their software products with iOS 13. Over the last several years Apple has been increasing NFC functionality in the iPhone. We have written several articles about this several times in the past, as Apple’s adoption of NFC has been instrumental to the awareness and growth of NFC and Connected Things. Apple started with support for NFC-based payments for Apple Pay, and each year the functionality expanded including recent support for reading NFC tags without an app. This year Apple is again expanding NFC capability with iOS 13. The details of this will come out throughout this week as the WWDC sessions unfold; the primary session is on Friday. We will update this post with the latest information, so check back later in the week.
Previously NFC on the iPhone had several restrictions:
- Only support for reading NFC tags, not writing
- Only support for reading NDEF formatted data
- No access to the NFC chip UID
- An app was required to use NFC tags on iPhone models earlier than XS and XR
- NFC tag reading only available on iPhone 7 models and newer
- No access to specific NFC chip protocols; can’s directly issue APDU commands
- No access to other NFC modes; peer-peer, tag emulation
- No access to special NFC chip features; locking, mirroring, counters, signatures…
These restrictions had several negative effects on the usage of NFC with the iPhone; which constrained the growth of Connected Things. Here’s why:
- Requiring users to download an app goes against one of the core premises of Connected Things; that it is easier to use your phone as a magic wand that to type into search
- Without access to the UID, it is more difficult and expensive to implement a secure tag to be used for anti-counterfeiting
- No ability to interact with transportation, ticketing, identification systems (these systems tend to not use NDEF)
- General awareness; by limiting NFC functionality to newer iPhone models it has left a significant set of consumers without access to the technology
As Apple began to add more NFC functionality to the iPhone, the NFC and Connected Things market has seen accelerated growth in tandem.
Apple is expanding NFC functionality even more with iOS 13. In the keynote two people were shown exchanging music via NFC by touching their phones together. Google and Samsung showcased this years ago with Android Beam; something that has recently been removed and we lauded. Funny it’s now back with Apple. Also, the attendee credentials to WWDC used NFC for tickets on the iPhone; previous years a barcode was used. This shows Apple’s commitment to using NFC across their product ecosystem as a baseline technology.
Here is what we know Apple is adding to iOS 13 for NFC; we will update this as information comes in:
- Support for iPhone 7 models and newer
- Background NFC tag reading is native without an app; NDEF formatted only. It’s not clear what models of iPhone support native background NFC tag reading. If nothing has changed then its the XS and XR and newer.
- Adding support for writing NDEF messages. This is sort of interesting, although most consumers do not write their own tags. This is implemented with the NFCNDEFTag protocol, which looks to be a generic protocol for handling all NDEF functionality across the different tag types. This is only supported via 3rd party app; there are no native NFC tag writing apps (makes sense).
- Ability to permanently lock an NFC tag that has been encoded with an NDEF message; this is handled with a writeLock() function
- Direct access to issue NFC commands for the protocols FeliCa, ISO 15693 (SLI-X), ISO 7816 (Type 2, NTAG…) and Mifare (Ultralight, Plus, DESFire). For all practical purposes this is the full range of NFC protocols for NFC tags deployed today. This gives direct access to the commands on the NFC chips for more advanced functionality
- Access to the NFC chip UID is now possible, although a bit clunky. If you are just reading NDEF then you can use the NFCNDEFTag protocol, but if you want the UID you must you a specific chip protocol. Note they call it a “unique hardware identifier of the tag”.
- All other NFC chip special features are now available (mirroring, counters, auth…); again, this is handled via issuing direct commands to the NFC chip based on protocol.
- Additional enhancements to Apple Pay for NFC; we know the new Apple Card includes and NFC tag in the box (read more)
- Ability to launch a Shortcut via an NFC tag; shortcuts is also part of iOS now and not a separate app. This seems to only work for pre-configured NFC tags; similar to how Samsung TechTiles worked,
- Ability to read passports (read more)
Here is what we know is not supported and/or not being added:
- Other modes of NFC including host card emulation (HCE) are not supported. This is not too surprising as it would allow apps to create payment related services which potentially would compete with Apple Pay
- No direct access to the NFC secure element
- Payment cards are not supported. No surprise here; Apple wants to make sure nobody can build a system to compete with Apple Pay
- Not a lot of support for Mifare Classic. Good; this chip is terrible, don’t use it.
- It seems Apple didn’t make any changes to background NFC tag reading. An app is not needed to read NFC tag on the XS and XR and newer; earlier models still need an app.
- No support for peer-peer mode in Core NFC. The demo in the keynote showed transferring movies and music from two phone touching. Sound familiar? Cough, cough.. Android Beam. (credit)
Overall this is great for the NFC and Connected Things markets. GoToTags started in 2011 with this exact vision, that physical things would become digital engagement points to act as a bridge between the digital and physical. Now we are seeing that vision come to reality and the market to significantly grow.
The full WWDC Core NFC Session video can be viewed here: