User's Guide

ThingMagic M3e User Guide
29
4 Communication Protocol
www.JADAKtech.com
Serial Communication Protocol
ThingMagic does not support bypassing the MercuryAPI to send commands to the ThingMagic M3e
module directly, but some information about this interface is useful when troubleshooting and debugging
applications which interface with the MercuryAPI.
The serial communication between MercuryAPI and ThingMagic M3e 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 time-out because some commands require more
time to execute than others. MercuryAPI must manage retries, if necessary. MercuryAPI 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.
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
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.
Reader-To-Host Communication
Header
Data
Length
Command
Status
Word
Data CRC-16 Checksum
Hdr
Len
Cmd
Status
Word
- - - - -
CRC Hi I CRC LO
1 byte
1 byte
1 byte
2 bytes
0 to 248
bytes
2 bytes
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.