background image

C

HAPTER 

T

AG 

F

UNDAMENTALS

 

R

EADER 

I

NTERFACE 

G

UIDE

 

D

OC

. C

ONTROL  

# 8101938-000 R

EV 

05 

25

where each product type and manufacturer code use well-defined memory codes 
that can be masked. 
 
Another example is to search for all Class I tags whose last three bits of a 64-bit 
EPC code are set to 1. The mask settings for this would be: 
 

set Mask = 3, 61, E0 

 

In other words, length = 3 bits, starting at bit 61, and matching value E0

hex

. The 

mask value is specified as E0

hex

 (11100000

binary

) and not 07

hex

 (111

binary

) because 

07

hex

 is interpreted as 00000111

binary

, and when the bit pattern is applied as a 

mask, the bits are applied from left to right (most-significant-bit to least-
significant-bit). 

Persistent Sleep and Wake 

Tags have the ability to be put to sleep and awakened on command. Once tags 
have been put to sleep they will ignore any subsequent commands, even if 
addressed directly to them. The only command that these slept tags will respond 
to is wake, which will bring them back to life and make them respond to all 
commands again. 
 
The Sleep and Wake commands can act together in a powerful way to help 
address multiple tags in the field.  
 
By default the inventory and global scroll commands will read tags in the field, 
and leave them in a wakened state. This means that the very next time an 
acquire action is made, the same tags will answer back to the reader, resulting in 
an identical TagList. 
 
However it is possible to sleep tags are they are found. Both the inventory and 
global scroll modes support this action. In this scenario, as a tag is discovered by 
the reader, it is told to sleep. The very next time an acquire command is issued, 
the reader will scan the field of tags, but as they are all asleep, they will not 
answer and the TagList returned will be empty. 
 
The effects of the sleep-as-found mode can be reverted at any time by issuing a 
Wake command. This will immediately wake up all tags in the field of view, 
making them ready for subsequent acquire commands. 
 
This is a useful mode to use when dealing with very large numbers of tags in the 
field at once (>100 tags). Using these modes, the acquire command can discern 
as many tags as it can in one pass, leaving these tags asleep as it finds them. 
Then any subsequent acquire commands will now only be dealing with tags it 
missed in previous rounds, or tags that have entered the field since the last 
round. Thus a large population of tags can be sorted in smaller, more 
manageable rounds. 

Sleep, Wake, and Masks 

The Sleep and Wake commands always work with the current Mask setting. 
Therefore it is possible to Sleep a subset of tags before performing an acquire, or 
to Sleep all tags then Wake a subset before acquire. Combining Sleep, Wake, 
Masks and Acquire Modes offers up many interesting possibilities for tag reading 
that will address virtually all problems in the field.

Summary of Contents for ALR-8780

Page 1: ...ALR 9800 ALR 9780 ALR 8780 ALR 9770 ALR 9640 ALIEN TECHNOLOGY READER INTERFACE GUIDE All Fixed Readers July 12 2005 ...

Page 2: ... trademarks of Alien Technology Corporation in the U S and other countries All other trademarks are the property of their respective owners U S Government approval required when exporting the product described in this documentation Federal Acquisitions Commercial Software Government Users Subject to Standard License Terms and Conditions U S Government If this Software is being acquired by or on be...

Page 3: ... Discovery and the Reader Heartbeat 9 DHCP and Automatic Discovery 9 Serial Interrogation 10 Network Heartbeats 10 Heartbeat XML Tags 11 Heartbeats and Software 11 TagList Concepts 11 PersistTime 12 Tag Details 12 TagList Size 12 Reading Tags over the Network 12 Interactive Mode 13 Autonomous Mode 13 A Note about AutoMode on the ALR 9770 14 Defining the Autonomous Read Operation 14 Enter Autonomou...

Page 4: ... Sleep Wake and Masks 25 CHAPTER 4 ALIEN READER PROTOCOL 26 Reader Operation Overview 26 Overview of Commands 27 Interactive Mode 27 Autonomous Mode 27 Command Format 27 Suppressing Command Prompts 28 Interactive Command Format 28 Non Interactive Command Format 28 Get and Set Shortcuts 28 XML Messages 28 Command List 29 General Commands 29 Network Configuration Commands 30 Time Commands 30 Externa...

Page 5: ...ernal I O Commands 48 ExternalInput 48 ExternalOutput 49 InitExternalOutput 49 InvertExternalInput 50 InvertExternalOutput 50 TagList Commands 51 Get TagList t 51 PersistTime 52 TagListFormat 52 TagListCustomFormat 54 TagListAntennaCombine 55 Clear TagList 56 Acquisition Commands 56 AcquireMode 56 Inventory 57 Global Scroll 57 TagType 57 AcqCycles 58 AcqC1Cycles 59 AcqEnterWakeCount 59 AcqC1EnterW...

Page 6: ...tifyTrigger 74 NotifyFormat 75 NotifyHeader 76 NotifyKeepAliveTime 76 MailServer 77 MailFrom 77 NotifyRetryCount 77 NotifyRetryPause 78 NotifyNow 78 CHAPTER 5 TAG PROGRAMMING 79 Enabling The Programmer 79 Tag Memory Structure 79 Class I Tags 96 bit 80 Class I Tags 128 bit 80 Class BPT Tags 81 Programming Distance Power Levels 81 Programming Power 81 Programming Range 82 Programming Problems 82 Pro...

Page 7: ...mID 89 ProgramPassCode 90 ProgIncrementOnFail 90 Autonomous Mode Program 91 Autonomous Mode Program and Lock 91 Autonomous Mode Erase 91 Autonomous Mode Kill 92 APPENDIX A DTDS FOR XML DATA STRUCTURES 93 Heartbeat DTD 93 TagList DTD 93 Notification DTD 93 APPENDIX B UPGRADING READER FIRMWARE 94 ALR 9780 ALR 8780 ALR 9640 94 ALR 9800 94 ALR 9770 94 ...

Page 8: ......

Page 9: ... capabilities For an overview of RFID technology and a glossary of terms please refer to the RFID Primer included with your RFID Reader kit Audience For the purposes of this document we assume the readers of the Reader Interface Guide are competent PC users may be IT specialists network specialists or programmers have minimal previous knowledge of RFID technology are experienced in software develo...

Page 10: ...you must press ENTER to send the command RFID Reader commands are not case sensitive Although for clarity the commands may be shown in upper and lower case in this document you may type them in all lowercase characters if you prefer A space is required between the command verb such as get or set and the specific parameters as in the example get IPaddress However no space is required between the pa...

Page 11: ...and convenient the problem exists that in order to communicate with the reader you have to know its IP address Alien readers have a heartbeat mechanism to assist in discovery of readers on the network but this mechanism requires a host application such as the Gateway demonstration software to intercept the heartbeat messages and report them back to you In these circumstances the serial interface c...

Page 12: ...p the reader and observe the information reported over the serial port Perhaps the most important bits of information are the network settings since you need to know this in order to communicate with the reader using TCP IP The ALR 9800 displays a block of text similar to the following toward the end of the bootup sequence Network Settings MAC Address 00 80 66 10 2D 12 DHCP 1 IP Address 10 9 8 10 ...

Page 13: ...s Boot Boot Level 5 Initializing Network Interface Boot Boot Level 6 Network Success IP Address is 10 9 8 10 Boot Boot Level 7 Telnet Interface Success Port 23 Ready Both traces indicate that the reader can be contacted over TCP IP at the address 10 9 8 10 on port 23 6 If your reader supports the Alien Reader Protocol over serial the serial interface you will see the Alien command prompt At the co...

Page 14: ...e your readers are set up and configured you should either keep a record of their addresses or use some other mechanism for finding them such as the reader s Heartbeat messages described later Following are instructions for querying the reader for this information ALR 9800 AND ALR 9770 All of the relevant network settings for the ALR 9800 and ALR 9770 readers are displayed in the bootup sequence s...

Page 15: ...o activity longer than the NetworkTimeout setting Reader commands and instructions on their use are provided later in the chapter titled Alien Reader Protocol TCP IP Configuration To configure the system for network operation you will use the commands shown under the NETWORK heading of the reader s Help display There are five network commands that are used for network configuration get set DHCP ge...

Page 16: ...each value is accepted the reader replies with the accepted value 7 Type Reboot to reboot the reader and apply the new network settings The network settings can be immediately applied in the ALR 9800 by using the NetworkReset command This causes the network interfaces to be shut down and restarted with the new settings Note that both the Reboot and NetworkReset commands will drop any active TCP IP...

Page 17: ...th the basics of communicating with the reader are discussed in this chapter Reader Discovery and the Reader Heartbeat One of the problems common to many network appliances is simply discovering the address of the device on the network To operate these devices over the network users must know the device s IP address If an IP address is hard coded into the device this problem is solved and often a ...

Page 18: ...and specifies the time interval separating successive heartbeat messages sent out over the network The time is specified in seconds with a value of zero turning off the heartbeats The default value is 30 seconds i e send out a heartbeat message every 30 seconds set get HeartbeatPort This command specifies the port number that the UDP heartbeat messages are addressed to This is the port number that...

Page 19: ...telnet IPAddress into the command line of most computers HeartbeatTime is the time until the next heartbeat This time in seconds enables any application software to detect when a reader is powered down or the network connection breaks if a new heartbeat is not received after the expected time elapses then such an interruption to normal service can be detected MACAddress gives the unique identifier...

Page 20: ... on the ALR 9770 Tag Details Each entry in the TagList contains a number of sub fields the Tag s unique ID the read count the number of times the tag has been read in the current session the discovery time the time the tag was first seen the last observed time the antenna the antenna ID that the tag was last read from and others TagList Size The ALR 9800 s TagList can hold up to 6000 tag entries O...

Page 21: ...47 Last 2003 01 21 04 24 00 Count 1 Ant 0 The format of the TagList can be specified using the set TagListFormat command One of the options is XML format which would return the same TagList as Alien RFID Tag List Alien RFID Tag TagID 041C 1820 2812 4080 TagID DiscoveryTime 2003 01 21 02 24 00 DiscoveryTime LastSeenTime 2003 01 21 02 24 00 LastSeenTime ReadCount 1 ReadCount Antenna 0 Antenna Alien ...

Page 22: ... in the state diagram shown below Fundamentally a reader operating in Autonomous Mode moves between several states Waiting Working Evaluation and Notification Waiting Working and Evaluation states have associated with them an optional digital output state that is set upon entering the state Movement from one state to the next is initiated by an expiration of a timer a triggered event on the digita...

Page 23: ...s represented by bit 0 input pin 2 is represented by bit 1 etc The table below illustrates the bitmap values that correspond to different pin combinations This table holds for both input as well as output pin bitmaps Digital Input Value 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Pin 1 Pin 2 Pin 3 Pin 4 The command set AutoStartTrigger 2 0 causes the reader to enter the working state on receipt of a ris...

Page 24: ... it drops to the AutoFalsePause state Note the Evaluation looks at the TagList and therefore is very much dependent on the value of the PersistTime setting TRUE FALSE PAUSE After evaluation the Reader sets the output lines to the values specified in the AutoTrueOutput and AutoFalseOutput commands This condition is held for AutoTruePause or AutoFalsePause milliseconds before the test for Notificati...

Page 25: ...reading If a tag is found send an email message After the email is sent return to the waiting state AutoModeReset set AutoAction Acquire set AutoStartTrigger 1 0 set AutoStopTimer 0 set AutoTruePause 0 set AutoFalsePause 0 set NotifyAddress borg mycompany com set MailServer mail mycompany com set NotifyTrigger Add set NotifyMode On set AutoMode On Notification Mode The last stage in configuring th...

Page 26: ... i e every autonomous mode cycle Entire TagList NotifyAddress You must tell the reader where to send notification messages when it is operating in Autonomous Mode The reader can be instructed to send messages to a specific machine on the network or via email to a specific email address This is configured using the command set NotifyAddress address The format of address indicates the method of deli...

Page 27: ...h tag ID line is defined by the TagListCustomFormat parameter Text formatted notifications take the form Alien RFID Reader Auto Notification Message ReaderName Spinner Reader ReaderType Alien RFID Tag Reader Model ALR 9780 Four Antenna Class 1 915Mhz IPAddress 10 1 70 13 CommandPort 23 Time 2003 01 21 12 48 59 Reason TEST MESSAGE Tag 1115 F268 81C3 C012 Disc 2003 01 21 09 00 51 Last 2003 01 21 09 ...

Page 28: ...ReadCount 1 ReadCount Alien RFID Tag Alien RFID Tag List Alien RFID Reader Auto Notification An example of a custom formatted notification might be Alien RFID Reader Auto Notification Message ReaderName Spinner Reader ReaderType Alien RFID Tag Reader Model ALR 9780 Four Antenna Class 1 915Mhz IPAddress 10 1 70 13 CommandPort 23 Time 2003 01 21 12 48 59 Reason TEST MESSAGE Tag 1115 F268 81C3 C012 w...

Page 29: ...nitions of the term in both its means of communication backscatter and its power source beam powered Thus if you hear Aliens refer to a passive tag this is the type of tag they are talking about Battery Assisted Passive BAP Tags Alien s long range battery assisted passive tag would be categorized as a Class 3 dynamic tag under the EPCglobal scheme though with performance enhancements over those of...

Page 30: ...m with you you will be able to hear their name If there are multiple people in the room the results will be noise Maybe you will be able to make out one or two names but typically not more than that There are many applications where global scroll is the best tag reading method to use These applications typically expect just one or two tags in the field of view at any one time such as conveyor belt...

Page 31: ...n it performs a total number of acquire cycles specified by the AcqCycles parameter Each cycle consists of a number of Wakes given by AcqEnterWakeCount on each antenna then a number of reads given by AcqCount and Sleeps given by AcqSleepCount on each antenna Finally after all of the cycles have completed a number of Wakes given by AcqExitWakeCount are issued on each antenna The Wakes and Acquires ...

Page 32: ...Code PC bytes stored at the end of tag memory are used to lock a tag and kill a locked tag Each of these codes takes exactly one byte The user can control the value of the PassCode passing it in as a parameter to the Lock command The reader takes full control of the Lock byte allowing it to flag the tag as either locked or unlocked For further details on programming tag IDs and tag memory please s...

Page 33: ...ame tags will answer back to the reader resulting in an identical TagList However it is possible to sleep tags are they are found Both the inventory and global scroll modes support this action In this scenario as a tag is discovered by the reader it is told to sleep The very next time an acquire command is issued the reader will scan the field of tags but as they are all asleep they will not answe...

Page 34: ...ailed in the previous chapter you may interact with the reader and configure its operation using either of two text based command line methods direct serial RS 232 if supported by the reader telnet connection TCP IP For the purposes of these instructions the serial and telnet operations are considered essentially identical In both cases the screens look similar and will thus be considered identica...

Page 35: ...d triggers For example the reader can be instructed to search the field until it sees a tag then to read the new tag and e mail the event to a specified e mail address Command Format All commands between the host system and the reader are human readable ASCII text based messages For example a command to set the name of the reader using the set ReaderName command takes the form Alien set ReaderName...

Page 36: ...derName CR LF ReaderName Alien Reader CR LF 0 CR LF Alien NON INTERACTIVE COMMAND FORMAT 1 get ReaderName CR LF ReaderName Alien Reader CR LF 0 Get and Set Shortcuts As a typing convenience you may also use the following shortened command syntax Standard Syntax Shortened Syntax Get attributeName attributeName Set attributeName attributeValue attributeName attributeValue Examples Alien get ReaderNa...

Page 37: ...erVersion Get the reader software hardware versions get ReaderNumber set ReaderNumber Get and Set an arbitrary number 1 255 to be associated with the reader get Uptime Returns the number of seconds that have elapsed since the reader was last booted get Username set Username Get and Set the Username used for the Network based access control get Password set Password Get and Set the Password used fo...

Page 38: ...oses a network socket after inbound communication ceases get CommandPort set CommandPort The reader reacts to commands over the network only if they are directed at a specific Command Port Ping Tests a network connection to another device NetworkReset Applies network changes immediately without rebooting get HeartbeatAddress set HeartbeatAddress Set and Get the IP address to deliver heartbeat mess...

Page 39: ...ves its voltage low get InvertExternalInput set InvertExternalInput Turn on or off inversion of the External Inputs When inverted driving an input voltage high indicates low TAGLIST COMMANDS Command Description 9800 9780 8780 9640 9770 get TagList t Get the current list of active tags from the reader get PersistTime set PersistTime Get and Set the persistence time for tags in the TagList get TagLi...

Page 40: ... set AcqC1Count Same as AcqCount get AcqC1EnterWakeCount set AcqC1EnterWakeCount Same as AcqEnterWakeCount get AcqC1ExitWakeCount set AcqC1ExitWakeCount Same as AcqExitWakeCount get AcqC1SleepCount set AcqC1SleepCount Same as AcqSleepCount get AcqG2Cycles set AcqG2Cycles Specify the number of acquisition cycles to perform during each Class1 Gen2 tag read action get AcqG2Count set AcqG2Count Specif...

Page 41: ...to mode state from work mode to evaluate mode get AutoStopTimer set AutoStopTimer Set and Get the timer that will move the auto mode state from work mode to evaluate mode get AutoTrueOutput set AutoTrueOutput Specify the value of the output pins when the auto mode evaluation returns a True condition get AutoTruePause set AutoTruePause Set and Get the pause time after the auto mode evaluation retur...

Page 42: ...and Get an SMTP mail server This is only required if notification email messages are sent out get MailFrom set MailFrom Set and Get the email address of the RFID Reader get NotifyRetryCount set NotifyRetryCount Get and Set the number of times a failed network notification is repeated get NotifyRetryPause set NotifyRetryPause Get and Set the delay between failed network notification retries NotifyN...

Page 43: ...4 For Telnet operation only The Quit command allows you to exit the current Telnet session Function 9800 9780 8780 9640 9774 The standard operating mode of a reader is to read tags Additional functionality exists in the reader to program lock erase and kill tags but these functions must first be enabled This is done by changing the reader s Function attribute from Reader to Programmer Doing so ena...

Page 44: ...ponse get ReaderType ReaderType Alien RFID Tag Reader Model ALR 9780 Four Antenna Class 1 915 MHz Command Response get ReaderType ReaderType Alien RFID Tag Reader Model ALR 9800 Four Antenna Multi Protocol 915 MHz ReaderVersion 9800 9780 8780 9640 9774 The reader version can be retrieved using this command The resulting text is a multi line reply Each line of the reply describes the version number...

Page 45: ...der was rebooted Uptime Example Command Response get Uptime Uptime secs 702048 Username 9800 9780 8780 9640 9774 The reader can be operated over the network When operated in this mode it uses a simple username password authentication scheme to stop unwelcome visitors accessing it This command allows the username to be defined and obtained A username password pair is not required when operating the...

Page 46: ...d is not available when AutoMode is on The reader responds with Error 27 Invalid context Command cannot be issued while AutoMode is ON MaxAntenna Example Command Response get MaxAntenna MaxAntenna 3 AntennaSequence 9800 9780 8780 9640 9774 The reader can support the use of multiple antennas This command allows the user to select which antenna port s to use and in what sequence If using only one an...

Page 47: ...es are not always desireable If multiple readers are in the same vicinity their signals may interfere with each other Also in situations where tagged product is close together but only on product should be read at a time a conveyor belt for example then penetrating power and long range are your enemies Attenuating RF reduces its power and there are two ways to do this The first method involves pla...

Page 48: ...s especially network values to take effect FactorySettings Examples Command Response FactorySettings All settings have been reset Rebooting System Reboot 9800 9780 8780 9640 9774 The Reboot command causes the reader to immediately close all network connections and reboot It is recommended that you reboot the reader any time network configuration parameters are changed The ALR 9770 reader may also ...

Page 49: ...matic network configuration using the widely available DHCP protocol If DHCP is available at the reader installation site this protocol can be switched on If DHCP is not available or not desired the use of this protocol can be switched off Valid command parameters are ON and OFF The default setting is ON After making changes with this command you must save and reboot the reader to implement the ch...

Page 50: ...ith this command you must save and reboot the reader to implement the changes Gateway Examples Command Response get Gateway Gateway 34 56 78 90 Command Response set Gateway 12 56 23 01 Gateway 12 56 23 01 Netmask 9800 9780 8780 9640 9774 If DHCP is not used for automatic configuration the reader must be manually configured for use on a network The subnet mask command pair allow the subnet mask to ...

Page 51: ...orkTimeout 9800 9780 8780 9640 9774 When the reader receives a command on its Command port it opens a TCP socket and waits for data to arrive If inbound communication ceases rather than hold the socket open indefinitely the reader waits a period of time then automatically closes the connection ignoring any partial command it may have already received This time period is the NetworkTimeout The Netw...

Page 52: ...ured to periodically send out a heartbeat message to the network This heartbeat takes the form of a single UDP packet Universal Datagram Packet broadcast out to the entire subnet or a particular address The Set HeartbeatPort command allows you to configure the actual port number that this packet is sent out to Listening for this heartbeat can be used to initially locate a reader on a network and s...

Page 53: ...seconds will suspend the output of any further heartbeats The default setting for this command is 30 seconds Changes made with this command take effect immediately HeartbeatTime Examples Command Response get HeartbeatTime HeartbeatTime 30 Command Response set HeartbeatTime 60 HeartbeatTime 60 HeartbeatAddress 9800 9780 8780 9640 9774 The reader can be configured to periodically send out a heartbea...

Page 54: ...e Commands The time at which tags are read by a reader is particularly important for many applications For this reason the reader has three time commands to ensure that the onboard real time clock is always set accurately TimeServer 9800 9780 8780 9640 9774 The reader uses the Internet to accurately set its internal clock every time it is rebooted The protocol it uses is called the Daytime Protoco...

Page 55: ...e For example to convert from UTC to Pacific Standard Time set the TimeZone to 8 To convert from UTC to Pacific Daylight Time set the TimeZone to 7 The default setting for this command is 7 hours Pacific Daylight Time because PDT is UTC time minus 7 hours For more information about time zones servers and UTC refer to the Website listed under the Get Set TimeServer command Changes made with this co...

Page 56: ...mat YYYY MM DD hh mm ss Changes made with this command will take effect immediately Time Examples Command Response get Time Time 2002 6 3 9 23 01 Command Response set Time 2002 6 3 19 23 01 Time 2002 6 3 19 23 01 External I O Commands These commands allow you to configure and retrieve data from the reader s external input output pins ExternalInput 9800 9780 8780 9640 9774 The reader monitors four ...

Page 57: ...lOutput Examples Command Response set ExternalOutput 2 ExternalOutput 2 Command Response get ExternalOutput ExternalOutput 2 InitExternalOutput 9800 9780 8780 9640 9774 When the reader is powered up it sets the external output pins to states defined by the InitExternalOutput attribute This gives you the flexibility to choose which output pins should default to high and which output pins should def...

Page 58: ... setting is OFF InvertExternalInput Examples Command Response get ExternalInput ExternalInput 0 Command Response set InvertExternalInput ON InvertExternalInput ON Command Response get InvertExternalInput InvertExternalInput ON Command Response get ExternalInput ExternalInput 15 inverted value inputs haven t changed InvertExternalOutput 9800 9780 8780 9640 9774 In the default configuration setting ...

Page 59: ...been read and saved by the reader and to assign and retrieve TagList functional parameters Get TagList t 9800 9780 8780 9640 9774 You can retrieve the reader s stored TagList with the Get TagList command The maximum number of tags that can be stored in the TagList is 6000 for the ALR 9800 and 1000 for all other models Get TagList and t can be used interchangeably Using the Get TagList to retrieve ...

Page 60: ...s any tags immediately found even though they won t be stored in the TagList This command is not available when AutoMode is on The reader responds with Error 27 Invalid context Command cannot be issued while AutoMode is ON Setting the persist time to 1 causes the history to build indefinitely until a get TagList command is issued at this point the TagList is returned and then immediately cleared T...

Page 61: ...find the tag The protocol is given as a single number 0 Class 0 1 Class1 Gen1 2 Class1 Gen2 Tag 0000 0000 0000 0000 0000 0000 Disc Ant 0 Proto 0 Tag A5A5 FFFF 8000 8004 AB12 CD1A Disc Ant 0 Proto 1 Tag 3000 2141 60C0 0400 0000 6013 Disc Ant 0 Proto 2 Terse formatted TagLists take the following form 1115 F268 81C3 C012 4 0 0100 0100 0002 0709 6 0 1054 A334 54E1 7409 2 0 The fields given in the Ters...

Page 62: ... reported per tag TagID the 64 bit or 96 bit tag ID Disc the time the tag was first read by the reader in the current session Last the most recent time the tag was read by the reader in the current session Count the number of times the tag has been read in the current session Ant the antenna port number where the tag was LAST seen Since the ALR 9800 uses separate transmit and receive antennas the ...

Page 63: ...Class1 Gen1 2 Class2 Gen2 P ALR 9800 only String representation of the tag s protocol TagListCustomFormat Examples Command Response Get TagList set TagListCustomFormat Here is a tag i TagListFormat Here is a tag i Here is a tag 8000 0000 0000 0808 Here is a tag 102F ED3D 0303 0001 Command Response Get TagList set TagListCustomFormat Tag k read r times from antenna a TagListFormat Tag k read r time...

Page 64: ... instructs the reader to immediately clear its internal TagList Clear TagList Examples Command Response Clear TagList TagList has been reset Acquisition Commands Acquisition commands allow you to configure the reader s parameters that govern how it utilizes the various air protocols to best read a particular tag population AcquireMode 9800 9780 8780 9640 9774 When the reader is called upon to read...

Page 65: ...either select one of the tags usually the strongest or loudest to read and report or will read none of the tags NOTE Changes made with this command will take effect immediately AcquireMode Examples Command Response set AcquireMode Global Scroll AcquireMode Global Scroll Command Response set AcquireMode Inventory AcquireMode Inventory TagType 9800 9780 8780 9640 9774 There are currently five types ...

Page 66: ... a single integer parameter between 1 and 255 It is the number of acquisition cycles that are performed each time the reader scans for Class1 Gen1 tags Note While this attribute has a maximum value of 255 as do the other acquisition settings setting them to high values can result in very long acquisition times which may cause the reader to appear non responsive For example setting both AcqCycles a...

Page 67: ...WakeCount is 3 The Wake commands act on tags matching the current Tag Mask For example if AcqEnterWakeCount is set to 10 then ten Wake commands are issued at the start of each acquisition cycle If AcqEnterWakeCount is set to zero no Wake commands are issued NOTE Changes made with this command will take effect immediately AcqEnterWakeCount Examples Command Response set AcqEnterWakeCount 0 AcqEnterW...

Page 68: ...d The ALR 9800 being a multi protocol reader must explicitly call out the specific air protocol to which each acquisition parameter applies AcqC1Count Examples Command Response get AcqC1Count AcqC1Count 1 Command Response set AcqC1Count 5 AcqC1Count 5 AcqSleepCount 9800 9780 8780 9640 9774 AcqSleepCount takes a single integer parameter between 0 and 255 It is the number of Sleep commands that are ...

Page 69: ...example if AcqExitWakeCount is set to 10 then ten Wake commands are issued after each acquisition cycle NOTE Changes made with this command will take effect immediately AcqExitWakeCount Examples Command Response set AcqExitWakeCount 10 AcqExitWakeCount 10 Command Response get AcqExitWakeCount AcqExitWakeCount 10 AcqC1ExitWakeCount 9800 9780 8780 9640 9774 AcqC1ExitWakeCount is an alias for the Acq...

Page 70: ... AcqG2Cycles 2 AcqG2Count 9800 9780 8780 9640 9774 AcqG2Count takes a single integer parameter between 1 and 255 It is the number of reads Global Scroll or Inventory that are performed in each Class1 Gen2 acquisition cycle For example if AcqG2Count is set to 10 then ten acquisition commands are issued during each acquisition cycle NOTE Changes made with this command will take effect immediately Ac...

Page 71: ...irected to look for Class0 tags The AcqC0Cycles parameter controls the outer loop of the acquisition cycle described in the Tag Reading Fundamentals chapter Its value has a significant impact on the time the reader takes to perform each scan for tags NOTE Changes made with this command will take effect immediately AcqC0Cycles Examples Command Response get AcqC0Cycles AcqC0Cycles 1 Command Response...

Page 72: ...t or a subset only Sleep Examples Command Response Sleep Sleep OK Mask 9800 9780 8780 9640 9774 The Get and Set Mask commands will control the current mask that the reader uses Masks are important in both addressing tags and interrogating them For a detailed description of Masks please refer to the earlier chapter entitled Tag Reading Fundamentals The Set Mask command takes three parameters Bit Le...

Page 73: ...e that the mask value specified is E0hex 11100000binary and not 07hex 00000111binary Matching only three bits off 07hex of would match all zeroes Autonomous Mode Commands Autonomous Mode is an operation mode that enables hands free monitoring of tags Setup requires that you issue a series of configuration commands to the reader These commands detail how and when to read tags and then when tags are...

Page 74: ... low falling edge For each type of change an integer bitmap must be provided to specify the pins to listen for changes on The command takes two parameters a rising edge bitmap and a falling edge bitmap AutoStartTrigger Examples Command Response get AutoStartTrigger AutoStartTrigger rising falling 0 0 Command Response set AutoStartTrigger 3 0 AutoStartTrigger rising falling 3 0 AutoStartPause 9800 ...

Page 75: ...a 1 sets a pin to high and a 0 sets a pin to low Output pin 1 is specified by bit 0 in the mask output pin 2 is specified by bit 1 in the mask etc AutoWorkOutput Examples Command Response get AutoWorkOutput AutoWorkOutput 0 Command Response set AutoWorkOutput 3 sets pins 0 and 1 high AutoWorkOutput 3 AutoAction 9800 9780 8780 9640 9774 The AutoAction command specifies the action to perform when ru...

Page 76: ...Acquire AutoStopTrigger 9800 9780 8780 9640 9774 The AutoStopTrigger specifies the external input pins to monitor to cause the auto mode to jump from work state to evaluate state Triggers can either be a pin going from low to high rising edge to high to low falling edge For each type of change an integer bitmap must be provided to specify the pins to listen for changes on The command takes two par...

Page 77: ...ass 1 tags the antenna arbitration algorithm is optimized for maximizing the read rate of the tags in the field For Class 0 tags each antenna is given 112ms of search time Thus time division for antennas within a protocol cannot be specified When specifying the AutoStopTimer for a search over multiple tag protocols it is important to keep in mind the worst case of the multiple protocols To calcula...

Page 78: ... extend the AutoStopTimer long enough to finish the current acquisition Using the equation given previously the minimum value to use for AutoStopTimer should be AutoStopTimermin max 20 16ms 20 1 4ms 2 3 max 320 28 6 1920 ms In this case the reader schedules its time as follows AutoStopTimer 1920ms Class1 960ms Class0 960ms a1 a2 a3 a1 320 ms a2 320 ms a3 320 ms Now there is plenty of time to read ...

Page 79: ...74 The AutoFalseOutput specifies the output pin settings to effect if the evaluate mode of Autonomous Mode evaluates to false The parameter is a bitmap for the four external output pins where a 1 sets a pin to high and a 0 sets a pin to low Output pin 1 is specified by bit 0 in the mask output pin 2 is specified by bit 1 in the mask etc AutoFalseOutput Examples Command Response get AutoFalseOutput...

Page 80: ... is listening for a Stop condition 60 Auto Mode is entering its evaluation stage 70 Auto Mode is in its true or false pause stage 80 Auto Mode is in notify stage AutoModeStatus Examples Command Response get AutoModeStatus AutoModeStatus 0 Command Response Get AutoModeStatus AutoModeStatus 30 AutoModeReset 9800 9780 8780 9640 9774 The AutoModeReset command will reset all auto mode parameters to the...

Page 81: ...ifyAddress 9800 9780 8780 9640 9774 The Notify Address command pair specifies where notification messages should be sent when they occur and how they should be sent The form of the address determines the method of delivery Currently there are 3 delivery methods supported as shown in the table below NotifyAddress Description user domain com Send a message via e mail to the address specified The add...

Page 82: ...NotifyTime 30 NotifyTime 30 NotifyTrigger 9800 9780 8780 9640 9774 The NotifyTrigger command specifies and retrieves the event conditions other than time based upon which a notification message is sent out Notify messages can be triggered under any of the following conditions Trigger Name Meaning Add Send message when new tag is read and added to the TagList Remove Send message when a tag is remov...

Page 83: ...data is formatted as defined by the TagListCustomFormat command Text formatted TagLists take the form Alien RFID Reader Auto Notification Message ReaderName Spinner Reader ReaderType Alien RFID Tag Reader Class 1 915Mhz IPAddress 10 1 70 13 CommandPort 23 Time 2003 01 21 12 48 59 Reason TEST MESSAGE Tag 8000 8004 0000 003B Disc 2003 12 04 15 08 59 Last 2003 12 04 15 08 59 Count 4 Ant 0 Tag 8000 80...

Page 84: ...ifyHeader command turns on or off the header portion of each notification message When the NotifyHeader is turned off notification messages contain only the TagList portion of the message Valid command parameters are ON and OFF The default setting is ON NotifyMode Examples Command Response get NotifyHeader NotifyHeader On Command Response set NotifyHeader off NotifyHeader Off NotifyKeepAliveTime 9...

Page 85: ...ation is configured see Notify commands and is set to use Mail as its delivery method MailServer Examples Command Response get MailServer MailServer 12 34 56 78 Command Response set MailServer 45 224 124 34 MailServer 45 224 124 34 MailFrom 9800 9780 8780 9640 9774 The MailFrom command pair allows you to define the email address associated with the RFID Reader The emails sent out by the RFID Reade...

Page 86: ... notification and fails it tries again a number of times specified by NotifyRetryCount The time period between these retries is specified by the NotifyRetryPause The value can range from 0 to 32767 seconds The default value is 10 seconds NotifyRetryPause Examples Command Response get NotifyRetryPause NotifyRetryPause secs 10 Command Response set NotifyRetryPause 60 NotifyRetryPause secs 60 NotifyN...

Page 87: ... Alien set Function Programmer Function Programmer To disable these commands again issue the following command Alien set Function Reader Function Reader Once the functions have been enabled issuing a Help command will reveal a new suite of commands under the title Programming not all of the commands shown are available with all readers Help PROGRAMMING Get Set ProgAntenna Set Program Tag Verify Ta...

Page 88: ...ing it in as a parameter to the Lock command The reader takes full control of the Lock byte allowing it to flag the tag as either locked or unlocked Class I Tags 128 bit Lepton Class I tags from Alien contain 128 bits of programmable memory of which 96 bits are user programmable The remaining 32 bits are controlled by the reader to record state and checksum information inside the tag Checksum EPC ...

Page 89: ... tag requires substantially more power than reading a tag As a result the tag s programming range will be substantially less than its read range Programming commands will affect all tags that receive sufficient power to execute the commands As a result the tag to be programmed should be physically isolated from tags that you do not intend to program Similarly you should program at the minimum powe...

Page 90: ...r decreasing attenuation or moving the tag closer to the antenna and repeating the programming process Incompletely programmed tags can be caused by insufficient or excessive programming power Revaluate the tag position and the signal attenuation and repeat the programming sequence A step attenuator is a powerful tool in evaluating programming conditions When using the attenuator set it to the hig...

Page 91: ... success get ProgramPassCode set ProgramPassCode Gets and Sets the PassCode used to lock tags while in Autonomous Mode get ProgIncrementOnFail set ProgIncrementOnFail Gets and Sets the flag that specifies if the ProgramID should increment when a program operation fails Program and Erase Functions The two most common methods of altering tag memory are the Program Tag and Erase Tag commands These tw...

Page 92: ...equires 12 bytes of ID code The Class BPT does not require a checksum code and does not support lock and kill Therefore the entire 12 bytes of tag memory are addressable with this command Erase Tag 9800 9780 8780 9640 9774 The Erase Tag command attempts to erase the memory of a tag in the reader s field of view A tag affected by this command has its entire tag memory set to zero Once the command i...

Page 93: ...ntenna 2 ProgAntenna 2 ProgReadAttempts 9800 9780 8780 9640 9774 When the reader is asked to perform a programming operation often the first step is to verify the presence of a tag in the field If there is not identifiable tag in the field the reader won t bother continuing with the rest of the operation The ProgReadAttempts attribute specifies the number of attempts the reader should make to veri...

Page 94: ...s the number of attempts the reader should make to program a tag during a Program Tag operation The value can range from 1 to 255 The default value is 3 ProgAttempts Examples Command Response get ProgAttempts ProgAttempts 3 Command Response set ProgAttempts 5 ProgAttempts 5 Lock and Kill Functions Class I Only The Class I tags support two additional commands not yet supported by the Class BPT tags...

Page 95: ...on that can be performed on a locked tag is the Kill Tag operation Kill Tag sets all bytes of tag memory to zero Kill Tag can only be used on locked tags There is no unlock command To use the Kill Tag command the full tag ID of the tag to kill must be provided as well as the PassCode that was used to lock the tag with These parameters are passed as 9 or 13 depending on tag type consecutive hexadec...

Page 96: ...r example due to a poor air interface between the tag and reader then the tag ID is rejected Any tag IDs presented to the user by the Acquire commands are therefore always checked for accuracy Note A tag that is not programmed correctly will not be validated by the Acquire commands and will be rejected when read Note A tag that has been erased will contain neither a tag ID nor a checksum These tag...

Page 97: ...d Acquire commands return tag ID of this tag Command Response verify tag Verify Tag Programmed Tag Locked Condition A tag is on the fringe of the field there is excessive noise or the tag is improperly programmed Command Response verify tag Verify Tag Tag Like Signal Detected Programming Tags in AutoMode Programming functions are fully supported by the reader s Autonomous Mode of operation Using A...

Page 98: ...ramming it Value supplied must be a single byte The default ProgramPassCode is 0x01 ProgramPassCode Examples Command Response get ProgramPassCode ProgramPassCode 01 Command Response set ProgramPassCode FF ProgramPassCode FF ProgIncrementOnFail 9800 9780 8780 9640 9774 The ProgIncrementOnFail flag is used in AutoMode when the AutoAction has been set to Program or Program and Lock By default the rea...

Page 99: ...g with a new ID and then lock it with a PassCode This event can be repeated indefinitely each time incrementing the ID by one To instruct Autonomous Mode to program and lock tags issue the following command set AutoAction Program and Lock Instead of reading tags inside its inner loop refer to AutoMode state diagram in Chapter 2 for details the reader programs a tag with an ID as specified by the P...

Page 100: ...ndefinitely each time with a new tag To instruct Autonomous Mode to kill tags issue the following command set AutoAction Kill Instead of reading tags inside its inner loop refer to AutoMode state diagram in Chapter 2 for details the reader kills a tag in its field with a PassCode as specified by the ProgramPassCode attribute see above A successful Kill event causes the evaluation state of Autonomo...

Page 101: ... ELEMENT MACAddress PCDATA TagList DTD xml version 1 0 encoding UTF 8 DOCTYPE Alien RFID Tag_List ELEMENT Alien RFID Tag_List Alien RFID Tag ELEMENT Alien RFID Tag TagID DiscoveryTime LastSeenTime Antenna ReadCount Protocol ELEMENT TagID PCDATA ELEMENT DiscoveryTime PCDATA ELEMENT LastSeenTime PCDATA ELEMENT Antenna PCDATA ELEMENT ReadCount PCDATA ELEMENT Protocol PCDATA Notification DTD xml versi...

Page 102: ...settings such as DHCP IP Address etc are not affected ALR 9780 ALR 8780 ALR 9640 These Alien readers require you to use the Gateway Demonstration Software to perform firmware upgrades You should always ensure that you have the latest version of the Gateway application since newer reader firmware code may require slightly different handling before or after the upgrade Using a version of the Gateway...

Page 103: ...ext click the Browse button and navigate to the appropriate firmware file provided by Alien Technology and click the Upgrade button Leave the Erase contents before installing and Revert to factory settings checkboxes unchecked After the file has been uploaded and and installed you will be asked to restart the reader Do this by clicking the Restart System button ...

Page 104: ...screen After the reader restarts the web interface attempts to reload the Status page If the reader is configured to acquire its network information from a DHCP server it may acquire a new IP address when it restarts which may cause the Status page to not load Simply browse to the reader s new IP address and verify the new firmware by checking the RadiOS Version area of the Status page ...

Reviews: