NFC: Difference between revisions

From iPhone Development Wiki
(Created page with "NFC, or Near Field Communication, is a technology that was recently added to the iPhone 6 and 6 Plus in order to implement Apple Pay. The NFC chip included on these device...")
 
No edit summary
 
(16 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[NFC]], or Near Field Communication, is a technology that was recently added to the iPhone 6 and 6 Plus in order to implement Apple Pay. The NFC chip included on these devices is the [http://www.nxp.com/products/identification_and_security/nfc_and_reader_ics/nfc_contactless_reader_ics/series/PN548.html PN548] by NXP Semiconductors. It is similar to the chip used in the Galaxy Nexus, and possibly other Android devices. Apple's implementation of NFC is split into a number of binaries:
[[NFC]], or Near Field Communication, is a technology that was recently added to the iPhone 6 and 6 Plus in order to implement Apple Pay. The NFC chip included on these devices is the [http://www.nxp.com/products/identification_and_security/nfc_and_reader_ics/nfc_contactless_reader_ics/series/PN548.html PN548] by NXP Semiconductors. It is similar to the chip used in the Galaxy Nexus<ref>http://www.nxp.com/news/press-releases/2011/11/nxp-nfc-solution-implemented-in-galaxy-nexus-from-google.html</ref>, and possibly other Android devices.
 
Apple's implementation of NFC is split into a number of binaries, found only on iPhone7,1 and iPhone7,2 devices:


* /usr/lib/PN548.dylib
* /usr/lib/PN548.dylib
Line 8: Line 10:
* /System/Library/PrivateFrameworks/NearField.framework
* /System/Library/PrivateFrameworks/NearField.framework


Passbook uses [[NearField.framework]] to communicate with [[nfcd]], and [[nfcd]] uses the NFC library provided NXP to communicate with the PN548 device. [[PN548.dylb]] is a version of [[https://android.googlesource.com/platform/external/libnfc-nxp/ libnfc-nxp]] compiled for iOS. [[PN548_API.dylib]] is written on top of  [[PN548.dylib]], abstracting away the full functionality of libnfc into a CoreFoundation style API for the express purpose of card emulation.
Passbook uses '''NearField.framework''' to communicate with '''[[nfcd]]''', and nfcd uses the NFC library provided NXP to communicate with the PN548 device. '''PN548.dylb''' is NXP's '''libnfc-nxp''', which is open source<ref>https://android.googlesource.com/platform/external/libnfc-nxp/</ref> as a part of Android. '''PN548_API.dylib''' is written on top of  PN548.dylib, abstracting away the full functionality of libnfc into a CoreFoundation style API named '''NFDriver''' for the express purpose of card emulation.


== References ==
== References ==


* [http://www.nxp.com/news/press-releases/2011/11/nxp-nfc-solution-implemented-in-galaxy-nexus-from-google.html NXP + Nexus]
<references/>

Latest revision as of 03:14, 25 September 2015

NFC, or Near Field Communication, is a technology that was recently added to the iPhone 6 and 6 Plus in order to implement Apple Pay. The NFC chip included on these devices is the PN548 by NXP Semiconductors. It is similar to the chip used in the Galaxy Nexus[1], and possibly other Android devices.

Apple's implementation of NFC is split into a number of binaries, found only on iPhone7,1 and iPhone7,2 devices:

  • /usr/lib/PN548.dylib
  • /usr/lib/PN548_API.dylib
  • /usr/lib/PN548_HAL.dylib
  • /usr/lib/libnfshared.dylib
  • /usr/libexec/nfcd
  • /System/Library/PrivateFrameworks/NearField.framework

Passbook uses NearField.framework to communicate with nfcd, and nfcd uses the NFC library provided NXP to communicate with the PN548 device. PN548.dylb is NXP's libnfc-nxp, which is open source[2] as a part of Android. PN548_API.dylib is written on top of PN548.dylib, abstracting away the full functionality of libnfc into a CoreFoundation style API named NFDriver for the express purpose of card emulation.

References