User's Manual

CHAPTER 6 READER-HOST PROTOCOL
NANOSCANNER READER USER GUIDE DOC # 8101029-000 REV A 47
© 2003 Alien Technology™
Commands Overview
There are two distinct categories of reader-host command: those initiated by the
enterprise host (interactive commands), and those initiated by the reader itself
(autonomous commands).
I
NTERACTIVE COMMANDS
Interactive commands are initiated by a programmer, who creates and issues a
command to the reader. The reader always responds to these commands with an
immediate reply.
Interactive commands are used to configure and operate the reader, as well as to
interrogate tags and retrieve stored lists on demand.
A
UTONOMOUS COMMANDS
Autonomous commands instruct the reader to perform certain tasks, without
human intervention, according to conditions set by the programmer.
These commands typically tell the reader to read tags and then send messages
to the outside world based on user-defined triggers. For example, the reader can
be instructed to search the field until it sees a tag, then to read the tag and mail
the tag ID to a specified email address.
Command Format
All commands between the enterprise host system and the reader are human
readable ASCII text-based messages. For example, a command to set the logical
name of the reader using the Set Reader Name command takes the form:
Set ReaderName = My Alien Reader [CR][LF]
All commands to the reader are single line ASCII commands. These commands
are always terminated by a single carriage return / line feed character pair
[CR][LF], ascii code 0x0D followed by ascii 0x0A.
All replies from the reader are either single line or multiple line ASCII replies.
These replies are always terminated by a single carriage return / line feed
character pair [CR][LF] followed by a NULL character, ASCII codes 0x0D, 0x0A,
0x00. Where a reply comprises multiple text lines, each line is separated by a
single carriage return / line feed character pair [CR][LF], ascii code 0x0D followed
by ASCII 0x0A.
An example of a single line command / response is:
>Get ReaderName[CR][LF]
>ReaderName = Alien Reader[CR][LF][0]