NFC is a Radio Frequency Identification (RFID) technology that allows two devices to exchange messages while in extremely close proximity.
We’re developing new service experiences based on the ability to add inexpensive NFC tags to physical objects and recognize them when placed on or next to connected objects that are embedded with NFC readers.
For this, we’ve used a few different NFC readers that are compatible with Arduino micro-controllers.
Since all three boards use the PN532 NFC chip, they respond to the same command set and can read all common NFC tag formats. Depending on the application, each of these readers has its advantage. For example, the Adafruit breakout board runs at 3.3v, making it ideal for use with the Arduino FIO.
The libraries available for each reader are largely similar, but not completely interchangeable. Additionally, the libraries don’t easily support all the features we need, especially in regards to encoding and decoding NDEF messages.
To simplify the process of switching between readers and tag formats, we created a single library that supports these three boards, I2C and SPI communication, and a variety of NDEF message formats written to Mifare Classic and Ultralight tags.
We’ve posted the library on Github in hopes that others will find it useful and help add features to it. If you are an Arduino developer working with NFC, have a look and let us know what you think in the comments below.
This article was originally published on Odopod’s What’s Fresh blog on January 10th.