User's Guide

Table Of Contents
ThingMagic M6e User Guide 21
www.JADAKtech.com
4 Communication Protocol
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.
This protocol allows for each command to have its own timeout because some commands require more
time to execute than others. The host must manage retries, if necessary. The host must keep track of the
state of the intended reader if it reissues a command.
Host-to-Reader Communication
Host-to-reader communication is packetized according to the following diagram. The reader can only
accept one command at a time, and commands are executed serially, so the host waits for a reader-to-host
response before issuing another host-to-reader command packet.
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.
CCITT CRC-16 Calculation
The same CRC calculation is performed on all serial communications between the host and the reader. The
CRC is calculated on the Data Length, Command, Status Word, and Data bytes. The header is not
included in the CRC.
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.
Host-To-Reader Communication
Header
Data
Length
Command Data CRC-16 Checksum
Hdr Len Cmd - - - - - CRC Hi I CRC LO
1 byte 1 byte 1 byte 0 to 250 bytes 2 bytes
Reader-To-Host Communication
Header
Data
Length
Command
Status
Word
Data CRC-16 Checksum
Hdr Len Cmd - - - - - CRC Hi I CRC LO
1 byte 1 byte 1 byte 2 bytes 0 to 248
bytes
2 bytes