875-0053-08 RevA M6e Hardware Guide For: M6e (Firmware Ver. 1.13.
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.
A DIVISION OF TRIMBLE Revision Table Date Version Description 4/2010 01 RevA First Draft for Beta release 8/2010 01 RevB • Updated GPIO content • Added FCC regulation info section 12/2010 02 Rev1 Updated for GA release • new devkit content • added approved antennas list • updated power consumption data • updated Gen2 settings 2/2011 02 Rev2 Updated Regulatory info 5/2011 03 RevA • Added M6e-A info • updated ESD info 1/2012 04 RevA • updated devkit getting started section • added new M6e
A DIVISION OF TRIMBLE 4
A DIVISION OF TRIMBLE Contents Communication Regulation Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 M6e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Federal Communication Commission Interference Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Industry Canada . . . . . . . . . . . . . . . . . . .
A DIVISION OF TRIMBLE M6e Mechanical Drawing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Authorized Antennas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 M6e-A Authorized Cables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Firmware Overview . . . . . . . . . . .
A DIVISION OF TRIMBLE Tag Streaming/Continuous Reading 57 Tag Read Meta Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 Power Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Power Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A DIVISION OF TRIMBLE FAULT_AFE_NOT_ON – 405h 75 FAULT_PROTOCOL_WRITE_FAILED – 406h 76 FAULT_NOT_IMPLEMENTED_FOR_THIS_PROTOCOL – 407h 76 FAULT_PROTOCOL_INVALID_WRITE_DATA – 408h 76 FAULT_PROTOCOL_INVALID_ADDRESS – 409h 76 FAULT_GENERAL_TAG_ERROR – 40Ah 77 FAULT_DATA_TOO_LARGE – 40Bh 77 FAULT_PROTOCOL_INVALID_KILL_PASSWORD – 40Ch 77 FAULT_PROTOCOL_KILL_FAILED - 40Eh 77 FAULT_PROTOCOL_BIT_DECODING_FAILED - 40Fh 78 FAULT_PROTOCOL_INVALID_EPC – 410h 78 FAULT_PROTOCOL_INVALID_NUM_DATA – 411h 78 FAULT_GEN2 PROTO
A DIVISION OF TRIMBLE Powering up and Connecting to a PC 88 Devkit USB Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 USB/RS232 89 Native USB 89 Devkit Jumpers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 Devkit Schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A DIVISION OF TRIMBLE 10
Communication Regulation Information A DIVISION OF TRIMBLE Communication Regulation Information The M6e module is available in two variants. The corresponding regulatory information follows: M6e - This module is covered under an FCC Modular Approval license and is limited to 30dBm RF Output power when used in the FCC/NA Region. M6e-A - This module is covered under an FCC Limited Modular Approval license and can be operated at the full 31.5dBm RF Output Power with certain restrictions.
M6e M6e EMC FCC 47 CFR, Part 15 Industrie Canada RSS-210 M6e Regulatory Information Federal Communication Commission Interference Statement This equipment has been tested and found to comply with the limits for a Class B digital device, pursuant to Part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference in a residential installation.
M6e A DIVISION OF TRIMBLE 1. The antenna(s) must be installed such that a minimum separation distance of 25cm is maintained between the radiator (antenna) & userʼs/nearby peopleʼs body at all times. 2. The transmitter module must not be co-located with any other antenna or transmitter. As long as the two conditions above are met, further transmitter testing will not be required.
M6e End Product Labeling The final end product must be labeled in a visible area with the following: “Contains Transmitter Module FCC ID: QV5MERCURY6E” or “Contains FCC ID: QV5MERCURY6E.” Industry Canada Under Industry Canada regulations, this radio transmitter may only operate using an antenna of a type and maximum (or lesser) gain approved for the transmitter by Industry Canada.
M6e A DIVISION OF TRIMBLE End Product Labeling The final end product must be labeled in a visible area with the following: “Contains ThingMagic Inc. Mercury6e (or appropriate model number youʼre filing with IC) transmitting module FCC ID: QV5MERCURY6E-A (IC: 5407A-MERCURY6EA)” Industrie Canada Conformément à la réglementation d'Industrie Canada, le présent émetteur radio peut fonctionner avec une antenne d'un type et d'un gain maximal (ou inférieur) approuvé pour l'émetteur par Industrie Canada.
M6e Authorized Antennas This device has been designed to operate with the antennas listed in Authorized Antennas. Antennas not included in this list are strictly prohibited for use with this device.
M6e-A A DIVISION OF TRIMBLE M6e-A EMC FCC 47 CFR, Part 15 Industrie Canada RSS-210 Federal Communication Commission Interference Statement This equipment has been tested and found to comply with the limits for a Class B digital device, pursuant to Part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference in a residential installation.
M6e-A 4. The transmitter module must not be co-located with any other antenna or transmitter. As long as the two conditions above are met, further transmitter testing will not be required. However, the OEM integrator is still responsible for testing their end-product for any additional compliance requirements required with this module installed (for example, digital device emissions, PC peripheral requirements, etc.).
M6e-A A DIVISION OF TRIMBLE or “Contains FCC ID: QV5MERCURY6E-A.” Industry Canada Under Industry Canada regulations, this radio transmitter may only operate using an antenna of a type and maximum (or lesser) gain approved for the transmitter by Industry Canada. To reduce potential radio interference to other users, the antenna type and its gain should be so chosen that the equivalent isotropically radiated power (e.i.r.p.) is not more than that necessary for successful communication.
M6e-A Industrie Canada Conformément à la réglementation d'Industrie Canada, le présent émetteur radio peut fonctionner avec une antenne d'un type et d'un gain maximal (ou inférieur) approuvé pour l'émetteur par Industrie Canada. Dans le but de réduire les risques de brouillage radioélectrique à l'intention des autres utilisateurs, il faut choisir le type d'antenne et son gain de sorte que la puissance isotrope rayonnée équivalente (p.i.r.e.
A DIVISION OF TRIMBLE Mercury6e Introduction The ThingMagic® Mercury6e® (M6e) embedded module is an RFID engines that you can integrate with other systems to create RFID-enabled products. Applications to control the M6e modules and derivative products can be written using the high level MercuryAPI. The MercuryAPI supports Java, .NET and C programming environments.
A DIVISION OF TRIMBLE 22 Mercury6e Introduction
A DIVISION OF TRIMBLE Hardware Overview The following section provides detailed specifications of the M6e hardware including: Hardware Interfaces Power Requirements Environmental Specifications Assembly Information Hardware Overview 23
Hardware Interfaces A DIVISION OF TRIMBLE Hardware Interfaces Antenna Connections The M6e supports four monostatic bidirectional RF antennas through four MMCX connectors: labeled J1 through J4 on the module. See Cables and Connectors for more information on antenna connector parts. The maximum RF power that can be delivered to a 50 ohm load from each port is 1.4 Watts, or +31.5 dBm (regulatory requirements permitting). Note The RF ports can only be energized one at a time.
Hardware Interfaces A DIVISION OF TRIMBLE Digital/Power Connector The digital connector provides power, serial communications signals, shutdown and reset signals to the M6e module, and access to the GPIO inputs and outputs. These signals are provided through connector part number: Molex 53261-1571 - 1.25mm pin centers, 1 amp per pin rating. which mates with Molex housing p/n 51021-1500 with crimps p/n 638110300. See Cables and Connectors for more information on typical cable parts.
Hardware Interfaces A DIVISION OF TRIMBLE logic level UART supports complete functionality. The USB port supports complete functionality except the lowest power operational mode. Note Power Consumption specifications apply to control via the TTL UART. Note It is not recommended to use the TTL interface when planning to operate the module in Tag Streaming/Continuous Reading mode.
Hardware Interfaces A DIVISION OF TRIMBLE Note The baudrate in the Boot Loader mode depends on whether the module entered the bootloader mode after a power-up or through an assert or “boot bootloader” user command. Upon power up if the Reset Line is LOW then the default baud rate of 115200 will be used. If the module returns to the bootloader from Application Firmware mode, then the current state and baudrate will be retained. USB Interface Supports USB 2.
Hardware Interfaces A DIVISION OF TRIMBLE be adversely affected. The following instructions will yield specification compliant operation. On power up, the M6E module configures its GPIOs as inputs to avoid contention from user equipment that may be driving those lines. The input configuration is as a 3.3 volt logic CMOS input and will have a leakage current not in excess of 400 nA. The input is in an undetermined logic level unless pulled externally to a logic high or low.
Power Requirements A DIVISION OF TRIMBLE Power Requirements RF Power Output The M6e supports separate read and write power level which are command adjustable via the MercuryAPI. Power levels must be between: – Minimum RF Power = +5 dBm – Maximum RF Power = +31.5 dBm (+/- 0.5 dB accuracy above +15 dBm) Note Maximum power may have to be reduced to meet regulatory limits, which specify the combined effect of the module, antenna, cable and enclosure shielding of the integrated product.
Power Requirements A DIVISION OF TRIMBLE Minimum cable insertion loss = 0.8 dB Pmax = 36 - 6 + 0.8 = 30.8 dBm The maximum RF power that may be set using this configuration is 30.8 dBm (see Warning above). Power Supply Ripple The following are the minimum requirements to avoid module damage and to insure performance and regulatory specifications are met. Certain local regulatory specifications may require tighter specifications.
Power Requirements A DIVISION OF TRIMBLE in the Power Management section. M6e Power Consumption RF Transmit Power Setting (dBm) Max Power1 (Watts) Transmit CW Transmit Mode = DRM +31.5 7.52 5.0 +/- 5% 1400 Tag Reading Transmit Mode = DRM +31.5 7.52 5.0 +/- 5% 1400 Tag Reading Transmit Mode = Power Save +30 5.8 5.0 +/- 5% 1060 Tag Reading Transmit Mode = DRM + PreDistortion +30 6.2 5.0 +/- 5% 1200 Tag Reading Transmit Mode = DRM +17 and below 4 5.
Environmental Specifications A DIVISION OF TRIMBLE Environmental Specifications Operating Temperature The M6e module may be considered as a single electronic component. It is designed so that all the internal components have safe margins to their thermal limits when the heat spreading plate (bottom, non-labeled side) does not exceed 70°C. The heat spreading plate temperature must not exceed 70 degrees C. Heat sinking will be required for high duty cycle applications.
Assembly Information A DIVISION OF TRIMBLE Assembly Information Cables and Connectors The following are the cables and connectors used in the M6e Developerʼs Kit interface board: Digital Interface The cable assembly used consists of the following parts: 2 Connector Shells [Molex 51021-1500] with 15 Crimp Contacts each [Molex 500798100] 1 Wire (#28 AWG 7x36 - Black, Teflon) for Pin 1 connection [Alpha 284/7-2] 14 Wires (#28 AWG 7x36 - White, Teflon) for other connections [Alpha 284/7-1] Note Pin nu
Assembly Information A DIVISION OF TRIMBLE M6e Mechanical Drawing 34 Hardware Overview
Authorized Antennas A DIVISION OF TRIMBLE Authorized Antennas This device has been designed to operate with the antennas listed below, and having a maximum gain of 6 dBiL. Antennas not included in this list or having a gain greater than 6 dBiL are strictly prohibited for use with this device. The required antenna impedance is 50 ohms. Vendor Model Linear Gain1 (dBi) ThingMagic ANT-NA-A5 6.0 ThingMagic ANT-WB-6-2025 5.1 ThingMagic ANT-NA-9025 3.4 ThingMagic ANT-NB-7-2031 6.
M6e-A Authorized Cables A DIVISION OF TRIMBLE M6e-A Authorized Cables The following table contains the cable loss values for authorized shielded coaxial cables provided by ThingMagic Cable Description 36 ThingMagic Part Number Insertion Loss 6' RTNC to RTNC Cable CBL-P6 0.8 dB 12' RTNC to RTNC Cable CBL-P12 1.5 dB 20' RTNC to RTNC Cable CBL-P20 2.4 dB 20' RTNC to RTNC Plenum Cable CBL-P20-PL 2.4 dB 25' RTNC to RTNC Cable CBL-P25 3.
A DIVISION OF TRIMBLE Firmware Overview The following section provides detailed description of the M6e firmware components: Boot Loader Application Firmware Custom On-Reader Applications Firmware Overview 37
Boot Loader A DIVISION OF TRIMBLE Boot Loader The boot loader provides low-level functionality. This program provides the low level hardware support for configuring communication settings, loading Application Firmware and storing and retrieving data to/from flash. When a module is powered up or reset, the boot loader code is automatically loaded and executed. Note Unlike previous ThingMagic modules (M4e and M5e) the M6e bootloader should effectively be invisible to the user.
Application Firmware A DIVISION OF TRIMBLE Application Firmware The application firmware contains the tag protocol code along with all the command interfaces to set and get system parameters and perform tag operations. The application firmware is, by default, started automatically upon power up. Programming the M6e Applications to control the M6e module and derivative products are written using the high level MercuryAPI. The MercuryAPI supports Java, .NET and C programming environments.
Custom On-Reader Applications A DIVISION OF TRIMBLE Custom On-Reader Applications The M6e does not support installing customer applications on the module. All reader configuration and control is performed using the documented MercuryAPI methods in applications running on a host processor.
A DIVISION OF TRIMBLE Communication Protocol The following section provides an overview of the low level serial communications protocol used by the M6e.
Serial Communication Protocol A DIVISION OF TRIMBLE Serial Communication Protocol The serial communication between a computer (host) and the M6e is based on a synchronized command-response/master-slave mechanism. Whenever the host sends a message to the reader, it cannot send another message until after it receives a response. The reader never initiates a communication session; only the host initiates a communication session.
Serial Communication Protocol A DIVISION OF TRIMBLE Reader-to-Host Communication The following diagram defines the format of the generic Response Packet sent from the reader to the host. The Response Packet is different in format from the Request Packet.
User Programming Interface A DIVISION OF TRIMBLE User Programming Interface The M6e does not support programming to the serial protocol directly. All user interaction with the M6e must be performed using the MercuryAPI. The MercuryAPI supports Java, .NET and C programming environments. The MercuryAPI Software Development Kit (SDK) contains sample applications and source code to help developers get started demoing and developing functionality.
A DIVISION OF TRIMBLE Functionality of the Mercury6e The following section provides detailed descriptions of the M6e features and functionality that are supported through the use of the MercuryAPI.
Regulatory Support A DIVISION OF TRIMBLE Regulatory Support Supported Regions The M6e has differing levels of support for operation and use under the laws and guidelines of several regions. The regional support is shown in the following table. Supported Regions Region Regulatory Support North America (NA) FCC 47 CFG Ch. 1 Part 15 Industrie Canada RSS-210 European Union (EU3) Revised ETSI EN 302 208 Notes By default EU3 will use four channels. EU3 region can also be used in a single channel mode.
Regulatory Support A DIVISION OF TRIMBLE Supported Regions Peopleʼs Republic of China (PRC & CN) SRRC, MII The PRC specifications limits channels 920 to 920.5MHz and 924.5 to 925.0MHz to transmitting at 100mW or below. The default hop table uses only the center channels which allow 2W ERP, 1W conducted, power output.
Regulatory Support A DIVISION OF TRIMBLE C ! A U T I O N ! ! Use these commands with extreme caution. It is possible to change the moduleʼs compliance with the regional regulations. Frequency Units All frequencies in the M6e are expressed in kHz using unsigned 32-bit integers. For instance, a carrier frequency of 915 MHz is expressed as 915000 kHz.
Regulatory Support A DIVISION OF TRIMBLE For example: In the NA region, setting a frequency of 902,999 kHz results in a setting of 902,750 kHz. When setting the frequency of the module, any frequencies outside of the valid range for the specified region are rejected. Frequency Hop Table The frequency hop table determines the frequencies used by the M6e when transmitting. The hop table characteristics are: Contains up to 62 slots. Valid frequencies for the region currently selected.
Protocol Support A DIVISION OF TRIMBLE Protocol Support The M6e has the ability to support many different tag protocols. Using the MercuryAPI ReadPlan classes the M6e can be configured to single or multi-protocol Read operations.
Protocol Support A DIVISION OF TRIMBLE reading data faster than the transport can handle and send, and the readerʼs buffer might fill up. Protocol Specific Functionality See the MercuryAPI Programmers Guide and language specific reference guides for details on supported Gen2 command functionality. I-PX Protocol Configuration Options The M6e supports multiple I-PX profiles including the ability to specify the Return Link Frequency, encoding and modulation scheme.
Protocol Support A DIVISION OF TRIMBLE protocol options are set in the MercuryAPI Reader Configuration Parameters (/reader/ iso18000-6b/*).
Antenna Ports A DIVISION OF TRIMBLE Antenna Ports The M6e has four monostatic antenna ports. Each port is capable of both transmitting and receiving. The modules also support Using a Multiplexer, allowing up to 16 total logical antenna ports, controlled using two GPIO lines and the internal physical port J1/J2/J3/J4 switching. Note The M6e does not support bistatic operation.
Antenna Ports A DIVISION OF TRIMBLE GPIO 1 & 2 Used for Antenna Switching Logical Antenna Setting GPIO Output 1 State GPIO Output 2 State Active M6e Physical Port 1 Low Low J1 2 Low Low J2 3 Low Low J3 4 Low Low J4 5 Low High J1 6 Low High J2 7 Low High J3 8 Low High J4 9 High Low J1 10 High Low J2 11 High Low J3 12 High Low J4 13 High High J1 14 High High J2 15 High High J3 16 High High J4 If only one GPIO Output line is used for antenna
Antenna Ports A DIVISION OF TRIMBLE Logical Antenna Setting GPIO Output 1 State Active M6e Physical Port 3 Low J3 4 Low J4 9 High J1 10 High J2 11 High J3 12 High J4 Note The “missing” logical antenna settings are still usable when only one GPIO line is used for antenna control and simply results in redundant logical antenna settings. For example, using only GPIO 1, logical setting 4 and 8 both result in GPIO1=Low and M6e port J4 active.
Antenna Ports A DIVISION OF TRIMBLE reader/antenna/settlingTimeList, respectively. The order the antennas settings are defined does not affect search order. Note Settling time is the time between the control lines switching to the next antenna setting and RF turning on for operations on that port. This allows time for external multiplexerʼs to fully switch to the new port before a signal is sent, if necessary. Default value is 0.
Tag Handling A DIVISION OF TRIMBLE Tag Handling When the M6e performs inventory operations (MercuryAPI Read commands) data is stored in a Tag Buffer until retrieved by the client application, or streamed directly to the client if operating in Tag Streaming/Continuous Reading mode. Tag Buffer The M6e uses a dynamic buffer that depends on EPC length and quantity of data read. As a rule of thumb it can store a maximum of 1024 96-bit EPC tags in the TagBuffer at a time.
Tag Handling A DIVISION OF TRIMBLE Note It is recommended the USB Interface be used when operating the M6e in continuous reading mode. When the TTL Level UART Interface is used it is not possible for the module to detect a broken communications interface connection and stop streaming the tag results.
Tag Read Meta Data A DIVISION OF TRIMBLE Tag Read Meta Data In addition to the tag EPC ID resulting from M6e inventory operation each TagReadData (see MercuryAPI for code details) contains meta data about how, where and when the tag was read. The specific meta data available for each tag read is as follows: Tag Read Meta Data Meta Data Field Description Antenna ID The antenna on with the tag was read.
Power Management A DIVISION OF TRIMBLE Power Management The M6e is designed for power efficiency and offers several different power management modes. The following power management modes affect the power consumption during different periods of M6e usage and impact performance in different ways. The available power management modes are: Power Modes - set in /reader/powerMode - Controls the power savings when the M6e is idle.
Power Management A DIVISION OF TRIMBLE shown in the table under Power Consumption. The behavior of each mode is as follows: DRM Compliant Mode This mode maximizes performance in dense reader environments, minimizing interference when used with other M6e or similar DRM-compliant readers, and is fully compliant with the Gen2 DRM spectral mask. Power Save Mode (non-DRM Compliant) This mode reduces the power consumption during RF operations but is not 100% compliant with the DRM spectral mask.
Performance Characteristics A DIVISION OF TRIMBLE Performance Characteristics Event Response Times The following table provides some metrics on how long common M6e operations take. An event response time is defined as the maximum time from the end of a command (end of the last bit in the serial stream) or event (e.g. power up) to the response event the command or event causes.
Save and Restore Configuration A DIVISION OF TRIMBLE Save and Restore Configuration The M6e supports saving module and protocol configuration parameters to the module flash to provide configuration persistence across boots. Currently (M6e FW v.1.B) the region, baud-rate, and default protocol can be saved across reboots. Future firmware upgrades will support saving other configuration values.
Save and Restore Configuration A DIVISION OF TRIMBLE 64 Functionality of the Mercury6e
Common Error Messages Appendix A: Error Messages Common Error Messages The following table lists the common faults discussed in this section.
Common Error Messages Solution Check the following: Make sure the command is supported in the currently running program. Check the documentation for the opCode the host sent and make sure it is correct and supported. Check the previous module responses for an assert (0x7F0X) which will reset the module into the bootloader. FAULT_UNIMPLEMENTED_OPCODE – 102h Cause Some of the reserved commands might return this error code.
Common Error Messages FAULT_MSG_INVALID_FREQ_RECEIVED (104h) Cause A message was received by the reader to set the frequency outside the supported range Solution Make sure the host does not set the frequency outside this range or any other locally supported ranges. FAULT_MSG_INVALID_PARAMETER_VALUE - (105h) Cause The reader received a valid command with an unsupported or invalid value within this command. For example, currently the module supports four antennas.
Common Error Messages Solution Check the command being invoked against the documentation. FAULT_INVALID_BAUD_RATE - (10Ah) Cause When the baud rate is set to a rate that is not specified in the Baud Rate table, this error message is returned. Solution Check the table of specific baud rates and select a baud rate.
Bootloader Faults Bootloader Faults The following table lists the common faults discussed in this section. Fault Message Code FAULT_BL_INVALID_IMAGE_CRC 200h FAULT_BL_INVALID_APP_END_ADDR 201h FAULT_BL_INVALID_IMAGE_CRC – 200h Cause When the application firmware is loaded the reader checks the image stored in flash and returns this error if the calculated CRC is different than the one stored in flash.
Flash Faults Flash Faults The following table lists the common faults discussed in this section.
Flash Faults FAULT_FLASH_UNDEFINED_ERROR – 302h Cause This is an internal error and it is caused by a software problem in module. Solution When this occurs make note of the operations you were executing, save FULL error response and send a testcase reproducing the behavior to support@thingmagic.com. FAULT_FLASH_ILLEGAL_SECTOR – 303h Cause An erase or write flash command was received with the sector value and password not matching.
Flash Faults Solution When this occurs make note of the operations you were executing, save FULL error response and send a testcase reproducing the behavior to support@thingmagic.com. FAULT_FLASH_VERIFY_FAILED – 306h Cause The module received a write flash command that was unsuccessful because data being written to flash contained an uneven number of bytes.
Protocol Faults Protocol Faults The following table lists the common faults discussed in this section.
Protocol Faults FAULT_NO_TAGS_FOUND – (400h) Cause A command was received (such as like read, write, or lock) but the operation failed. There are many reasons that can cause this error to occur. Here is a list of possible reasons that could be causing this error: No tag in the RF field Read/write power too low Antenna not connected Tag is weak or dead Solution Make sure there is a good tag in the field and all parameters are set up correctly.
Protocol Faults Solution This value is invalid or this version of SW does not support the protocol value. Check the documentation for the correct values for the protocols in use and that you are licensed for it. FAULT_WRITE_PASSED_LOCK_FAILED – 403h Cause During a Write Tag Data for ISO18000-6B or UCODE, if the lock fails, this error is returned. The write command passed but the lock did not. This could be a bad tag.
Protocol Faults FAULT_PROTOCOL_WRITE_FAILED – 406h Cause An attempt to modify the contents of a tag failed. There are many reasons for failure. Solution Check that the tag is good and try another operation on a few more tags. FAULT_NOT_IMPLEMENTED_FOR_THIS_PROTOCOL – 407h Cause A command was received which is not supported by a protocol. Solution Check the documentation for the supported commands and protocols.
Protocol Faults FAULT_GENERAL_TAG_ERROR – 40Ah Cause This error is used by the GEN2 module. This fault can occur if the read, write, lock, or kill command fails. This error can be internal or functional. Solution Make a note of the operations you were performing and contact ThingMagic at http:// support.thingmagic.com FAULT_DATA_TOO_LARGE – 40Bh Cause A command was received to Read Tag Data with a data value larger than expected or it is not the correct size.
Protocol Faults FAULT_PROTOCOL_BIT_DECODING_FAILED - 40Fh Cause Attempt to operate on a tag with an EPC length greater than the Maximum EPC length setting. Solution Check the EPC length being written. FAULT_PROTOCOL_INVALID_EPC – 410h Cause This error is used by the GEN2 module indicating an invalid EPC value has been specified for an operation. This fault can occur if the read, write, lock, or kill command fails. Solution Check the EPC value that is being passed in the command resulting in this error.
Protocol Faults Solution Check the data that is being passed in the command resulting in this error. Try with a different tag. FAULT_GEN2_PROTOCOL_MEMORY_OVERRUN_BAD_PC 423h Cause This is an error returned by Gen2 tags. The specified memory location does not exist or the PC value is not supported by the Tag. Solution Check the data that is being written and where its being written to in the command resulting in this error.
Protocol Faults FAULT_GEN2 PROTOCOL_NON_SPECIFIC_ERROR - 42Fh Cause This is an error returned by Gen2 tags. The tag does not support error specific codes. Solution Check the data that is being written and where its being written to in the command resulting in this error. Try with a different tag. FAULT_GEN2 PROTOCOL_UNKNOWN_ERROR - 430h Cause This is an error returned by M6e when no more error information is available about why the operation failed.
Analog Hardware Abstraction Layer Faults Analog Hardware Abstraction Layer Faults FAULT_AHAL_INVALID_FREQ – 500h Cause A command was received to set a frequency outside the specified range. Solution Check the values you are trying to set and be sure that they fall within the range of the set region of operation. FAULT_AHAL_CHANNEL_OCCUPIED – 501h Cause With LBT enabled an attempt was made to set the frequency to an occupied channel. Solution Try a different channel.
Analog Hardware Abstraction Layer Faults Solution Connect a detectable antenna (antenna must have some DC resistance). FAULT_TEMPERATURE_EXCEED_LIMITS – 504h Cause The module has exceeded the maximum or minimum operating temperature and will not allow an RF operation until it is back in range.
Analog Hardware Abstraction Layer Faults Solution Use the correct antenna setting or change the reader configuration.
Tag ID Buffer Faults Tag ID Buffer Faults The following table lists the common faults discussed in this section. Fault Message Code FAULT_TAG_ID_BUFFER_NOT_ENOUGH_TAGS_AVAILABLE – 600h 600h FAULT_TAG_ID_BUFFER_FULL – 601h 601h FAULT_TAG_ID_BUFFER_REPEATED_TAG_ID – 602h 602h FAULT_TAG_ID_BUFFER_NUM_TAG_TOO_LARGE – 603h 603h FAULT_TAG_ID_BUFFER_NOT_ENOUGH_TAGS_AVAILABLE – 600h Cause A command was received to get a certain number of tag ids from the tag id buffer.
Tag ID Buffer Faults FAULT_TAG_ID_BUFFER_REPEATED_TAG_ID – 602h Cause The module has an internal error. One of the protocols is trying to add an existing TagID to the buffer. Solution Send a testcase reproducing the behavior to support@thingmagic.com. FAULT_TAG_ID_BUFFER_NUM_TAG_TOO_LARGE – 603h Cause The module received a request to retrieve more tags than is supported by the current version of the software. Solution Send a testcase reproducing the behavior to support@thingmagic.com.
System Errors System Errors FAULT_SYSTEM_UNKNOWN_ERROR – 7F00h Cause The error is internal. Solution Send a testcase reproducing the behavior to support@thingmagic.com. FAULT_TM_ASSERT_FAILED – 7F01h Cause An unexpected Internal Error has occurred. Solution The error will cause the module to switch back to Bootloader mode. When this occurs make note of the operations you were executing, save FULL error response and send a testcase reproducing the behavior to support@thingmagic.com.
Appendix B: Getting Started - Devkit Devkit Hardware Included Components With the devkit, you will receive the following components: The M6e module and power/interface developers board One USB cable One antenna One coax cable One 9V power supply International power adapter kit Sample tags One paper insert: – QuickStart Guide - Details on which documents and software to download to get up and running quickly, along with details on how to register for and contact support.
Devkit Hardware Connecting the Antenna ThingMagic supplies one antenna that can read tags from 20ʼ away with most of the provided tags. The antenna is monstatic. Use the following procedure to connect the antenna to the DevKit. 1. Connect one end of the coax cable to the antenna. 2. Connect the other end of the cable to the antenna port 1 connector on the DevKit. Powering up and Connecting to a PC After connecting the antenna you can power up the DevKit and establish a host connection. 1.
Devkit Hardware Devkit USB Interfaces USB/RS232 The USB interface (connector labeled USB/RS232) closest to the power plug is to the RS232 interface of the M6e through an FTDI USB to serial converter. The drivers for it are available at http://www.ftdichip.com/Drivers/VCP.htm Please follow the instructions in the installation guide appropriate for your operating system.
Devkit Hardware c. Select View | Devices by Type | Ports (COM & LPT) The device appears as Mercury6eUltra (COM#). Devkit Jumpers J8 Jumpers to connect M6e I/O lines to devkit. J9 Header for alternate power supply. Make sure DC plug (J1) is not connected if using J9. J10, J11, J13, J15 Jump pins OUT to GPIO# to connect M6e GPIO lines to output LEDs. Jumpe pins IN to GPIO# to connect M6e GPIO to corresponding input switches SW[3-6]GPIO#.
Devkit Hardware Devkit Schematics Available upon request from support@thingmagic.com.
Demo Application Demo Application A demo application which supports multi-protocol reading and writing is provided in the MercuryAPI SDK package and as a standalone application, both are available on rfid.thingmagic.com/devkit. The executable for this example is included in the MercuryAPI SDK package under /cs/samples/exe/Universal-Reader-Assistant2.0.exe. See the Universal-Reader-Assistant 2.0 User Guide (on rfid.thingmagic.com/devkit) for usage details.
Notice on Restricted Use of the DevKit Notice on Restricted Use of the DevKit The Mercury6e Developers Kit (DevKit) is intended for use solely by professional engineers for the purpose of evaluating the feasibility of applications. The userʼs evaluation must be limited to use within a laboratory setting. This DevKit has not been certified for use by the FCC in accordance with Part 15 of the FCC regulations, ETSI, KCC or any other regulatory bodies and may not be sold or given for public use.
Notice on Restricted Use of the DevKit 94 Appendix B: Getting Started - Devkit
Appendix C: Environmental Considerations This Appendix details environmental factors that should be considered relating to reader performance and survivability. ElectroStatic Discharge (ESD) Considerations W A R N I N G ! The M6e 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.
ElectroStatic Discharge (ESD) Considerations has returned to the bootloader to prevent any further damage. This jump to boot loader caused by power amp damage occurs at the start of any read tag commands. Ultimately determining that ESD is the root cause of failures is difficult because it relies on negative result experiments, i.e. it is the lack of failure after a configuration change, rather than a positive flag wave that says “Iʼm ESD”.
ElectroStatic Discharge (ESD) Considerations What actually gets to the M6e is also strongly influenced by the antenna installation, cabling, and grounding discussed above. Use the mean operating time statistic before and after one or more of the changes listed below to quantitatively determine if the change has resulted in an improvement. Be sure to restart your statistics after the change.
ElectroStatic Discharge (ESD) Considerations Raising the ESD Threshold For applications where full M6e power is needed for maximum tag read range and ESD is suspected the following components are recommended additions to the installation to raise the level of ESD the reader can tolerate: Select or change to 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.
Variables Affecting Performance Variables Affecting Performance Reader performance may be affected by the following variables, depending on the site where your Reader is being deployed: Environmental Tag Considerations Multiple Readers Environmental Reader performance may be affected by the following environmental conditions: Metal surfaces such as desks, filing cabinets, bookshelves, and wastebaskets may enhance or degrade Reader performance.
Variables Affecting Performance Tag Orientation: Reader performance is affected by the orientation of the tag in the antenna field. The ThingMagic antenna is circularly polarized, so it reads face-to but not edge-to. Tag Model: Many tag models are available. Each model has its own performance characteristics. Multiple Readers The Reader adversely affect performance of 900 MHz devices. These devices also may degrade performance of the Reader.