96

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?

jscs
  • 62,161
  • 12
  • 145
  • 186
Bryan C
  • 1,594
  • 4
  • 16
  • 30

7 Answers7

169

The iPhone6/6s/6+ are NOT designed to read passive NFC tags (aka Discovery Mode). There's a lot of misinformation on this topic, so I thought to provide some tangible info for developers to consider. The lack of NFC tag read support is not because of software but because of hardware. To understand why, you need to understand how NFC works. NFC works by way of Load Modulation. That means that the interrogator (PCD) emits a carrier magnetic field that energizes the passive target (PICC). With the potential generated by this carrier field, the target then is able to demodulate data coming from the interrogator and respond by modulating data over top of this very same field. The key here is that the target never creates a field of its own.

If you look at the iPhone6 teardown and parts list you will see the presence of a very small NFC loop antenna as well as the use of the AS3923 booster IC. This design was intended for custom microSD or SIM cards to enable mobile phones of old to do payments. This is the type of application where the mobile phone presents a Card Emulated credential to a high power contactless POS terminal. The POS terminal acts as the reader, energizing the iPhone6 with help from the AS3923 chip. The AS3923 block diagram clearly shows how the RX and TX modulation is boosted from a signal presented by a reader device. In other words the iPhone6 is not meant to provide a field, only to react to one. That's why it's design is only meant for NFC Card Emulation and perhaps Peer-2-Peer, but definitely not tag Discovery.

AS3923 booster IC

There are some alternatives to achieving tag Discovery with an iPhone6 using HW accessories. I talk about these integrations and how developers can architect solutions in this blog post. Our low power reader designs open interesting opportunities for mobile engagement that few developers are thinking about.

Disclosure: I'm the founder of Flomio, Inc., a TechStars company that delivers proximity ID hardware, software, and services for applications ranging from access control to payments.

Update: This rumor, if true, would open up the possibility for the iPhone to practically support NFC tag Discovery mode. An all glass design would not interfere with the NFC antenna as does the metal back of the current iPhone. We've attempted this design approach --albeit with cheaper materials-- on some of our custom reader designs with success so looking forward to this improvement.

Update: iOS11 has announced support for "NFC reader mode" for iPhone7/7+. Details here. API only supports reading NDEF messages (no ISO7816 APDUs) while an app is in the foreground (no background detection). Due out in the Fall, 2017... check the screenshot from WWDC keynote:

enter image description here

grundyoso
  • 2,319
  • 1
  • 13
  • 13
  • 2
    I'm not a hardware guy, but is there a chance the iPhone teardown didn't show everything? Is this the final analysis? Impossible to read passive NFC tags? – Salaryman Nov 01 '14 at 20:40
  • 3
    I've designed several NFC readers and based on what I've seen from the teardown, studying the layout, and observing how the iPhone6 behaves over NFC, that is my opinion. I haven't physically dissembled an iPhone6 myself, so it's not out of the cone of possibility that there's an air wound inductor hiding somewhere with traces circumventing the AS3923. My main point is this would be unconventional and perform poorly at reading tags at best. – grundyoso Nov 04 '14 at 04:00
  • @grundyoso If only your company could put together a decent SDK out, it would be awesome. Any updates on the Flomio SDK? Still restricted to the spend-$1200+ club? – Dan1one May 11 '15 at 04:06
  • @Dan1one, we're still working on it. Our beta users have found bugs that we're still fixing so the $1200+ restriction is really just to keep our efforts focused. Once we're happy with the quality we will be sending the Flomio SDK to all our customers. Included will be a Cordova plugin that will make web solutions much easier to build. – grundyoso May 12 '15 at 01:54
  • Can you do a similar analysis for the iPhone 6S? – Randomblue Oct 18 '15 at 22:29
  • 1
    @Randomblue I reviewed the teardown on iFixIt when the 6S came out and the booster chip and small antenna design remained. Our [HW accessories](http://flomio.com/shop/nfc-readers/) are maturing well to address this need, with frequent updates to the Flomio SDK for easy integration. Consider joining us at [TrackHack](http://trackhack.org) to play around with them along with awesome hardware from other RFID vendors. – grundyoso Oct 21 '15 at 22:59
  • Hey guys, I have a question, if all this is true, how can this happen : http://www.idownloadblog.com/2017/06/30/nfcwriter/ What am I missing? – Flavio_Lima Jan 11 '18 at 14:57
  • @Flavio_Lima it's a valid question but the answer is subjective. There's no doubt that the iPhone6/7 hardware is *can* read/write NFC tags but it's unclear how much Apple will allow developers to access these functions. As many of [our benchmarks have shown](https://youtu.be/JJC__AI5DUY), the iPhone hardware is not well suited to read/write the broad range of NFC tags out on the market. As such, the tag read/write user experience on the iPhone may be perceived as poor and potentially tarnish the brand quality Apple guards so well. That's why we don't think they will fully support Discovery. – grundyoso Jan 14 '18 at 06:35
43

From digging into the iOS 8 docs that are available as of Sept 9th 3:30pm there is no mention of developer access to the NFC controller to perform any NFC operations; that includes reading tags, writing tags, pairing, payments, tag emulation... Given its an NXP controller the hardware has the capability to perform these features. They did mention a 3rd party app for the watch that allowed a hotel guest to open their room door with NFC. This is a classic use case for NFC and gives some indication that the NFC controller will be open to developers at some point. Remember, the watch is not supposed to be released until Q1 2015. So for now I'd say it's closed but will be open soon. Given the 'newness' of contactless payments for the general US consumer and the recent security breaches its not surprising Apple wants to keep this closed for a while.

Disclosure: Im the CEO of GoToTags, an NFC company with obvious vested interest in Apple opening up NFC to developers.

--- Correction & Update ---

The hotel app actually uses Bluetooth, not NFC. NFC is still often used for door unlocking, just not in this one example. NFC could be used if the watch has an open NFC controller.

I do know that Apple is aware of all of this and is discussing this with their top developers and stakeholders. There has already been massive negative push back on the lack of support for reading tags. As often the case in the past, I expect Apple to eventually open this up to developers for non-payment related functionality (reading tags, pairing). I do not think Apple will ever allow other wallets though. File sharing will likely be left to AirDrop as well.

--- Update on March 23rd 2016 ---

I am continually asked for updates about this topic, often with people referencing this post. With Apple releasing the iPhone SE, many are again asking why Apple has not supported tag reading yet. In summary Apple is more focused on Apple Pay succeeding than the other use cases for NFC for now. Apple could make a lot of money from Apple Pay, and has less to make from the other uses for NFC. Apple will likely open up NFC tag reading when they feel that consumer trust and security with NFC and Apple Pay is such that it wont put Apple Pay at risk. Further information here.

--- Update on May 24th 2017 ---

A developer in Greece has hacked the iPhone 6s to get it to read NFC tags via the NFC private frameworks; more info & video. While this isn't a long term solution, it provides some guidance on some outstanding question: Is there enough power in the iPhone's NFC controller to power an NFC tag? Looks like the answer is yes. From initial testing the range is a few cm, which isn't too bad. It might also be the power is tunable; this is being investigated at this time. The implications of this are significant. If the older model phones do have enough RF power for tag reading/writing, then when Apple does open up the SDK it means there will be 100Ms of iPhones that can read NFC tags, vs the case where only the new iPhones could.

craig.tadlock
  • 1,775
  • 19
  • 25
  • Here is the link to PassKit, the payment portion of the iOS SDK. https://developer.apple.com/library/prerelease/ios/documentation/UserExperience/Reference/PassKit_Framework/index.html#//apple_ref/doc/uid/TP40012158 – craig.tadlock Sep 09 '14 at 22:40
  • In reading the [documentation for Apple Pay](https://developer.apple.com/apple-pay/Getting-Started-with-Apple-Pay.pdf) that I was able to find, there is no mention of NFC. This is all I could find for now. I'm not convinced yet that the iPhone 6 will even have NFC. I did see it stated in a news article, but the reporters may be confusing a payment system API for NFC payments. Can you share a link to any documentation from Apple that states the iPhone 6 will have NFC hardware? – strwils Sep 10 '14 at 02:15
  • 7
    Did you watch the feed? There was a huge "NFC" text when they were talking about Apple Pay. Go checkout the TechCrunch recording of it. – craig.tadlock Sep 10 '14 at 03:15
  • No I didn't. Thanks I'll check it out. – strwils Sep 10 '14 at 10:43
  • If the API is available to a regular iOS dev then great but It did take 2 years for them to release the API for TouchID so there's that. I would bet that the NFC will be reserved for Apple-only features like ApplePay, maybe some contact swapping, but that will be about it. – tricknology Sep 11 '14 at 19:11
  • 2
    @tricknology TouchID has only been around since the iPhone 5S, which was almost exactly one year ago. The API was released to developers 3 months ago. – Tim Bodeit Sep 13 '14 at 14:38
  • In case youre wondering about the iPhone 7, nothing has changed in respect to support for reading and writing NFC tags. Here is an explanation: https://gototags.com/blog/apple-iphone-7-support-nfc-tags/ – craig.tadlock Oct 27 '16 at 17:29
5

At the moment, there isn't any open access to the NFC controller. There are currently no NFC APIs in the iOS 8 GM SDK - which would indicate that the NFC capability will be restricted to Apple Pay at launch. This is our understanding.

Clearly, the NXP chip inside the iPhone 6 is likely to be able to do more so this doesn't mean that additional features (pairing, tag scanning/encoding) will not be added for release or in the near future.

Xan
  • 66,873
  • 13
  • 150
  • 174
Harry
  • 326
  • 1
  • 5
2

At the moment, Apple has not opened any access to the embedded NFC chip to developers as suggested by many articles such as these ones :

The list goes on. The main reason seems (like lots the other hardware features added to the iPhone in the past) that Apple wants to ensure the security of such technology before releasing any API for developers to let them do whatever they want. So at first, they will use it internally for their needs only (such as Apple Pay at launch time).

"At the moment, there isn't any open access to the NFC controller," said RapidNFC, a provider of NFC tags. "There are currently no NFC APIs in the iOS 8 GM SDK".

But eventually, I think we can all agree that they will develop such API, it's only a matter of time.

m4rtin
  • 2,235
  • 19
  • 33
  • 7
    You realize you referenced articles that use this question as a source? It's come full circle... – craig.tadlock Sep 19 '14 at 14:32
  • Wasn't aware that tech reporters used SO as a source but I guess it makes sense. Anyway, my point was just to cite sources as the original question was about the ability for us developers to issue code using the NFC chip embedded in the last iPhone. – m4rtin Sep 19 '14 at 14:39
  • @m4rtin, "But eventually, I think we can all agree that they will develop such API, it's only a matter of time." No it's a matter of MONEY! It took years to get a full Bluetooth support, they don't want to hear talking of flash and in NFC, they just took the paiment part. Apple only integrate a technology if they can win money with. They absolutely don't care about services the techno can provide to their user! – fralbo Feb 12 '17 at 10:22
2

The ability to read an NFC tag has been added to iOS 11 which only support iPhone 7 and 7 plus

As a test drive I made this repo

First: We need to initiate NFCNDEFReaderSession class

var session: NFCNDEFReaderSession? 
session = NFCNDEFReaderSession(delegate: self, queue: nil, invalidateAfterFirstRead: false)

Then we need to start the session by:

session?.begin()

and when done:

session?.invalidate()

The delegate (which self should implement) has basically two functions:

func readerSession(_ session: NFCNDEFReaderSession, didDetectNDEFs messages: [NFCNDEFMessage])
func readerSession(_ session: NFCNDEFReaderSession, didInvalidateWithError error: Error)

here is my reference Apple docs

zombie
  • 4,242
  • 2
  • 19
  • 48
  • I'm trying to test Core NFC as well. Have you gotten anything working yet? I realize it's only the first day :) – Blisterpeanuts Jun 06 '17 at 02:19
  • @Blisterpeanuts I updated my answer but it's not fully working because of missing architecture x86_64 in CoreNFC but I'll fix it soon – zombie Jun 06 '17 at 19:26
  • See https://stackoverflow.com/questions/44380305/ios-11-core-nfc-any-sample-code/44385819#44383637 Some of us have gotten it working. – Blisterpeanuts Jun 07 '17 at 11:22
1

The only information currently available is that Apple Pay will be available in ios8, but that doesn't shed any light on whether RFID tags or rather NFC tags specifically will be able to be detected/read.

IMO it would be a shortsighted move not to allow that possibility, but really the money is in Apple Pay, not necessarily in allowing developers access to those features - we've seen it before with tethering, Bluetooth SPP, and diminished access to certain functions.

...but then again, it's been about 5 hours since the first announcement.

DonJohnII
  • 31
  • 3
-2

I think it will be sometime before we get to see access to the NFC as the pure security side of it like for example being able to walk past somebody brush past them and & get your phone to the zap the card details or simply Wave your phone over someone's wallet which They left on the desk.

I think the first step is for Apple to talk to banks and find more ways of securing cards and NFC before This will be allowed

Adrian Sluyters
  • 2,036
  • 1
  • 13
  • 20