MPR Series MultiProtocol RFID Reader User’s Manual Version 0.95 11/4/04 1.1 Cover sheet MPR series User’s Manual: Draft version 0.
1.2 TOC MPR series User’s Manual: Draft version 0.
1.3 Introduction 1.3.1 Contents of this Document This manual describes installation and operation of the WJ Communications MPR5000, MPR6000, and MPR7000 PC-card-compatible UHF RFID readers. A description of the installation and use of the demonstration Graphical User Interface is also provided. The Application Programmer’s Interface to the MPR-series devices is described. 1.3.
1.3.4 Product Description 1.3.4.1 MPR 5000 card with integral antenna The MPR5000 includes an antenna attached to the reader module, and is ready to be used as received. The antenna is not removable or replaceable. 1.3.4.2 MPR6000/7000 card with external antenna ports The MPR6000 and 7000 incorporate two MMCX-type adaptors for connecting up to two external antennas. The ports are interchangeable, and only one antenna may be used at any given time if desired. 1.3.4.2.
Use of other than the approved antennas with this unit may result in harmful interference with other users, and cause the unit to fail to meet regulatory requirements. Professional installation is required for the MPR6000 and MPR7000 models. 1.3.4.2.1.
1.4.2 Windows XP/Me Laptops 1.4.2.1 Card and driver installation 1) Insert WJ MPR Demo CD into CD-ROM drive. 2) Insert RFID PC-Card into a PCMCIA Type II slot. 3) A message should appear that new Hardware was found: "WJCI Multi-protocol reader". SCREEN DUMP 4) Windows launches the "Found New Hardware Wizard". 5) If asked whether Windows should connect to Windows Update to search for software, select "No, not this time". 6) Click Next.
10) Click Next to continue. 11) On the "Select the device driver you want to install for this hardware." screen, a) deselect "Show compatible hardware" (if selected) b) for Manufacturer select "(Standard port types)" c) for Model select "Communications Port" 12) Click "Have Disk..." 13) Browse to the file "WJCIRFID.inf" on the CDROM (often D:) 14) Click Open or OK. 15) "Copy manufacturer's files from:" should be D:\ (the location of WJCIRFID.inf) MPR series User’s Manual: Draft version 0.
. 16) Click OK. 17) Click Next to continue. 18) Windows may warn that the software has not passed Windows Logo testing. This is fine, as you are actually just linking to Windows' own drivers. Just click "Continue Anyway". 19) The wizard will now install the driver. 20) Click Finish. 1.4.2.2 Installing the demo program 1) Browse to the MPR install CD. 2) From the CD root directory, launch "MPRControlInstaller.msi". This will guide you through the install process.
"Windows Installer Loader" will inform you if you do not have the correct version of the .NETFramework. Do NOT allow it to obtain it from the web for you. Please see Appendix A for instructions in acquiring the Framework. If you get this message, please click NO, and Cancel out of the installation. Then proceed to Appendix A. After installing the Framework, return to step 1 of this section. 3) Click Next to start.
6) Click Next again to start install. 7) The installer copies files and sets up some links. 8) Click Close to exit. MPR series User’s Manual: Draft version 0.
9) An "MPR Demo" link to the installed application should now be in the Start Menu and on the desktop. 1.4.2.3 Running the PC Demo 1) A shortcut to MPR Demo should be installed on the desktop, and in the START menu in the MPR Demo directory. 2) Launch the Demo Application. 3) It will prompt you to setup comm config details. "Would you like to setup comm config details now?" MPR series User’s Manual: Draft version 0.
4) Select Yes. 5) The Comm Settings dialog appears. 6) Server TCP Port should be left as the default, 10200. 7) COM Port should be set to whatever COM port your operating systems enumerates the MPR series reader to. See Appendix B to determine the COM port. The dropdown menu will only allow selection of the valid COM ports reported by the Windows' Registry. 8) The Baud Rate should be left as the default, 57600. 9) Click OK. 10) The Inventory window will appear. MPR series User’s Manual: Draft version 0.
11) To verify communications with an MPR PC Card, click the "Config Reader" Tab. 12) Clicking the "Reader Info" button will query the card for its Serial Number and Firmware Version. 13) If numbers appear, then the MPR is successfully communicating over the PC Card bus. If "unknown" appears in these boxes, verify that the reader is fully inserted into the PC Card slot. If this doesn’t solve the problem, refer to TROUBLE SHOOTING for further instructions.
15) If using an MPR with multiple external antenna ports, attach an antenna to a port. The MMCX connector is a press-fit connector; push gently inwards until you feel it ‘click’ into place. Pull outwards to remove the connector. Note that the connector is mechanically delicate, and should be protected from excessive stress. If a long antenna cable is used, the portion of the cable near the card should be supported to ensure that it does not pull laterally on the connector.
1.4.3 Windows CE / Pocket PC devices 1.4.3.1 Installing the Pocket PC Demo Note that the MPR card may be installed in the handheld device at any time during the installation process. 1) Attach Pocket PC device to PC and make ActiveSync connection. 2) Browse to the MPR install CD 3) From the CD root directory, launch "WJReader_PPCsetup.msi". This will guide you through the install process. 4) Click Next to start.
3) It will prompt you to setup comm config details. "Would you like to setup comm config details now?" 4) Select YES. 5) The Comm Settings dialog appears. 6) At first, just leave the server address and port to whatever default values appear. 7) COM Port should be set to whatever COM port your operating systems enumerates the MPR series reader to. The demo searches the Registry for an installed MPR Series reader. This is usually COM4 for Pocket PC.
2) Open the System panel. 3) Select the Hardware Tab. MPR series User’s Manual: Draft version 0.
4) Click the Device Manager button. 5) Expand the device tree to "Ports (COM & LPT)" MPR series User’s Manual: Draft version 0.
6) If an MPR is properly seated in the PC Card port, and the driver is installed, one of the resident COM Ports will say something like "MPR5000 Series (COM9)". In this example, the card is enumerating itself as COM9. 1.5 RFID overview 1.5.1 RFID operating principles Radio-frequency identification (RFID) is an auto-identification technology, similar in concept to other common auto-identification technologies such as bar code scanners, magnetic strip readers, or magnetic ink readers.
there is no radiated power, there is usually very little issue with regulatory compliance in using LF tags and readers. High-frequency (HF) tags and readers operate at 13.56 MHz. This frequency is available for industrial use in most jurisdictions worldwide. The wavelength is about 20 meters (60 feet), still larger than most reader or tag antennas, so inductive coupling is used as in LF tags and readers.
RFID readers and tags operating in the microwave ISM band at 2.4-2.45 GHz are also widely used. The 2.4-2.45 GHz band is available for unlicensed operation in most jurisdictions worldwide. At this frequency the wavelength is about 12 cm (5 inches). Very small tags can be used in the 2.45 GHz band, but because of the consequent small antennas, the amount of power collected by a tag is reduced in comparison to UHF tags. Passive 2.4 GHz tags have typical read ranges of around 1 to 3 meters (3 to 10 feet). 1.
be simultaneously present in the field of the reader and read ‘simultaneously’ from the viewpoint of the user. RFID techniques permit automated information handling to a much greater extent than bar codes. • ROBUSTNESS: Bar codes cannot be read if the printed code becomes dirty, defaced, or excessively bent or curled. RFID tags are robust to dirt, paint, ink, and to some extent mechanical damage, and can be read (albeit with reduced range) when misoriented or mechanically distorted.
operates in each channel for 50 to 400 milliseconds. During hops from one channel to another, the RF output is turned off. 1.5.3.2 Antennas Antennas are the intermediaries between the voltages sent and received by the reader, and the electromagnetic waves used to provide power to and communicate with the tags. Three critical characteristics of antennas used in RFID systems are their maximum directive gain, polarization, and match.
In discussing antennas, it is often convenient to speak of an isotropic antenna that radiates power equally in all directions, but no such antenna actually exists. Real antennas always transmit more effectively in some directions than others. The ratio of the power density in the direction of highest power to the average power radiated in all directions is the maximum directive gain, often simply referred to as the gain of the antenna.
The MPR5000 integral antenna behaves like a dipole oriented parallel to the short edge of the card. Thus, radiation is mainly forward (looking along the long axis of the card), up, and down, but with very little power radiated to the left or right of the card. The radiation pattern can be regarded as a torus (doughnut) with axis along the short side of the card.
antenna is the patch antenna (also known as a microstrip or panel antenna). Patch antennas are manufactured using techniques similar to those used to make printed circuits, and are inexpensive and robust. They use a metal ground plane above which are printed resonant metal blocks; as a consequence they are generally flat and radiate primarily in the direction opposite the ground plane.
The electrical impedance presented by an antenna is a complex function of the frequency, the antenna shape, and the near-antenna environment. Antennas are carefully designed so that the electrical impedance of the antenna is well-matched to the impedance of the device to which they are connected. For example, the MPR6000/7000 will generally employ a cable with 50 ohm characteristic impedance to connect the reader to the antenna.
Tag antennas are also sensitive to their local environment, a fact that is of particular import since tags are meant to be attached to objects. Many common materials, such as paper and most plastics, have little effect on microwave propagation; tags can be attached readily to cardboard or plastic boxes or containers without affecting their operation. However, large metal objects have important effects both on the local electric fields and the impedance of nearby antennas.
record some or all of the tags. A successful RFID implementation requires the integration of appropriate procedures for human workers to follow in placing and using tags and objects carrying them, careful installation of reader hardware, and the right middleware to convert the raw data from the reader into information useful for operating the business. Procedures are intimately connected with the planned usage for the RFID tags.
• • UHF Tags: partial specifications for first-generation ‘class 0’ (factory-write-only) and ‘class 1’ (field-write allowed) tags are public. A second-generation standard for class 1 tags is in progress at the time of this writing. Physical Markup Language: In order to provide a standardized framework for exchange of EPC data between organizations, EPC Global is defining a physical markup language (PML) based on the popular extended markup language (XML) widely employed in web communications.
to provide two other ID’s in addition to the 64-bit EPC. These ID’s, known as ID0 and ID1, are both pseudo-random 16-bit numbers. ID0 is generated by each tag upon request by the reader. ID1 is programmed into each tag at the time of manufacture. In this nomenclature, the EPC is known as ID2. During traversal, each tag still in the traversal backscatters the next bit of its active ID to the reader, and listens for the reader to confirm that bit before remaining in the traversal.
Each time power is turned on, the reader proceeds through a set of steps to initialize the tag IC timing. First, the reader transmits a RESET consisting of 800 ms of CW power. A tag’s “ID’d” flag (telling it that it was already read by the reader) may survive a RESET, but in other respects the tag returns to its default state. After the RESET, 8 pulses are used to calibrate the tag internal oscillator to the 2.2 MHz sub-carrier frequency.
When more than one tag is in the field of the reader, the reader employs a binary-tree traversal to resolve possible collisions and individually address each tag (singulation). To begin the traversal, the reader sends a filter string consisting of a pointer location and a bit stream. The pointer location indicates where the bit stream starts in the EPC. Each tag tests the relevant portion of its EPC; those whose bits match the transmitted bit stream then send the next 8 bits of their EPC back to the reader.
The return link uses a simple form of subcarrier modulation, F2F. Each bit time begins with a transition in the tag state. To transmit a binary 0, the tag adds one transition in the middle of the bit. To transmit a binary 1, 3 additional transitions are employed. (Thus, a string of binary 0’s has a fundamental frequency of (1/Tbit), whereas the fundamental frequency of a string of binary 1’s is (2/Tbit), hence the name of this coding scheme.
1.5.4.2 ISO The international standards organization has defined a number of standards covering RFID hardware and operation. Currently, ISO is defining a series of tag and reader standards under ISO 18000, covering operation at LF, HF, UHF, and microwave bands. ISO 18000-3 describes 13.56 MHz tags and readers, generally assuming a thin, flexible form factor appropriate to smart cards or labels. ISO 18000-4 describes operation at 2.45 GHz, including both passive and active versions.
1.6.5 Messaging Protocol 1.6.5.1 Protocol Description • • • • • • • • • Host – Reader communications follows a Request-Response protocol. The Host sends request packets, and the Reader sends Responses. The Reader never sends unsolicited traffic. Every properly received request is acknowledged with at least one response packet. A response may consist of more than one packet. Bytes received before a proper SOF (Start of Frame) byte and packets with CRC errors are ignored.
1.6.6 Packet Formats 1.6.6.1 Request Packet Format Table 1 Request Packet Format SOF Node Address Length Command Data 0 … Data N CRC MSB CRC LSB Table 2 Request Packet Format Details Field Name SOF Node Address Length Command Size (bytes) 1 1 1 1 Value 0x01 0x00 Packet length excluding SOF (See command details) Data 0-64 (See command details) CRC 2 Bitwise inversion of 16bit CCITT-CRC of packet excluding SOF, MSB first (see Section 1.6.6.
1.6.6.3 CRC Calculation A 16bit CCITT CRC is used for error detection and placed at the end of the frame. The calculation uses all bytes of the frame excluding the leading SOF. The CCITT CRC polynomial is x16 + x12 + x5 + 1, and the preload value is 0xFFFF. The CRC is appended to the frame after the command data, MSB first. The following code snippet and test vectors can be used as a guide to implement the CRC. The bitwise inversion (CRC XOR 0xFF) of the CRC is included in a transmitted frame.
}; unsigned short CalculateBlockCRC16(byte count, char *buffer) { unsigned short crc = 0xFFFF; char *pBuf; pBuf = (char *)buffer; while (count--) crc = (unsigned short)((crc << 8) ^ crctab[(crc >> 8) ^ *pBuf++]); return (unsigned short)(~crc); } MPR series User’s Manual: Draft version 0.
1.6.7 Command Set 1.6.7.1 Reader Commands 1.6.7.1.1 Reader Information Get (01h) Reads basic information from the reader. Returned Information: Serial Number Firmware Version Hardware Version Bootloader Version Request Packet Opcode Command Data Response Packet Status Serial Number Software Version (not implemented yet) (not implemented yet) 0x01 N/A 0x00 8 bytes 2 bytes Complete MSB First MSB First 1.6.7.1.2 Reader Sleep (--) – not implemented yet Puts the reader in its lowest power “sleep” state.
1.6.7.2 Tag Commands 1.6.7.2.1 Class0 Inventory (11h) Returns a list of all Class0 tags found in the field of the reader.
Example Using Antenna B, an RF Power of 0xC0, and singulating with ID1, read all tags that match 38 (0x26) Filter bits having a value of 0xC80507A000.
1.6.7.2.2 Class0 Kill Tag (12h) Attempts to kill one Class0 Tag. Request Packet Opcode Command Data Antenna RF Power Level Singulation (Negotiation Page) Field Kill Passcode Tag ID bits 0x12 1 byte 1 byte 1 byte 3 bytes 8 or 12 bytes 0x00: Ant A 0x01: Ant B 0x01 (min) – 0xFF (max) 0x00 (ID0) 0x01 (ID1) 0x02 (ID2) As required to kill the tag Tag ID bits, MSB first Note: Singulation Fields ID0 & ID1 are not implemented yet.
1.6.7.2.3 Class0 Plus Commands (18h) The Class0 Plus (Impinj/ZUMA) capabilities are accessed via this single command. Specific functions are specified by a subcommand. 1.6.7.2.3.1 Class0 Plus Write Row Subcommand (00h) Writes a row (3 bytes) of data to a specified row address of a Class0 Plus (Impinj/ZUMA) Tag. If a filter is supplied, tags are first singulated then processed. If no filter is supplied, the global mode is used for processing.
1.6.7.2.3.2 Class0 Plus Read Row Subcommand (01h) Reads a row of data from a Class0 Plus (Impinj/ZUMA) tag. This subcommand only operates on singulated tags.
Example Using Antenna B, an RF Power of 0xC0, and singulating with ID1, read all tags that match 38 (0x26) Filter bits having a value of 0xC80507A000 and return data from row 13 (0x0d).
1.6.7.2.3.3 Class0 Plus INIT Subcommand (02h) Performs a Class 0 Plus (Impinj/ZUMA) INIT command. If a filter is supplied, tags are first singulated then processed. If no filter is supplied, the global mode is used for processing.
1.6.7.2.3.4 Class0 Plus Write ACK Subcommand (03h) Performs a Class 0 Plus (Impinj/ZUMA) Write ACK command. This subcommand only operates on singulated tags.
1.6.7.2.4 Class1 Inventory (21h) Returns a list of all Class1 tags found in the field of the reader. Request Packet Opcode 0x21 Command Data Antenna 1 byte RF Power Level Filter Bit Count Filter Bits 1 byte 1 byte 0-12 bytes 0x00: Ant A 0x01: Ant B 0x01 (min) – 0xFF (max) 0-64 or 0-96 Tag ID filter bits are left justified in bytes, MSByte sent first Note: If RF Power Level is zero, a Zero Power Error is returned. Response: The response is composed of one or more packets.
Example Using Antenna A, and RF Power 0xB0, read all Class 1 tags that match 38 (0x26) Filter bits having a value of 0xC80507A000.
1.6.7.2.5 Class1 Kill Tag (22h) Attempt to kill one Class1 Tag. Request Packet Opcode 0x22 Command Data Antenna 1 byte RF Power Level Tag ID bits Kill Passcode 1 byte 8 or 12 bytes 1 bytes Response Packet Status 0x00 MPR series User’s Manual: Draft 0x00: Ant A 0x01: Ant B 0x01 (min) – 0xFF (max) Tag ID bits, MSB first As required to kill the tag Complete version 0.
1.6.7.2.6 Class1 Tag Write (23h) Write to a Class1 Tag. Request Packet Opcode 0x23 Command Data Antenna 1 byte RF Power Level Pointer Data 1 byte 1 byte 2 bytes Response Packet Status 0x00 MPR series User’s Manual: Draft 0x00: Ant A 0x01: Ant B 0x01 (min) – 0xFF (max) 0, 16, 32, 48, 64, 80 or 96 16 bits sent MSByte first Complete version 0.
1.6.7.2.7 Class1 Verify ID (24h) Verify the ID was correctly programmed into a Class1 tag. Request Packet Opcode 0x24 Command Data Antenna 1 byte RF Power Level 1 byte 0x00: Ant A 0x01: Ant B 0x01 (min) – 0xFF (max) Response: The response is composed of one or more packets. The nonfinal packets will have a Status Byte of 0x01 (In Progress) and will contain Tag CRCs, Ids and Passwords. The final packet will contain a summary, and a Status Byte of 0x00 (Complete).
1.6.7.2.8 Class1 Erase ID (25h) Erase the ID that was previously programmed into a Class1 tag. Request Packet Opcode 0x25 Command Data Antenna 1 byte RF Power Level 1 byte Response Packet Status 0x00 MPR series User’s Manual: Draft 0x00: Ant A 0x01: Ant B 0x01 (min) – 0xFF (max) Complete version 0.
1.6.8 Host Side Drivers 1.6.9 VPU The VPU (Versatile PCMCIA UART) is a PCMCIA to serial UART bridge. It provides the hardware interface between the PCMCIA socket and the hardware in the MPR. The MPR appears as a standard COM port to the host. Commands are sent and received via serial interface APIs that are common to most programming languages. The MPR, when used in a Windows 95/98/XP operating system will use the standard Microsoft serial drivers. An information file (MS Windows .
1.6.10 Special Functions The vast majority of signaling with the MPR is done over the virtual COM port channel provided by the PCMCIA to UART bridge. There are a couple of extra functions that the host may perform by communicating directly with the bridge module. These functions are initiated by changing the COM port settings to the values specified in Error! Reference source not found., followed by sending a sequence of bytes.
0xFF 0x00 0x01 1.6.13 Error Complete In Progress Error Codes Table 8 Error Codes Code 0xF0 0xF1 0xF2 0xF3 0xF4 0xF5 0xF6 0xF7 0xFF Meaning Invalid command parameter(s) Insufficient data Command not supported Zero Power PLL Lock Fail Antenna Fault (not present or shorted) Subcommand not supported Invalid subcommand parameter(s) Undefined Error Note: Error Codes are present in the first data byte of a Response message when the Response Status Code = 0xFF (Error). 1.6.
1.8 Technical specifications: MPR5000 / MPR6000 / MPR7000 FREQUENCY OF OPERATION REGULATORY COMPLIANCE HOST INTERFACE 902-928 MHz (US ISM band) 27 dBm (0.5 Watt) 30 dBm (1.
1.9 Notices 1.9.1 RFID limitations Communication between tags and readers at UHF frequencies is a complex phenomenon depending on details of the environment surrounding the tags and reader(s) as well as the equipment being used. Some environmental aspects (such as tag placement and orientation) may be controllable by the user; others (such as reflections of the RF radiation by ambient objects) are generally not.
not limited to loss of profits, revenue, or anticipated loss of profits or revenue, arising out of the use or inability to use any WJ Communications Inc. product, even if WJ Communications Inc. has been advised or the possibility of such damages or they are foreseeable, or for claims by any third party. 1.9.4 Patents Portions of the products described in this manual may be covered by currently-pending US and foreign patents. 1.9.
NOTE: Changes or modifications not expressly approved by WJ Communications could void the user's authority to operate the equipment described in this manual. The MPR6000 and MPR7000 have been approved for use only with approved external antennas described in this manual; use of any other antenna may void the user’s authority to operate the equipment. 1.10.1.