RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX


Fun with RFID

You cannot avoid RFID as many large companies will require tags on their products in order to do business with them. Everyday items you purchase may have been tracked with RFID.

Radio Frequency Identification (RFID) system is an identification system that uses radio waves to retrieve data from a device called a tag or transponder.

RFID surrounds us in our daily lives—in supermarkets, libraries, bookstores, etc. RFID provides a quick and efficient way to collect information, such as taking stock in a warehouse, as well as tracking the whereabouts of items.

In this article, you will learn how to build a Windows application that incorporates RFID technology for data collection. I'll demonstrate how to use two RFID readers and then I'll compare their relative pros and cons.

A Quick Introduction to RFID
In its bare minimum, a RFID system consists of two main components:

  • Reader/Writer
  • Tags
An RFID reader/writer contains a scanning antenna and a transceiver. It uses the scanning antenna to send out radio frequency signals in a relative short range. The radio frequency sent out is used to communicate and power tags (also known as transponders) that are within range, which will then transmit the data on the tag back to the reader. The information sent out by the tag is then picked up by the scanning antenna. The data is then interpreted and decoded by the transceiver.

There are two types of RFID tags—active and passive. Active RFID tags have their own power source and hence they can transmit signals that travel farther. In contrast, passive RFID tags have no power source and they have to rely solely on the signal sent from the scanning antenna to power them. Hence the range supported by passive tags is limited. Active tags are bigger in size than passive tags and have a limited life span (until the power source runs out). Passive tags, on the other hand, are much smaller in size and have virtually unlimited life span.

There are two types of RFID tags: active and passive.
RFID systems are categorized by their transmitting frequencies and are broadly grouped into three bands: Low Frequency (LF), High Frequency (HF), and Ultra High Frequency (UFH). Table 1 shows the different frequencies used by the three bands and their characteristics.

Table 11: The table shows the different transmitting frequencies used by RFID systems broadly grouped into three bands.

Frequency Band

Common Frequency

Typical Communication Range (Maximum)

Data Rate

Reader Cost


125 to 135 kHz

20cm (100cm)




13.56 Mhz

10cm (70cm)




868 to 928 Mhz

3m (10m)


Very High

1Source: http://www.atmel.com/dyn/resources/Prod_documents/secrerf_3_04.pdf.

Each RFID tag has a unique tag ID. Tags carry no more than 2KB of data and can store information such as history, location, etc.

Most common RFID applications use the tag ID transmitted by RFID tags as a key to information stored in databases. For example, an RFID tag attached to an employee passcard only contains an RFID tag ID, which an application can use to retrieve more detailed employee information stored in the organization databases. While read-only RFID applications are cheaper, there are occasions where you might need to write data back to an RFID tag, in which case you'll use read-write tags. You might find read-write RFID systems in a subway, for example, where you may need to write back information to a tag in stored value cards. Note that some tags can only be written once.

Building Attendance Tracking Application
Now that you have a good understanding of how RFID works, I'll show you how to build a simple attendance application that registers an employee when he reports for work. Figure 1 shows the user interface of the application.

Figure 1: The attendance system you will build in this article.
Figure 2: Hiding the administrative functions in a deployed environment.
When an employee scans his employee passcard that has an embedded RFID tag, the application that receives the ID from the RFID tag will display the employee information. The application's administrator can assign an unused tag to an employee by using the buttons on the right of the application. For security reasons, the application will clear the employee information after three seconds. To deploy this application in a real-life setting, you would hide the administrative functions so that the user only sees the necessary information (see Figure 2).

Close Icon
Thanks for your registration, follow us on our social networks to keep up-to-date