Developer Tip: Why Having an NFC Stack on the Reader Can Simplify App Development

A guest blog post by David Shalaby, TapTrack

Almost all of the developers we’ve worked with over the years, particularly those that have integrated our TappyBLE Bluetooth Smart ® NFC reader with their apps, have little in-depth knowledge of NFC technology. This is not to imply that NFC is beyond their understanding or that NFC is overly complicated. When tasked with a specific project, developers prefer to focus efforts on familiar features within the application rather than spend precious time learning the bits and bytes of NFC. This is where a reader with a complete on-board NFC stack is useful, particularly when developing an app on a tablet that has no NFC chip. In this article, I will discuss why having the NFC operations off-loaded to the reader can simplify your code and reduce your development time.

Developers talk a lot about semantic oriented programming, and how it can improve the maintainability and extensibility of one’s code. Using a traditional NFC reader without an board stack makes maintaining clean semantic code very difficult since there are many details that the must be negotiated with the reader, such as; deciding what type of anti-collision to do, determining if the data can fit in the tag’s memory, and employing different commands for varying tag technologies. It is much easier to write a single line of code that can read or write NFC data and have all the requisite checking abstracted from the app and performed transparently on the smart NFC reader. This is illustrated below for a traditional NFC reader (a) and a smart NFC reader with on board NFC middleware (b).

Developer Tip: Why Having an NFC Stack on the Reader Can Simplify App Development

By handling all the low level NFC interactions with the target (usually a tag), a smart wireless NFC reader such as the TappyBLE eliminates the risk that the tag times out since it has not heard a response from the reader within a timeout threshold. This occurs when the NFC tag contains secure memory and requires an authentication such as the DESFire EV1. The latency of a both the wireless Bluetooth communication and tablet may sufficiently delay a response to an authentication challenge causing the authentication to fail due to a timeout. By performing the low level operations of the authentication on the reader itself, this problem is obviated. Also, be performing the authentication on the reader itself, strict timeouts can be enforced that can prevent relay attacks.

I have written before about the benefits of stored value on an NFC tag and how using a purely UID based system has its drawbacks and would be remiss if I didn’t mention that many of the benefits discussed here are more applicable to stored value implementations than to UID based ones. If your project is purely UID based, in that only the tag’s serial number, known as the unique identifier (UID), is read from the tag, a smart reader with an on board NFC stack is not as useful, although can still save some development time.

Affectionately known as the TappyBLE(™), TapTrack’s smart wireless NFC reader is an ideal tool for integrating a front facing scanner with a tablet. We often customize the reader’s firmware for our clients that use non-NDEF data formats.  Such customizations take us mere hours and provides the true benefits for a smart NFC reader as discussed in this article.

About our guest blogger:

David has worked in the NFC business since 2011 and developed numerous hardware and software implementations of NFC projects. He has extensive knowledge of the space both from a technical and business model perspective. Founder of the NFC startup TapTrack, David is recognized as an expert in NFC applications and has lectured at NFC educational events all over the United States and Canada. David holds an MBA from the Rotman School of Business (University of Toronto) and a BASc. in Electrical Engineering from the University of Waterloo. TapTrack is a full service NFC solutions provider with extensive experience and know how in both hardware and software NFC projects. 

TapTrack is a full service NFC solutions provider with extensive experience and know how in both hardware and software NFC projects. They have a robust NFC cloud platform as well as their own innovative cloud connected and platform integrated wireless NFC readers. Follow TapTrack on Twitter: @Tap_Track



Leave A Comment?

You must be logged in to post a comment.