NFC driver notes

General NFC resources
Here are some NFC resources:

Introduction to Linux NFC

 * [[Media:Near_Field_Communication_with_Linux.pdf|NFC on Linux (PDF)]] - presentation by Samuel Ortiz, November 2012
 * Video of presentation at ELC Europe 2012 (Barcelona, November 9th)
 * [[Media:Elce11_venancio_ortiz.pdf|Linux NFC Subsystem (PDF)]] - presentation from ELC Europe 2011 by Lauro Ramos Venancio and Samuel Ortiz
 * Video of presentation at ELC Europe 2011 (Prague, November)
 * Enabling Mobile Payments on Linux (video) - presentation by Samuel Ortiz, September 2013

NFC news and articles

 * NFC World
 * NFC Times

finding which devices use which chips

 * http://en.wikipedia.org/wiki/List_of_NFC-enabled_mobile_devices
 * Would be a great resource, if it was populated
 * http://www.shop4nfc.com/nfc-compatibility-chart - List of different devices and the NFC chips they use
 * But they seem to have the wrong chip for some Sony devices
 * This seems to be a handy site for finding out what chips a particular product uses:
 * http://www.chipworks.com/

Devices that use the NXP PN544

 * Huawei Ascend U8651
 * Motorola Droid Razr
 * Nokia C7 (labeled as NXP 44501)
 * Nokia N9 (labeled as NXP 44501)
 * Samsung Galaxy mini 2 S6500 (labeled as NXP 44501)
 * Samsung Galaxy Note 3

Devices that use the NXP PN65

 * HTC One (and One X, One X+, and One XL)
 * Nexus 7 Tablet
 * Samsung Galaxy S III
 * Sony Xperia Z

Devices that use the Broadcom BCM20793 (M)

 * LG Nexus 5
 * Galaxy S4
 * Nexus 4
 * Nexus 7 (2013) Tablet
 * Nexus 10 Tablet

Vendors of Secure Elements
ST Microelectronics NXP Secure Inside Infineon

Vendors of NFC chipsets
Note, ** means that some recent firmware versions are qualified (by MasterCard) for payments with HCE (Host-based Card Emulation) and SE (Secure Element)
 * NXP
 * PN544 C1, PN544 C2, PN544 C3**
 * PN65N (PN544 C2 + SmartMX secure element)
 * PN65O** (PN544 C3 + SmartMX secure element)
 * PN547 C1, PN547 C2**
 * PN548 C2
 * Broadcom
 * BCM20793M
 * Secure Inside
 * MicroRead

News
Google supports Host Card Emulation (HCE), which eliminates the need for a secure element component in the mobile device itself. SE services can be provided by the network ("cloud"), or by trusted software. This support was announced for the KitKat (4.4) version of Android.

Software Interface

 * http://open-nfc.org/wp/ - Open-NFC project
 * This project appears to be a multi-OS driver for MicroRead hardware (but with a HAL for other chips)
 * libnfc
 * open-source project for accessing NFC features from user-space
 * Android APIs
 * Official API resources: http://developer.android.com/reference/android/nfc/package-summary.html
 * Android NFC guide: http://developer.android.com/guide/topics/connectivity/nfc/index.html
 * Tutorial for basic tag reading from Android: http://mifareclassicdetectiononandroid.blogspot.se/2011/04/reading-mifare-classic-1k-from-android.html