2
3. COMMUNICATION SPECIFICATIONS
3-1. Communication Procedures
This device communicates with its host using block transmissions of resend requests.
When communications are started from the host, the host will transmit a command block to
the reader/writer.
When the reader/writer receives the command block, it will respond with either of the
characters of ACK (normal), NAK (resend request) or DLE (reject).
If the reader/writer responds with the ACK characters, the device will execute the command
that was sent by the host.
When the command has been executed, the reader/writer returns a response block to the
host.
The host needs to respond either the ACK or NAK characters in response to the returned
response block.
If the host responds with the ACK characters, the command is completed, and it is ready to
send the next command.
When the reader/writer receives a command block, it calculates the command block BCC,
and compares it with the BCC sent by the host.
If the calculated BCC and the received BCC do not match, the reader/writer responds with the
NAK characters. When the reader/writer has responded with the NAK characters, the host
resends that command block.
In the same way, the reader/writer should calculate on the host side the BCC of the response
block that is sent.
If the BCC values sent by the reader/writer do not match the results that are compared, the
host must respond with the NAK characters.
When the host responds with the NAK characters, the reader/writer resends the response
block.
There is no limit to the number of times to resend requests or sequences. Therefore, the host
side must be controlled.
If the reader/writer detects an error in the command block sent by the host, it will respond with
the DLE characters. When the reader/writer responds to the command block sent by the host
with the DLE characters, the command that was sent becomes invalid and no response block
is subsequently sent.
Normal sequence
Host Reader/writer
Command Sent Command received
ACK received ACK sent
Command processed
Response received Response sent
ACK sent ACK received
Sequence resent
Host Reader/writer
Command Sent Command received
NAK received NAK sent
Command resent Command received
ACK received ACK sent
Command processed
Response received Response sent
NAK sent NAK received
Response received Response resent
ACK sent ACK received