Using Universal Reader Assistant


This article will explain how to utilize the Universal Reader Assistant software by ThingMagic.


Universal Reader Assistant Tool

Mercury API SDK

What is Universal Reader Assistant?

Universal Reader Assistant (URA) is a cross-product demo tool created by ThingMagic for its various readers. This tool is utilized to interface with ThingMagic readers including the USB Pro, USB Plus, and Vega readers. Since URA is built completely using the Mercury API, developing a custom software solution similar to URA is relatively straightforward with some programming knowledge.

Setting up Universal Reader Assistant

To set up URA, you will need to download the tool from the link above. Once it is downloaded, open the .exe file and allow URA to install on your machine.

Once installed, launch URA and select the 'Connect' button, which will open the Connect options on the right sidebar. Make sure to connect your reader to your PC before continuing. 

For a USB or serial reader, the 'Serial Reader' radio button option will need to be selected, as well as the reader's COM port from the drop-down list. Next, select the 'Connect' button to attempt to connect to the reader. For more information on connecting the USB readers, please see  Setting Up Your ThingMagic USB Reader.

For a Network reader, the 'Network Reader' radio button option will need to be selected and then the 'Connect' button needs to be selected.

Adjusting Settings in URA

Once the reader has been connected, URA settings will need to be adjusted in order to achieve the best functionality for an application. These settings can be found in the sidebar, and allow for the adjustment of everything from read power to display settings.

  • Read/Write Options - This section allows for the adjustment of the read behavior of URA, including the read time and the ability to filter tag reads. This section also allows for the selection of a particular antenna or the Antenna Detection setting if the connected reader supports this functionality.
  • Performace Metrics - This section gives a brief rundown of the current functionality of the tag read process. The metrics shown include the number of unique tags read, the total number of tag responses, and the rate at which tags were read.
  • Performance Tuning - This section allows the user to fine-tune the reader's ability to read tags. Settings include the read power (in dBm), read rate, read distance, tag population size, and tag response rate.
  • Display Options - This section allows for the adjustment of various display settings, such as font size, time-stamp format, and EPC format. Additional columns can be added to the Tag Results tab from this setting.
  • Reader Diagnostics - This section shows information about the connected reader, including its firmware and hardware version.
  • Firmware Update - This section allows for the firmware of the reader to be updated. The user can simply browse their computer for the firmware file and upload it to the connected reader via this interface.
  • Data Extensions - This section allows the user to either stream tag read data to a TCP port or to post it to a HTTP site.

URA Functionality

The Universal Reader Assistant tool allows the user to perform various actions on nearby tags, including reading and writing tag memory and locking memory banks of tags. The functionality of URA is separated into tabs, which are explained in more detail below.

  • Tag Results - This tab allows the user to perform a synchronous tag read process. This functionality allows the user to read multiple tags at once and see each unique tag's data in a single location. This data includes the tag EPC, the time at which the tag was read, the received signal strength (RSSi) of the tag, and the number of times the tag was read in the given amount of time. Additional columns can be selected in the Display Options mentioned above.

  • Write EPC - This tab allows the user to read and write a single tag that is in the read range of the connected reader. This can either be accomplished by selecting a tag that has already been read in the Tag Results section, or by allowing the reader to report the first tag that responds to a read operation. Typically, adjusting the read power of the reader to a relatively low dBm setting will allow the user to isolate a single tag to write. However, even at a relatively low setting, additional tags may be read or written to. It is suggested to only allow a single tag to be in the read range and field of the reader while a write operation is taking place. Note that when using a USB reader, write data may be transmitted via the USB cable to a nearby tag, so be sure to remove any tags from around the cable to prevent undesired tag writes.

  • Tag Inspector - This tab allows the user to see all accessible data banks contained on a particular tag. These data banks include the Reserved, EPC, TID, and User memory banks. This tab only displays the information contained in these banks, and does not allow for the editing of this data.

  • User Memory - This tab allows the user to write to a particular tag's User Memory bank. This functionality allows the user to access different functions of certain tags, which are outlined in the tag's datasheet if available.

  • Lock Tag - This tab allows the user to set Access and Kill passwords for the selected tag. The user can also apply lock/unlock the memory banks of the tag from this tab. Note that a tag that has its EPC memory bank locked and contains an Access password can still be read by any reader. However, the locked memory banks will not be able to be overwritten unless the Access password is provided.

For any additional questions regarding the functionality of the Universal Reader Assistant tool, please see the video below or contact our support team at