RFIDtrack Project


RFIDtrack is a system that provides real-time location tracking of objects using RFID tags. RFID readers (called interrogators) are deployed in an area where device tracking is desired. RFID tags are attached to objects that are to be tracked. A suite of RFIDtrack applications is used to program the tags, poll the interrogators for tags that are present, and display to the user where an object is located. RFIDtrack uses Medusa to stream information about tag sightings and associations of tags to objects.


RFID tags and Interrogators

The RFID tags used in this project are passive. The interrogators each have two antennas through which they can read and write to tags. Interrogators are connected to the network and are controlled remotely.

Programming RFID tags

Each RFID tag contains a unique TagID, which is essentially a serial number. When a tag is programmed in RFIDtrack, its TagID is associated with information that the user provides about the object to be tagged. Information about this association is sent on a stream (rfid_prog_stream) to Medusa. While it is possible for small amounts of user data (roughly 928 bits) to be written directly on the tag, RFIDtrack does not do this. Instead, all relevant information about the tag is sent on the stream.

Detecting RFID tags

In order to detect when a tag is present, the interrogators are polled at specified time intervals for tag sightings. If the interrogator detects a tag, it provides its TagID. The TagID in addition to the location of the sighting are sent back on a stream (rfid_sighting_stream) to Medusa.

Tracking Objects

When a user wants to track a certain object, no direct communication with the RFID interrogator is needed. Instead, a query is submitted to Medusa. The rfid_prog_stream and the rfid_sighting_stream are joined, and when the TagID associated with the object of interest is sighted, its location is displayed to the user. The query is continuous, allowing the user to track objects continuously.



The RFID tags used in this project are passive. There are many reasons for using passive tags instead of active ones, including lower price, smaller size, and better longevity of the tags. However, passive tags do not have as long a range as active ones, owing to the fact that the signal they send back to the antenna must be powered by the antenna itself. As a result, the read range of the tags is quite small -- reliable reading in free space can be accomplished within a distance of only 2 meters.


In order to provide good tracking information, tags must be able to be read in key locations. Ideally, an object could be tracked everywhere within a desired space such as a building. However, the read range of the tags prohibits this. Instead, the antennas must be deployed in strategic locations such as doorways and sections of a hallway. Optimal deployment provides the ability to restrict the location of a given object to a small enough area to allow the location information to be useful ("My laptop is on the west end of this floor" rather than "My laptop is somewhere in this 8-story building").



Research Staff

Graduate Students

Undergraduate Students