Government Limited Rights Notice: All documentation and manuals were developed at
private expense and no part of it was developed using Government funds.
The U.S. Government’s rights to use, modify, reproduce, release, perform, display, or
disclose the technical data contained herein are restricted by paragraph (b)(3) of the
Rights in Technical Data — Noncommercial Items clause (DFARS 252.227-7013(b)(3)),
as amended from time-to-time. Any reproduction of technical data or portions thereof
marked with this legend must also reproduce the markings. Any person, other than the
U.S. Government, who has been provided access to such data must promptly notify
ThingMagic.
ThingMagic, Mercury, Reads Any Tag, and the ThingMagic logo are trademarks or
registered trademarks of ThingMagic, A Division of Trimble.
Other product names mentioned herein may be trademarks or registered trademarks of
Trimble or other companies.
The Mercury® xPRESS RFID Solution Development Platform is a microcontroller-based
hardware and software platform designed to enable rapid development of custom finished
UHF RFID readers using the ThingMagic Mercury6e-Series modules (M6e, Micro, and
Micro-LTE). The xPRESS Platform is designed to support multiple interfaces for use
across a wide range of applications via support for option modules.
Note
The Micro and Micro-LTE RFID modules are identical except for read rate
performance, so all information given for the “Micro” applies to both products.
This document is broken down into the following chapters:
Regulatory and Safety Compliance - Regulatory and safety information that must be
followed if using the xPRESS platform outside of a development environment.
Includes advice for best practices to avoid Electrostatic Discharge (ESD) damage.
Quick Start Guide - This chapter instructs the user how to connect the xPRESS
motherboard to a host PC and run the pre-installed RFID Sensor application.
Using the Optional Modules - This chapter provides details about installing and
operating the optional modules, including Bluetooth, WiFi, Power-Over-Ethernet
(POE) and GPS.
Installing Developer Tools on Windows OS - This chapter provides detailed instructions
for installing 3rd-party development tools and the ThingMagic SDK on a Windows PC
in order to develop or modify ThingMagic applications (including the RFID Sensor
sample application).
Installing Developer Tools on LINUX OS - This chapter provides detailed instructions for
installing 3rd-party development tools and the ThingMagic SDK on a LINUX PC in
order to develop or modify ThingMagic applications (including the RFID Sensor
sample application).
Using the Developer Toolkit - This chapter explains how to build and download an
application on both Windows and LINUX PC hosts.
Using the Sample Application - This chapter provides information on the sample
applications included with the development platform (initially only the RFID Sensor)
for programmers who would like to modify it.
Hardware Reference Guide - This chapter provides detailed information about the
xPRESS platform hardware architecture, controls, indicators, and interfaces.
Software Reference Guide - This chapter provides detailed information about the
xPRESS platform software architecture and the development tools used to create
applications for the platform.
Introduction9
A DIVISION OF TRIMBLE
Appendix A: SAM-BA for Windows - This chapter provides instructions for creating an
application “bin” file that can be downloaded to the xPRESS platform via the USB
port directly from a PC.
Ordering Information
The available xPRESS platform models and accessories are listed in the following table.
Product DescriptionPart Number
xPRESS Development Platform with
M6e RFID Module
xPRESS Development Platform with
Micro RFID Module
xPRESS Development Platform with
Micro-LTE RFID module
Optional Bluetooth Interface ModuleXP-BT
Optional Power-Over-Ethernet ModuleXP-PoE
Optional WiFi Module with integrated
antenna
Optional GPS module with antennaXP-GPS
ThingMagic also offers RFID antennas and tags that are compatible with this platform.
www.thingmagic.com for additional information.
See
XP6e
XP6e-M
XP6e-Micro
XP-Wi-Fi
10Introduction
A DIVISION OF TRIMBLE
Regulatory and Safety Compliance
!
CAUTION!
!
The xPRESS platform has been tested for regulatory compliance in order
to validate its design, but further testing and certification is required
before the xPRESS platform can be deployed as an RFID reader in an
application environment.
Note
Detailed information regarding the compliance of the modules and the
installation requirements necessary to insure compliance when the
reader is deployed is found in the user guide for each module:
M6e Hardware Guide (Current version: November 2013)
Micro Hardware Guide (Current version: March 2014)
In order to be approved for deployment, an RFID reader based on the xPRESS platform
must pass several categories of certification:
1. Certification as an “intentional radiator”. This category includes the following sub-
categories of requirements:
Correct in-band characteristics to make it compatible with other transmitters that
share the same frequency band
Adequate suppression of radiated signals outside the frequency band of operation
so as to not interfere with services in adjacent frequency bands
Statement detailing the distance from the antenna that must be maintained to
insure that RF levels are below recommended safe levels.
2. Certification as an “unintentional radiator” when the RFID reader is not actively
transmitting.
3. Safety compliance to protect installers and operators
Each country establishes its own regulatory and safety requirements for transmitters such
as RFID readers. Often these requirements are strongly based on those established by
FCC or EU standards bodies, as they were published or with minor changes. Both the
Regulatory and Safety Compliance11
A DIVISION OF TRIMBLE
M6e and Micro modules (including the Micro-LTE) conform to requirements for most
countries. Refer to the module User Guides for a list of which regions are supported.
FCC certification is required for operation in the US. Many other countries have adopted
FCC requirements as their own. Other countries have adopted all requirements but the
frequency band of operation. These countries require that the reader operate in a subset
of the FCC band (902 to 928 MHz) in order to avoid interfering with existing RF services
that were previously assigned to a portion of the FCC band. ThingMagic modules
accomplish this by allowing a custom “hop table” to be defined after FCC regional settings
are applied.
With respect to requirements for intentional radiation, the FCC will certify the RFID
module to be compliant as a component of a product and that certification covers any
product that contains the module. ThingMagic has obtained modular certification for our
M6e and Micro modules. The FCC ID’s for the modules in the xPRESS platform are:.
Micro and Micro-LTE: QV5MERCURY6E-M
M6e: QV5MERCURY6E
Bluetooth Module: T9J-RN42
WiFi Module: T9JRN171-1
Your product will be required to be labeled with a statement of compliance that refers to
these ID numbers if you are using our modular certification.
Included in the filing to the FCC is a calculation that shows the distance from the antenna
that should be maintained to keep RF levels at or below FCC-recommended safe
exposure limits. For UHF RFID, this is around 23 cm (9 inches), at the maximum
permissible transmission level when using antennas with the highest allowed gain. We
submit this calculation for the RF module alone when we obtain approval for the module.
This calculation may have to be amended if other intentional radiators, such as a
Bluetooth module, are present as well. The calculation depends on the separation
between the RFID antenna(s) and other simultaneously radiating antennas, so can only
be done once a finished product is created from the xPRESS platform.
The FCC does not allow vendors to pre-certify modules or platforms such as xPRESS for
unintentional radiation, but we have pre-tested the xPRESS platform to give our
customers confidence that any readers based on the xPRESS design will have a very
high probability of obtaining certification.
The Industry Canada (Industrie Canada) has the same technical requirements as FCC,
and allows modular certification, but has their own filing and labeling requirements. One
significant deviation from FCC is that all products containing the modules must be
declared to the IC, whereas FCC only requires that the modules FCC ID be on the outside
12Regulatory and Safety Compliance
A DIVISION OF TRIMBLE
label of the product (which IC requires for their ID as well). The Industry Canada product
ID’s for the xPRESS modules are:
Micro and Micro-LTE: 5407A-MERCURY6EM
M6e: 5407-QV5MERCURY6E
Bluetooth Module: 6514A-RN42
WiFi Module: 6514A-RN171
EU has their own set of regulatory requirements for RFID equipment, created by ETSI.
ETSI requirements have been adopted by many countries and several others have
adopted their RF requirements with a slightly different band of operation. The EU band is
roughly in the range of 865 to 868 MHz, which is well below the FCC range.
Unlike FCC, EU requires self-certification rather than submitting a reader (or module) for
approval to a certified test house. The self-certification consists of a test report (which is
usually from a 3rd-party test facility) and a letter certifying compliance, signed by an
officer of the company. ThingMagic customers can use the ThingMagic module test
results as the test results they supply to their customers, but they must supply their own
certificate of compliance sighed by one of their officers. As ETSI augments and amends
their requirements, they continue to allow use of equipment that conforms to older
requirements for a period of time. The standard that covers UHF RFID is document
number “EN 302 208” and the current version is 1.4.1.
The optional modules are certified to the following ETSI standards;
Bluetooth Module: EN 300 328: v1.8.1
WiFi Module: EN 300 328: v1.8.1
Although both the M6e and Micro support both the FCC and EU regions in a single SKU,
this does not necessarily mean that a single product can be created which can be
operated in both these (and other) regions. Two factors limit the ability to create a single
world-wide model:
1. Conflicting labeling requirements among various regions which cannot be resolved
by including all information on a single label.
2. FCC’s insistence on a “BIOS-level” lock-out for altering the RF characteristics of a
transmitter in a way that would violate FCC requirements. This means that the EU
region of operation, for example, cannot be selected via a simple configuration menu
option along with the other RF characteristics, even if the hardware supports it.
Safety certification to protect people installing, using, and maintaining the product is
governed by Underwriters Laboratory (UL) in the US and CE in Europe. When
ThingMagic certifies a reader for safety, we have the reader tested against the “CB”
requirements, which is a super-set of other requirements and is accepted by most
countries as proof of conformance (although they often require that certification be
Regulatory and Safety Compliance13
A DIVISION OF TRIMBLE
applied for, with “CB” test results included in the paperwork that is submitted for
approval).
Authorized Antennas
FCC and IC modular certification requires that the vendor submit a list of antennas which
have been tested for compliance with the module. Antennas of the same type as a
compliant antenna, but having lower gain, are permitted to be used in place of approved
antennas. The following table provides information about the antennas that ThingMagic
has successfully submitted for approval when modular certification was obtained.
Micro and Micro-LTE
Maximum
VendorModelTypePolarization
Linear Gain
(dBi)*
ThingMagic
(Laird)
ThingMagic
(Laird)
ThingMagic (MTI
WIreless)
ThingMagic (MTI
Wireless)
ThingMagic (MTI
Wireless)
LairdFG9026DipoleLinear6.0
ANT-NA-9025
(S9025P)
ANT-NA-A5
(S8658WPL)
ANT-NB-7-2031
(MT-262031)
ANT-WB-122043 (MT-
242043)
ANT-WB-6-2025
(MT-242025)
PatchCircular4.3
PatchCircular6.0
PatchCircular6.0
PatchCircular6.0
PatchCircular6.0
*For circularly polarized antennas, the maximum linear gain is the maximum gain as
measured with a calibrated linear dipole antenna, facing the C.P. antenna at any
rotational angle. The published circular polarized gain can be as much as 3 dB higher
than the maximum linear gain.
14Regulatory and Safety Compliance
A DIVISION OF TRIMBLE
M6e
VendorModelTypePolarization
Maximum
Linear Gain
(dBi)*
ThingMagic
(Laird)
ThingMagic
(Laird)
ThingMagic (MTI
WIreless)
ThingMagic (MTI
Wireless)
ThingMagic (MTI
Wireless)
ANT-NA-9025
(S9025P)
ANT-NA-A5
(S8658WPL)
ANT-NB-7-2031
(MT-262031)
ANT-WB-122043 (MT-
242043)
ANT-WB-6-2025
(MT-242025)
PatchCircular4.3
PatchCircular6.0
PatchCircular6.0
PatchCircular6.0
PatchCircular6.0
*For circularly polarized antennas, the maximum linear gain is the maximum gain as
measured with a calibrated linear dipole antenna, facing the C.P. antenna at any
rotational angle. The published circular polarized gain can be as much as 3 dB higher
than the maximum linear gain.
ElectroStatic Discharge (ESD) Considerations
WARNING!
The M6e and Micro antenna ports may be susceptible to damage from
Electrostatic Discharge (ESD). Equipment failure can result if the antenna or
communication ports are subjected to ESD. Standard ESD precautions should
be taken during installation to avoid static discharge when handling or making
connections to the reader antenna or communication ports. Environmental
analysis should also be performed to ensure static is not building up on and
around the antennas, possibly causing discharges during operation. See the User
Guides for the modules for additional information on protecting readers from
ESD.
Regulatory and Safety Compliance15
A DIVISION OF TRIMBLE
Common Installation Best Practices
The following are common installation best practices which will ensure the readers isn’t
being unnecessarily exposed to ESD in even low risk environments. These should be
applied to all installations, full power or partial power, ESD or not:
Select an antenna with all radiating elements grounded for DC. The MTI MT-
262031-T(L,R)H-A is such an antenna. The Laird IF900-SF00 and CAF95956 are not
such antennas. The grounding of the antenna elements dissipates static charge
leakage, and provides a high pass characteristic that attenuates discharge events.
Verify R-TNC knurled threaded nuts are tight and stay tight. Don’t use a thread
locking compound that would compromise the grounding connection of the thread to
thread mate. If there is any indication that field vibration might cause the R-TNC to
loosen, apply RTV or other adhesive externally.
Use antenna cables with double shield outer conductors, or even full metallic
shield semirigid cables. ThingMagic specified cables are double shielded and
adequate for most applications. ESD discharge currents flowing ostensibly on the
outer surface of a single shield coaxial cable have been seen to couple to the inside
of coaxial cables, causing ESD failure. Avoid RG-58. Prefer RG-223.
Minimize ground loops in coaxial cable runs to antennas. Having the M6e/Micro
and antenna both tied to ground leads to the possibility of ground currents flowing
along antenna cables. The tendency of these currents to flow is related to the area of
the conceptual surface marked out by the antenna cable and the nearest continuous
ground surface. When this conceptual surface has minimum area, these ground loop
currents are minimized. Routing antenna cables against grounded metallic chassis
parts helps minimize ground loop currents.
Keep the antenna radome (non-metallic cover) in place. It provides significant
ESD protection for the metallic parts of the antenna, and protects the antenna from
performance changes due to environmental accumulation.
Keep careful track of serial numbers, operating life times, and numbers of units
operating. You need this information to know what your mean operating life-time is.
Only with this number will you be able to know if you have a systemic failure problem,
ESD or otherwise. After any given change, you will be able to determine whether
things have improved and whether the failures are confined to one area, or
distributed across your population.
16Regulatory and Safety Compliance
A DIVISION OF TRIMBLE
Quick Start Guide
This chapter provides a brief introduction to xPRESS with instructions to install, setup and
test the basic, default functionality of the xPRESS Platform.
Quick Start Guide17
A DIVISION OF TRIMBLE
xPRESS Platform Contents
The xPRESS development platform is shipped as an open system allowing maximum
flexibility in changing hardware configuration and peripherals. This chapter explains how
to assemble the development platform and operate the RFID Sensor demo program over
the USB interface. Once successful, you may want to run this application over one of the
optional module interfaces and add GPS location sensing. If so, consult the
Optional Modules section. Use caution when configuring the hardware.
Note
Always turn off the power and unplug the power cord before changing
hardware configuration and peripherals.
Hardware
xPRESS Platform Contents
Using the
Processor Motherboard with one module (either M6e, Micro, or Micro-LTE)
AC Power Adapter with international adapter plugs
Two USB cables
Antenna cable which converts MMCX to Reverse-TNC
The xPRESS Development Platform comes with an AC power adapter, two USB cables,
one antenna cable, and one of the UHF RFID modules shown in the picture. The red
18Quick Start Guide
xPRESS Platform Contents
A DIVISION OF TRIMBLE
Bluetooth module shown in the picture is optional. Here are all the optional interface and
sensor modules.
Additional components available from ThingMagic include:
Antennas
Reverse-TNC to Reverse-TNC cable
The xPRESS platform supports a coin-cell battery (to power a Real Time Clock) and
rechargeable Li-ION batteries, but these items are not currently available from
ThingMagic.
Software
All software is available to download from the ThingMagic Support site:
http://www.thingmagic.com/manuals-firmware
The xPRESS platform is shipped with a demonstration application pre-installed. This
application allows you to read RFID tags, optionally add GPS information to the data
received, and output the information via any of the supported interfaces. USB and
Bluetooth are supported without any modification to the application code. To use any
other optional modules, the xPRESS SDK will need to be imported into an Eclipse
development environment, minor changes made to the configurable values, the
application program recompiled (“built”), and the resulting binary file downloaded to the
xPRESS processor. Later, you may wish to make other changes to customize the
program’s behavior to better address your application requirements.
Quick Start Guide19
xPRESS Platform Contents
A DIVISION OF TRIMBLE
Documentation
All documentation is available to download from the ThingMagic support site using this
URL:
http://www.thingmagic.com/manuals-firmware
This site also offers hardware design documentation that will allow you to develop your
own processor board based on the xPRESS platform design: This documentation
includes:
Schematics
Layout files
Gerber files
Bill of Materials
Component Data Sheets
20Quick Start Guide
A DIVISION OF TRIMBLE
Hardware Setup
The main connectors and switches on the xPRESS motherboard are shown in the
diagram below. Your board may have a different RFID module than the M6e shown here.
Hardware Setup
The following steps will take you through the hardware set-up, power-up and connecting
the xPRESS platform using its pre-installed application which will read UHF RFID tags
and report them through the USB interface.
1. Connect the micro USB connector to the “USBOTG” port on the motherboard and the
other end to your Windows or LINUX PC.
Quick Start Guide21
Hardware Setup
A DIVISION OF TRIMBLE
2. Connect the supplied MMCX antenna cable to port 1 of the RFID module. Connect
your antenna to the other end of the cable (though an R-TNC to R-TNC cable if
necessary). Make sure all the antenna cable connections are tight.
3. Make sure the Flash Erase jumper is in the “NORM” position.
4. If you are using a Li-ion battery (not supplied with platform), plug it into the two- or
three-port jack, as appropriate.
22Quick Start Guide
Hardware Setup
A DIVISION OF TRIMBLE
5. Make sure the POE jumper is in the correct position for AC operation, as shown in the
photo below. Later, if powering the module from a POE module, you can move the
jumper into the “POE” position.
Always-on jumper.
Keep in this position
to use on/off switch
to start
POE jumper.
Keep in this position
to power via AC
adapter
6. Move the Always-on jumper to the position away from the board edge if you want the
board to be on whenever the power source is present. Otherwise, leave it in the
position closest to the board edge and use the on/off switch to control power to the
system.
7. Plug the AC adapter into the motherboard and connect it to an AC power source.
8. If you wish to run the pre-installed RFID Sensor application, move your PC cursor to
a database field or document where you would normally enter text via a keyboard.
9. Place one or more tags near the antenna and push the “User Switch” once.
Quick Start Guide23
Hardware Setup
A DIVISION OF TRIMBLE
10. Tags in the vicinity of the antenna will be read and “typed” on separate lines
repeatedly every second. All the tag “metadata” (information relating to tag reading
conditions) are included, as well as the tag identity (its “EPC”).
The blue LED will be on when the module is actively reading. The yellow LED will
flash and the buzzer will chirp whenever a tag is read.
11. If you wish to see status messages while the xPRESS platform is operating, connect
the second USB cable into the “Debug” USB port and connect it to your PC. You will
need to activate a serial terminal application (such as puTTY) at 115200 bits per
second to view the messages. The guide to interacting with the console is found in
the
Using the Sample Application chapter.
12. Press the “User Switch” button again to stop reading
24Quick Start Guide
A DIVISION OF TRIMBLE
Using the Sample Application
Initially, only one sample application will be available for the xPRESS platform, the RFID
Sensor (an enhanced version of the original application that we called the “Keyboard
Wedge”. The xPRESS platform will ship with this application pre-installed and the source
code for it will be included in the SDK.
Basic instructions for operating this application were given in the Quick Start Guide. This
section provides additional information about its architecture how to interpret and control
the console messages seen while the xPRESS system is active.
Using the Sample Application 25
RFID Sensor Application
A DIVISION OF TRIMBLE
RFID Sensor Application
The RFID Sensor is an application that reads tags in the vicinity of the antenna and
forwards their ID’s and environmental information to the active interface. If the active
interface is the USB port or Bluetooth port, they act as if they are a keyboard connected to
your host device and transfer the tag information just as if you were typing it. If either of
the network interfaces (WiFi or Ethernet) are the active interface, then they will stream
this same data using text-based IP protocols. Instructions for using the USB interface
were given in the
Optional Bluetooth, WiFi and Ethernet interfaces are explained in the
Modules Chapter.
Architecture of the RFID Sensor App
The RFID Sensor App is designed to get a user up and running with a minimum of effort. The
demonstration application simultaneously controls the RFID module, maintains the active data
interface, and forma ts the data that is sent out that interface.
Quick Start Guide Chapter. Setup, configuration, and operation of the
Using the Optional
We call this a “Sensor App” because it aggregates the information collected from the tag with
local information it knows about environmental conditions at the time the tag was read and
(optionally) the GPS location of the reader at the time the tag was read.
A console interface is provided which provides status information while the xPRESS platform is
operating and allows some interaction with the optional modules. Changing of configuration
settings are not supported through the console in this version of the application. Settings are
modified in the source code of the application, which is then re-built and downloaded to the
xPRESS platform.
Demo App Architecture
The Demo App includes off-the-shelf software that provides a framework for it. These
include:
FreeRTOS: Provides tasks and queues
ASF: Provides drivers (except for Bluetooth module)
Mercury API: Provides control for the RFID module
The App itself consists of:
GPI monitor task
26Using the Sample Application
RFID Sensor Application
A DIVISION OF TRIMBLE
RFID reader task
Keyboard output task
EPC formatter function
Custom drivers: Bluetooth module
These functional utilities interact with each other as shown in the diagram below:
Demo App Program Flow
Execution starts at xpressReader/app_demo/main.c, which launches 2 tasks:
RfidReader and KBWedge.
Task RfidReader runs task_rfid, which controls the reader.
Task KBWedge runs task_wedge, which controls the UI (keyboard output,
pushbutton inputs).
The workflow begins when the user presses the read trigger button
pin_edge_handler fires on the falling edge of the button press, having previously
been set up by wedge_configure_buttons, which was called in task_wedge’s
initialization.
pin_edge_handler reads the current state of the read trigger button and sets the
global activateTagReads accordingly.
task_rfid monitors activateTagReads. When it becomes true, it enters readTags.
readTags operates the RFID reader then calls reportTags to retrieve the tag
reads.
reportTags fetches each tag read, formats it, then adds it to epcQueue
task_wedge constantly runs wedge_ui_process, which executes the state machine
that generates USB HID keyboard output. This has to be written as a state machine
because the USB host polls for one HID message at a time, and each HID message
corresponds to a single keypress (or release.) Note that only low-speed USB
connections do not poll automatically, so task_wedge’s inner loop only needs to run
in that case. For faster USB modes, the USB driver calls wedge_ui_process
directly.
Using the Sample Application27
RFID Sensor Application
A DIVISION OF TRIMBLE
Within wedge_ui_process is a call to xQueueReceive from epcQueue.
Whenever the current string is depleted, the state machine automatically
calls this function to get the next available tag read string.
Demo App Program Configuration
To modify the workflow, there are many compile-time switches in xpressreader/app/conf/conf_xpress_reader.h:
To change which button is the trigger, modify all strings related to
PRODUCT_MAIN_BUTTON.
To change trigger behavior, change the ENABLE_GPI_READ definition.
ENABLE_GPI_READ_WHILE_PRESSED: Keep reading as long as trigger is held
down.
ENABLE_GPI_READ_ON_OFF: Toggle reading each time trigger is pulled.
ENABLE_GPI_READ_ONCE: Read once for each trigger pull.
To change tag read feedback
ENABLE_TAG_READ_BUZZER
ENABLE_TAG_READ_LEDS
To change the tag read output format
SIMPLE_TAG_EPC_OUTPUT
FULL_TAG_DATA_SINGLE_LINE_OUTPUT
FULL_TAG_DATA_FORM_OUTPUT
For finer-grained control, use the TAG_*_{PRE,POST}FIX macros
RTC: Real Time Clock
The xPRESS system has RTC block which is in-built to main controller and used to
append timestamp of tag read into Sensor output data format.
Due to hardware limitation of not having external 32kHz crystal (RTC will have to use
internal RC which won’t be as accurate), the user will need to set RTC date and time at
28Using the Sample Application
RFID Sensor Application
A DIVISION OF TRIMBLE
every power cycle using CLI command. otherwise timestamp will start from default RTC
value ie, 2007-01-01 in Sensor output tag data format.