com.alien.enterpriseRFID.reader
Class AlienDLEObject

java.lang.Object
  extended bycom.alien.enterpriseRFID.reader.AlienDLEObject

public class AlienDLEObject
extends java.lang.Object

The AlienDLEObject class encapsulates the command and reply buffers used by the AlienClassOEMReader class to allow a host to communicate with Alien readers which use the Alien Binary Reader Protocol. The messages are binary data packets, consisting of a message payload delimited by two bytes beginning every message (<DLE><SOM>) and two bytes ending every message (<DLE><EOM>). The system is a Host-Talks-First scheme where the Host initiates all communications. The reader responds to all commands with a single response message - except for the Inventory command, which requires multiple response messages.

    <DLE> + <SOM> + <Payload> + <DLE> + <EOM>
 
The payload portion of a command message has the following structure:
    <SessionID> + <Reader#> + <Command> [+ CommandData] + <CRC16>
 
The payload portion of a response message has the following structure:
    <SessionID> + <Reader#> + <CommandEcho> + <CommType> [+ ResponseData] + <CRC16>
 
The SessionID, Reader#, and CRC16 bytes are all handled automatically by this class. The Command and CommType value are all enumerated by int constant of this class, for instance CMD_GET_FIRMWARE_VERSION and RESPONSE_MESSAGE_OK.

For more information on how the Binary Protocol works, see the Reader Interface Guide that came with your Developer's Kit.

To issue a command to the reader, create an instance of AlienDLEObject, use the prepareGenericCommand() method to specify the Command and CommandData you want to send, then pass it to AlienClassOEMReader.issueReaderCommand(). For example:

   AlienDLEObject rc = new AlienDLEObject();
   rc.prepareGenericCommand(AlienDLEObject.CMD_GET_FIRMWARE_VERSION);
   reader.issueReaderCommand(rc);
 
If the reader command fails in any way, a subclass of AlienReaderException is thrown with the relevant details. The CommType byte that is returned by the reader with each response is stored in the "replyCommType" field of the AlienDLEObject instance, and will be one of the values enumerated by the RESPONSE_XXXXX constants.

The raw contents of the reader's reply is accessible via AlienDLEObject.replyBuffer, which is an array of bytes. The payload portion of the reply is accessible via AlienDLEObject.replyValueHexArray and AlienDLEObjectreplyValueIntArray, which are arrays of bytes and ints, respectively. If the response data can be represented as a single value, this value is accessible via AlienDLEObject.replyValueInt. For example, following a command to get the reader number, the value can be easily retrieved by:

    rc.replyValueInt, or
    rc.replyValueIntArray[0], or
    rc.replyValueHexArray[0], or
    rc.replyBuffer[4]
    (the 1st four bytes of replyBuffer are SessionID, Reader#, CommandEcho,
     and CommType)
 
Finally, inventory commands result in multiple reader response messages, each containing data for one tag that was read. This class will decode each of the messages, create Tag objects for each tag, and place them all into a the tagTable field. The array of Tags can then be retrieved by:
    Tag[] tagList = rc.tagTable.getTagList()
 

Version:
1.5 Dec 2007
Author:
David Krull

Field Summary
static int CMD_DIRECTED_INV_LIST_CONTROL
           
static int CMD_ENTER_BOOTLOADER
           
static int CMD_ERASE_TAG
           
static int CMD_FORMAT_TAG_MEMORY
           
static int CMD_GET_ACTIVE_ANTENNA
           
static int CMD_GET_ANTENNA_RF_POWER
           
static int CMD_GET_ANTENNA_SEQUENCE
           
static int CMD_GET_BIDIRECTIONAL_DDR
           
static int CMD_GET_FIRMWARE_VERSION
           
static int CMD_GET_HARDWARE_INFO
           
static int CMD_GET_IO_INVERSION_MASK
           
static int CMD_GET_IO_PORT_VALUE
           
static int CMD_GET_IO_STATUS_LATCH
           
static int CMD_GET_LOGGING
           
static int CMD_GET_LOGGING_INTERVAL
           
static int CMD_GET_MANUFACTURING_INFO
           
static int CMD_GET_OUTPUT_INITIAL_STATE
           
static int CMD_GET_READER_NUMBER
           
static int CMD_GET_READER_STATUS
           
static int CMD_GET_RF_ATTENUATION
           
static int CMD_GET_RF_ONOFF
           
static int CMD_GET_SENSOR_IMMEDIATE
           
static int CMD_GET_TAG_FIRMWARE_VERSION
           
static int CMD_GET_TAG_ID
           
static int CMD_GET_TAG_MASK
           
static int CMD_GET_TAG_MEMORY
           
static int CMD_GET_TAG_MODE
           
static int CMD_GET_TAG_TYPE
           
static int CMD_GET_TIME
           
static int CMD_GLOBALSCROLL_TAG
           
static int CMD_INTERNAL_TEST_PROCEDURE
           
static int CMD_INV_DIAGNOSTIC_CONTROL
           
static int CMD_INVENTORY
           
static int CMD_KILL_TAG
           
static int CMD_LOCK_TAG
           
static int CMD_MANAGE_RESERVED_PARAMS
           
static int CMD_PROGRAM_ROW
           
static int CMD_PROGRAM_TAG
           
static int CMD_READ_TAG_DATA
           
static int CMD_REBOOT
           
static int CMD_RESTORE_FACTORY_DEFAULTS
           
static int CMD_SET_ACTIVE_ANTENNA
           
static int CMD_SET_ANTENNA_RF_POWER
           
static int CMD_SET_ANTENNA_SEQUENCE
           
static int CMD_SET_BAUD_RATE
           
static int CMD_SET_BIDIRECTIONAL_DDR
           
static int CMD_SET_IO_INVERSION_MASK
           
static int CMD_SET_IO_MASK
           
static int CMD_SET_IO_PORT_VALUE
           
static int CMD_SET_LOGGING
           
static int CMD_SET_LOGGING_INTERVAL
           
static int CMD_SET_OUTPUT_INITIAL_STATE
           
static int CMD_SET_READER_NUMBER
           
static int CMD_SET_RF_ATTENUATION
           
static int CMD_SET_RF_ONOFF
           
static int CMD_SET_TAG_MASK
           
static int CMD_SET_TAG_MEMORY
           
static int CMD_SET_TAG_MODE
           
static int CMD_SET_TAG_TYPE
           
static int CMD_SET_TIME
           
static int CMD_SLEEP_TAG
           
static int CMD_SUSPEND_READER
           
static int CMD_UPLOAD_FIRMWARE_LINE
           
static int CMD_VERIFY_TAG
           
static int CMD_WAKE_N
           
static int CMD_WAKE_TAG
           
static int COMMAND_BUFFER_SIZE
           
static int COMMAND_DLE
           
static int COMMAND_EOF
           
static int COMMAND_SOF
           
static int COMMAND_STATUS_COMPLETE
           
static int COMMAND_STATUS_ERROR
           
static int COMMAND_STATUS_INVENTORY_BREAK
           
static int COMMAND_STATUS_READER_ERROR
           
static int COMMAND_STATUS_RECEIVE_ME
           
static int COMMAND_STATUS_RESET
           
static int COMMAND_STATUS_SEND_ME
           
static int COMMAND_STATUS_TIMEOUT
           
static int COMMAND_STATUS_UNKNOWN
           
 byte[] commandBuffer
           
 int commandLength
           
 boolean isCyclops
           
static int REPLY_BUFFER_SIZE
           
 byte[] replyBuffer
           
 byte[] replyBufferRaw
           
 int replyCommType
           
 java.lang.String replyCommTypeHexString
           
 java.lang.String replyCommTypeMessage
           
 int replyLength
           
 int replyLengthRaw
           
 byte[] replyValueHexArray
           
 int replyValueInt
           
 int[] replyValueIntArray
           
static int RESPONSE_DATA_SIZE_MISMATCH
           
static int RESPONSE_DIAGNOSTIC_DATA
           
static int RESPONSE_DIAGNOSTIC_END
           
static int RESPONSE_DIAGNOSTIC_START
           
static int RESPONSE_ERASE_FAILED
           
static int RESPONSE_HARDWARE_ERROR
           
static int RESPONSE_INVALID_KILL_CODE
           
static int RESPONSE_INVENTORY_END
           
static int RESPONSE_INVENTORY_START
           
static int RESPONSE_INVENTORY_TAG
           
static int RESPONSE_KILL_FAILED
           
static int RESPONSE_LIST_DUMP_END
           
static int RESPONSE_LIST_DUMP_RECORD
           
static int RESPONSE_LIST_DUMP_START
           
static int RESPONSE_LIST_FULL
           
static int RESPONSE_LOCK_CRC_ERROR
           
static int RESPONSE_LOCK_FAILED
           
static int RESPONSE_MESSAGE_OK
           
static int RESPONSE_MESSAGE_OK_G2
           
static int RESPONSE_NO_TAG
           
static int RESPONSE_OVERFLOW_ERROR
           
static int RESPONSE_PROGRAM_FAILED
           
static int RESPONSE_RESUME
           
static java.lang.String[] RESPONSE_STRINGS
           
static int RESPONSE_SUSPEND
           
static int RESPONSE_TAG_LOCKED
           
static int RESPONSE_TAG_LOST
           
static int RESPONSE_UNKNOWN_COMMAND
           
static int RESPONSE_UNKNOWN_LENGTH
           
static int RESPONSE_UNKNOWN_TAG_COMMAND
           
static int RESPONSE_UNKNOWN_VALUE
           
static int RESPONSE_UPLOAD_CRC_ERROR
           
static int RESPONSE_UPLOAD_END
           
static int RESPONSE_UPLOAD_INVALID
           
static int RESPONSE_UPLOAD_LINE_ERROR
           
static int RESPONSE_UPLOAD_OK
           
static int SESSION_ID
           
 int sessionID
           
 int status
           
static int SUBCMD_AVAILABLE_BAUD_RATES
           
static int SUBCMD_BIDIRECTIONAL_IO
           
static int SUBCMD_GENERAL_PURPOSE_INPUTS
           
static int SUBCMD_GENERAL_PURPOSE_OUTPUTS
           
static int SUBCMD_GET_AIR_INTERFACE_BAUD
           
static int SUBCMD_GET_CAL_TABLE_ENTRY
           
static int SUBCMD_GET_DECODE_PARAMETERS
           
static int SUBCMD_GET_DIAGNOSTIC_MODE
           
static int SUBCMD_GET_ETSI_LISTEN_PARAMS
           
static int SUBCMD_GET_HOP_TABLE_ENTRY
           
static int SUBCMD_GET_MOD_CONTROL_MANUAL
           
static int SUBCMD_GET_MOD_FUDGE
           
static int SUBCMD_GET_NV_RAW
           
static int SUBCMD_GET_PA_BIAS
           
static int SUBCMD_GET_PA_VDD
           
static int SUBCMD_GET_PING_PARAMS
           
static int SUBCMD_GET_PROGRAM_LENGTH
           
static int SUBCMD_GET_PROGRAM_POWER_LEVELS
           
static int SUBCMD_GET_RAW_MEMORY
           
static int SUBCMD_GET_RAW_RF_POWER
           
static int SUBCMD_GET_RECEIVER_GAIN
           
static int SUBCMD_GET_SUSPENDERS_PARAMS
           
static int SUBCMD_GET_TREE_INV_METHOD
           
static int SUBCMD_HOP_INTERVAL
           
static int SUBCMD_HOP_STEP_SIZE
           
static int SUBCMD_LOCALIZATION
           
static int SUBCMD_MAX_DIRECTED_SORT_LIST
           
static int SUBCMD_MAXIMUM_ANTENNA_NUMBER
           
static int SUBCMD_MAXIMUM_FREQUENCY
           
static int SUBCMD_MAXIMUM_HOP_TABLE_INDEX
           
static int SUBCMD_MAXIMUM_RF_CHANNEL
           
static int SUBCMD_MAXIMUM_RF_POWER
           
static int SUBCMD_MINIMUM_FREQUENCY
           
static int SUBCMD_OPERATING_VOLTAGE
           
static int SUBCMD_PLL_TYPE
           
static int SUBCMD_PROGRAMMER_ENABLE
           
static int SUBCMD_RADIO_TYPE
           
static int SUBCMD_READER_TYPE
           
static int SUBCMD_RESTORE_DEFAULT_HOP
           
static int SUBCMD_RESTORE_DEFAULT_NV
           
static int SUBCMD_RF_CHANNEL
           
static int SUBCMD_SEND_MODULATION_CONT
           
static int SUBCMD_SEND_PRIMITIVE_ONE_SHOT
           
static int SUBCMD_SET_AIR_INTERFACE_BAUD
           
static int SUBCMD_SET_CAL_TABLE_ENTRY
           
static int SUBCMD_SET_DECODE_DIAG
           
static int SUBCMD_SET_DECODE_PARAMETERS
           
static int SUBCMD_SET_DIAGNOSTIC_MODE
           
static int SUBCMD_SET_ETSI_LISTEN_CHANNEL
           
static int SUBCMD_SET_ETSI_LISTEN_PARAMS
           
static int SUBCMD_SET_HOP_TABLE_ENTRY
           
static int SUBCMD_SET_MOD_CONTROL_MANUAL
           
static int SUBCMD_SET_MOD_FUDGE
           
static int SUBCMD_SET_NV_RAW
           
static int SUBCMD_SET_PA_BIAS
           
static int SUBCMD_SET_PA_VDD
           
static int SUBCMD_SET_PING_PARAMS
           
static int SUBCMD_SET_PROGRAM_LENGTH
           
static int SUBCMD_SET_PROGRAM_POWER_LEVELS
           
static int SUBCMD_SET_RADIO_MANUF_INFO
           
static int SUBCMD_SET_RAW_MEMORY
           
static int SUBCMD_SET_RAW_RF_POWER
           
static int SUBCMD_SET_READER_MANUF_INFO
           
static int SUBCMD_SET_RECEIVER_GAIN
           
static int SUBCMD_SET_SUSPENDERS_PARAMS
           
static int SUBCMD_SET_TREE_INV_METHOD
           
static int SUBCMD_SUPPORTED_TAG_TYPES
           
static int SUBCMD_VOLTAGE_CALIBRATION
           
static int TAGDECODE_COLLISION
           
static int TAGDECODE_CRC_ERROR
           
static int TAGDECODE_GOOD_ID
           
static int TAGDECODE_NO_TAG
           
 TagTable tagTable
           
 byte[] unpackedCommandBuffer
           
static int WAITING_FOR_DLE
           
static int WAITING_FOR_DLE_EMBEDDED
           
static int WAITING_FOR_MSG
           
static int WAITING_FOR_SOF
           
 
Constructor Summary
AlienDLEObject()
          Constructs a new AlienDLEObject object.
 
Method Summary
 int addReply(int b)
          Adds a byte to a reader reply and returns the current status of the reader's response.
 void prepareGenericCommand(byte[] commandByteSequence)
          Prepares a ReaderCommand, using a byte array for the entire DLE command sequence, Command and Arguments.
 void prepareGenericCommand(int commandID)
          Prepares a ReaderCommand, using 0 arguments for command paramters.
 void prepareGenericCommand(int commandID, byte[] commandParamBytes)
          Prepares a ReaderCommand, using a byte array for command paramters.
 void prepareGenericCommand(int commandID, int commandParam1)
          Prepares a ReaderCommand, using 1 int argument for command paramters.
 void prepareGenericCommand(int commandID, int[] commandParamInts)
          Prepares a ReaderCommand, using an int array for command paramters.
 void prepareGenericCommand(int commandID, int commandParam1, int commandParam2)
          Prepares a ReaderCommand, using 2 int arguments for command paramters.
 void prepareGenericCommand(int commandID, int commandParam1, int commandParam2, int commandParam3)
          Prepares a ReaderCommand, using 3 int arguments for command paramters.
 void prepareGenericCommand(int commandID, int commandParam1, int commandParam2, int commandParam3, int commandParam4)
          Prepares a ReaderCommand, using 4 int arguments for command paramters.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COMMAND_BUFFER_SIZE

public static final int COMMAND_BUFFER_SIZE
See Also:
Constant Field Values

REPLY_BUFFER_SIZE

public static final int REPLY_BUFFER_SIZE
See Also:
Constant Field Values

COMMAND_STATUS_UNKNOWN

public static final int COMMAND_STATUS_UNKNOWN
See Also:
Constant Field Values

COMMAND_STATUS_RESET

public static final int COMMAND_STATUS_RESET
See Also:
Constant Field Values

COMMAND_STATUS_SEND_ME

public static final int COMMAND_STATUS_SEND_ME
See Also:
Constant Field Values

COMMAND_STATUS_RECEIVE_ME

public static final int COMMAND_STATUS_RECEIVE_ME
See Also:
Constant Field Values

COMMAND_STATUS_INVENTORY_BREAK

public static final int COMMAND_STATUS_INVENTORY_BREAK
See Also:
Constant Field Values

COMMAND_STATUS_COMPLETE

public static final int COMMAND_STATUS_COMPLETE
See Also:
Constant Field Values

COMMAND_STATUS_ERROR

public static final int COMMAND_STATUS_ERROR
See Also:
Constant Field Values

COMMAND_STATUS_TIMEOUT

public static final int COMMAND_STATUS_TIMEOUT
See Also:
Constant Field Values

COMMAND_STATUS_READER_ERROR

public static final int COMMAND_STATUS_READER_ERROR
See Also:
Constant Field Values

WAITING_FOR_DLE

public static final int WAITING_FOR_DLE
See Also:
Constant Field Values

WAITING_FOR_SOF

public static final int WAITING_FOR_SOF
See Also:
Constant Field Values

WAITING_FOR_MSG

public static final int WAITING_FOR_MSG
See Also:
Constant Field Values

WAITING_FOR_DLE_EMBEDDED

public static final int WAITING_FOR_DLE_EMBEDDED
See Also:
Constant Field Values

COMMAND_DLE

public static final int COMMAND_DLE
See Also:
Constant Field Values

COMMAND_SOF

public static final int COMMAND_SOF
See Also:
Constant Field Values

COMMAND_EOF

public static final int COMMAND_EOF
See Also:
Constant Field Values

CMD_GET_FIRMWARE_VERSION

public static final int CMD_GET_FIRMWARE_VERSION
See Also:
Constant Field Values

CMD_SET_READER_NUMBER

public static final int CMD_SET_READER_NUMBER
See Also:
Constant Field Values

CMD_GET_READER_NUMBER

public static final int CMD_GET_READER_NUMBER
See Also:
Constant Field Values

CMD_SET_BAUD_RATE

public static final int CMD_SET_BAUD_RATE
See Also:
Constant Field Values

CMD_REBOOT

public static final int CMD_REBOOT
See Also:
Constant Field Values

CMD_SET_IO_PORT_VALUE

public static final int CMD_SET_IO_PORT_VALUE
See Also:
Constant Field Values

CMD_GET_IO_PORT_VALUE

public static final int CMD_GET_IO_PORT_VALUE
See Also:
Constant Field Values

CMD_SET_ACTIVE_ANTENNA

public static final int CMD_SET_ACTIVE_ANTENNA
See Also:
Constant Field Values

CMD_GET_ACTIVE_ANTENNA

public static final int CMD_GET_ACTIVE_ANTENNA
See Also:
Constant Field Values

CMD_SET_RF_ATTENUATION

public static final int CMD_SET_RF_ATTENUATION
See Also:
Constant Field Values

CMD_GET_RF_ATTENUATION

public static final int CMD_GET_RF_ATTENUATION
See Also:
Constant Field Values

CMD_SET_IO_INVERSION_MASK

public static final int CMD_SET_IO_INVERSION_MASK
See Also:
Constant Field Values

CMD_GET_IO_INVERSION_MASK

public static final int CMD_GET_IO_INVERSION_MASK
See Also:
Constant Field Values

CMD_INTERNAL_TEST_PROCEDURE

public static final int CMD_INTERNAL_TEST_PROCEDURE
See Also:
Constant Field Values

CMD_SUSPEND_READER

public static final int CMD_SUSPEND_READER
See Also:
Constant Field Values

CMD_GET_READER_STATUS

public static final int CMD_GET_READER_STATUS
See Also:
Constant Field Values

CMD_RESTORE_FACTORY_DEFAULTS

public static final int CMD_RESTORE_FACTORY_DEFAULTS
See Also:
Constant Field Values

CMD_GET_HARDWARE_INFO

public static final int CMD_GET_HARDWARE_INFO
See Also:
Constant Field Values

CMD_GET_MANUFACTURING_INFO

public static final int CMD_GET_MANUFACTURING_INFO
See Also:
Constant Field Values

CMD_MANAGE_RESERVED_PARAMS

public static final int CMD_MANAGE_RESERVED_PARAMS
See Also:
Constant Field Values

CMD_SET_TAG_MASK

public static final int CMD_SET_TAG_MASK
See Also:
Constant Field Values

CMD_GET_TAG_MASK

public static final int CMD_GET_TAG_MASK
See Also:
Constant Field Values

CMD_SET_BIDIRECTIONAL_DDR

public static final int CMD_SET_BIDIRECTIONAL_DDR
See Also:
Constant Field Values

CMD_GET_BIDIRECTIONAL_DDR

public static final int CMD_GET_BIDIRECTIONAL_DDR
See Also:
Constant Field Values

CMD_SET_IO_MASK

public static final int CMD_SET_IO_MASK
See Also:
Constant Field Values

CMD_GET_IO_STATUS_LATCH

public static final int CMD_GET_IO_STATUS_LATCH
See Also:
Constant Field Values

CMD_SET_RF_ONOFF

public static final int CMD_SET_RF_ONOFF
See Also:
Constant Field Values

CMD_GET_RF_ONOFF

public static final int CMD_GET_RF_ONOFF
See Also:
Constant Field Values

CMD_SET_ANTENNA_SEQUENCE

public static final int CMD_SET_ANTENNA_SEQUENCE
See Also:
Constant Field Values

CMD_GET_ANTENNA_SEQUENCE

public static final int CMD_GET_ANTENNA_SEQUENCE
See Also:
Constant Field Values

CMD_SET_OUTPUT_INITIAL_STATE

public static final int CMD_SET_OUTPUT_INITIAL_STATE
See Also:
Constant Field Values

CMD_GET_OUTPUT_INITIAL_STATE

public static final int CMD_GET_OUTPUT_INITIAL_STATE
See Also:
Constant Field Values

CMD_SET_ANTENNA_RF_POWER

public static final int CMD_SET_ANTENNA_RF_POWER
See Also:
Constant Field Values

CMD_GET_ANTENNA_RF_POWER

public static final int CMD_GET_ANTENNA_RF_POWER
See Also:
Constant Field Values

CMD_ENTER_BOOTLOADER

public static final int CMD_ENTER_BOOTLOADER
See Also:
Constant Field Values

CMD_UPLOAD_FIRMWARE_LINE

public static final int CMD_UPLOAD_FIRMWARE_LINE
See Also:
Constant Field Values

CMD_GET_TAG_FIRMWARE_VERSION

public static final int CMD_GET_TAG_FIRMWARE_VERSION
See Also:
Constant Field Values

CMD_SLEEP_TAG

public static final int CMD_SLEEP_TAG
See Also:
Constant Field Values

CMD_WAKE_TAG

public static final int CMD_WAKE_TAG
See Also:
Constant Field Values

CMD_PROGRAM_ROW

public static final int CMD_PROGRAM_ROW
See Also:
Constant Field Values

CMD_GET_TAG_ID

public static final int CMD_GET_TAG_ID
See Also:
Constant Field Values

CMD_SET_TAG_MEMORY

public static final int CMD_SET_TAG_MEMORY
See Also:
Constant Field Values

CMD_GET_TAG_MEMORY

public static final int CMD_GET_TAG_MEMORY
See Also:
Constant Field Values

CMD_FORMAT_TAG_MEMORY

public static final int CMD_FORMAT_TAG_MEMORY
See Also:
Constant Field Values

CMD_SET_LOGGING

public static final int CMD_SET_LOGGING
See Also:
Constant Field Values

CMD_GET_LOGGING

public static final int CMD_GET_LOGGING
See Also:
Constant Field Values

CMD_SET_LOGGING_INTERVAL

public static final int CMD_SET_LOGGING_INTERVAL
See Also:
Constant Field Values

CMD_GET_LOGGING_INTERVAL

public static final int CMD_GET_LOGGING_INTERVAL
See Also:
Constant Field Values

CMD_SET_TIME

public static final int CMD_SET_TIME
See Also:
Constant Field Values

CMD_GET_TIME

public static final int CMD_GET_TIME
See Also:
Constant Field Values

CMD_SET_TAG_TYPE

public static final int CMD_SET_TAG_TYPE
See Also:
Constant Field Values

CMD_GET_TAG_TYPE

public static final int CMD_GET_TAG_TYPE
See Also:
Constant Field Values

CMD_SET_TAG_MODE

public static final int CMD_SET_TAG_MODE
See Also:
Constant Field Values

CMD_GET_TAG_MODE

public static final int CMD_GET_TAG_MODE
See Also:
Constant Field Values

CMD_GET_SENSOR_IMMEDIATE

public static final int CMD_GET_SENSOR_IMMEDIATE
See Also:
Constant Field Values

CMD_VERIFY_TAG

public static final int CMD_VERIFY_TAG
See Also:
Constant Field Values

CMD_GLOBALSCROLL_TAG

public static final int CMD_GLOBALSCROLL_TAG
See Also:
Constant Field Values

CMD_INVENTORY

public static final int CMD_INVENTORY
See Also:
Constant Field Values

CMD_WAKE_N

public static final int CMD_WAKE_N
See Also:
Constant Field Values

CMD_DIRECTED_INV_LIST_CONTROL

public static final int CMD_DIRECTED_INV_LIST_CONTROL
See Also:
Constant Field Values

CMD_INV_DIAGNOSTIC_CONTROL

public static final int CMD_INV_DIAGNOSTIC_CONTROL
See Also:
Constant Field Values

CMD_PROGRAM_TAG

public static final int CMD_PROGRAM_TAG
See Also:
Constant Field Values

CMD_ERASE_TAG

public static final int CMD_ERASE_TAG
See Also:
Constant Field Values

CMD_KILL_TAG

public static final int CMD_KILL_TAG
See Also:
Constant Field Values

CMD_LOCK_TAG

public static final int CMD_LOCK_TAG
See Also:
Constant Field Values

CMD_READ_TAG_DATA

public static final int CMD_READ_TAG_DATA
See Also:
Constant Field Values

SUBCMD_PROGRAMMER_ENABLE

public static final int SUBCMD_PROGRAMMER_ENABLE
See Also:
Constant Field Values

SUBCMD_GENERAL_PURPOSE_OUTPUTS

public static final int SUBCMD_GENERAL_PURPOSE_OUTPUTS
See Also:
Constant Field Values

SUBCMD_GENERAL_PURPOSE_INPUTS

public static final int SUBCMD_GENERAL_PURPOSE_INPUTS
See Also:
Constant Field Values

SUBCMD_BIDIRECTIONAL_IO

public static final int SUBCMD_BIDIRECTIONAL_IO
See Also:
Constant Field Values

SUBCMD_MAXIMUM_HOP_TABLE_INDEX

public static final int SUBCMD_MAXIMUM_HOP_TABLE_INDEX
See Also:
Constant Field Values

SUBCMD_READER_TYPE

public static final int SUBCMD_READER_TYPE
See Also:
Constant Field Values

SUBCMD_LOCALIZATION

public static final int SUBCMD_LOCALIZATION
See Also:
Constant Field Values

SUBCMD_RADIO_TYPE

public static final int SUBCMD_RADIO_TYPE
See Also:
Constant Field Values

SUBCMD_MINIMUM_FREQUENCY

public static final int SUBCMD_MINIMUM_FREQUENCY
See Also:
Constant Field Values

SUBCMD_MAXIMUM_FREQUENCY

public static final int SUBCMD_MAXIMUM_FREQUENCY
See Also:
Constant Field Values

SUBCMD_HOP_STEP_SIZE

public static final int SUBCMD_HOP_STEP_SIZE
See Also:
Constant Field Values

SUBCMD_PLL_TYPE

public static final int SUBCMD_PLL_TYPE
See Also:
Constant Field Values

SUBCMD_MAXIMUM_RF_CHANNEL

public static final int SUBCMD_MAXIMUM_RF_CHANNEL
See Also:
Constant Field Values

SUBCMD_MAXIMUM_RF_POWER

public static final int SUBCMD_MAXIMUM_RF_POWER
See Also:
Constant Field Values

SUBCMD_OPERATING_VOLTAGE

public static final int SUBCMD_OPERATING_VOLTAGE
See Also:
Constant Field Values

SUBCMD_AVAILABLE_BAUD_RATES

public static final int SUBCMD_AVAILABLE_BAUD_RATES
See Also:
Constant Field Values

SUBCMD_MAX_DIRECTED_SORT_LIST

public static final int SUBCMD_MAX_DIRECTED_SORT_LIST
See Also:
Constant Field Values

SUBCMD_SUPPORTED_TAG_TYPES

public static final int SUBCMD_SUPPORTED_TAG_TYPES
See Also:
Constant Field Values

SUBCMD_HOP_INTERVAL

public static final int SUBCMD_HOP_INTERVAL
See Also:
Constant Field Values

SUBCMD_RF_CHANNEL

public static final int SUBCMD_RF_CHANNEL
See Also:
Constant Field Values

SUBCMD_MAXIMUM_ANTENNA_NUMBER

public static final int SUBCMD_MAXIMUM_ANTENNA_NUMBER
See Also:
Constant Field Values

SUBCMD_SEND_MODULATION_CONT

public static final int SUBCMD_SEND_MODULATION_CONT
See Also:
Constant Field Values

SUBCMD_SET_MOD_CONTROL_MANUAL

public static final int SUBCMD_SET_MOD_CONTROL_MANUAL
See Also:
Constant Field Values

SUBCMD_GET_MOD_CONTROL_MANUAL

public static final int SUBCMD_GET_MOD_CONTROL_MANUAL
See Also:
Constant Field Values

SUBCMD_SET_PA_BIAS

public static final int SUBCMD_SET_PA_BIAS
See Also:
Constant Field Values

SUBCMD_GET_PA_BIAS

public static final int SUBCMD_GET_PA_BIAS
See Also:
Constant Field Values

SUBCMD_SET_PA_VDD

public static final int SUBCMD_SET_PA_VDD
See Also:
Constant Field Values

SUBCMD_GET_PA_VDD

public static final int SUBCMD_GET_PA_VDD
See Also:
Constant Field Values

SUBCMD_SET_RECEIVER_GAIN

public static final int SUBCMD_SET_RECEIVER_GAIN
See Also:
Constant Field Values

SUBCMD_GET_RECEIVER_GAIN

public static final int SUBCMD_GET_RECEIVER_GAIN
See Also:
Constant Field Values

SUBCMD_SET_AIR_INTERFACE_BAUD

public static final int SUBCMD_SET_AIR_INTERFACE_BAUD
See Also:
Constant Field Values

SUBCMD_GET_AIR_INTERFACE_BAUD

public static final int SUBCMD_GET_AIR_INTERFACE_BAUD
See Also:
Constant Field Values

SUBCMD_SET_CAL_TABLE_ENTRY

public static final int SUBCMD_SET_CAL_TABLE_ENTRY
See Also:
Constant Field Values

SUBCMD_GET_CAL_TABLE_ENTRY

public static final int SUBCMD_GET_CAL_TABLE_ENTRY
See Also:
Constant Field Values

SUBCMD_SET_NV_RAW

public static final int SUBCMD_SET_NV_RAW
See Also:
Constant Field Values

SUBCMD_GET_NV_RAW

public static final int SUBCMD_GET_NV_RAW
See Also:
Constant Field Values

SUBCMD_RESTORE_DEFAULT_NV

public static final int SUBCMD_RESTORE_DEFAULT_NV
See Also:
Constant Field Values

SUBCMD_RESTORE_DEFAULT_HOP

public static final int SUBCMD_RESTORE_DEFAULT_HOP
See Also:
Constant Field Values

SUBCMD_SET_HOP_TABLE_ENTRY

public static final int SUBCMD_SET_HOP_TABLE_ENTRY
See Also:
Constant Field Values

SUBCMD_GET_HOP_TABLE_ENTRY

public static final int SUBCMD_GET_HOP_TABLE_ENTRY
See Also:
Constant Field Values

SUBCMD_SET_READER_MANUF_INFO

public static final int SUBCMD_SET_READER_MANUF_INFO
See Also:
Constant Field Values

SUBCMD_SET_RADIO_MANUF_INFO

public static final int SUBCMD_SET_RADIO_MANUF_INFO
See Also:
Constant Field Values

SUBCMD_SET_RAW_RF_POWER

public static final int SUBCMD_SET_RAW_RF_POWER
See Also:
Constant Field Values

SUBCMD_GET_RAW_RF_POWER

public static final int SUBCMD_GET_RAW_RF_POWER
See Also:
Constant Field Values

SUBCMD_VOLTAGE_CALIBRATION

public static final int SUBCMD_VOLTAGE_CALIBRATION
See Also:
Constant Field Values

SUBCMD_SET_DIAGNOSTIC_MODE

public static final int SUBCMD_SET_DIAGNOSTIC_MODE
See Also:
Constant Field Values

SUBCMD_GET_DIAGNOSTIC_MODE

public static final int SUBCMD_GET_DIAGNOSTIC_MODE
See Also:
Constant Field Values

SUBCMD_SEND_PRIMITIVE_ONE_SHOT

public static final int SUBCMD_SEND_PRIMITIVE_ONE_SHOT
See Also:
Constant Field Values

SUBCMD_SET_RAW_MEMORY

public static final int SUBCMD_SET_RAW_MEMORY
See Also:
Constant Field Values

SUBCMD_GET_RAW_MEMORY

public static final int SUBCMD_GET_RAW_MEMORY
See Also:
Constant Field Values

SUBCMD_SET_PROGRAM_LENGTH

public static final int SUBCMD_SET_PROGRAM_LENGTH
See Also:
Constant Field Values

SUBCMD_GET_PROGRAM_LENGTH

public static final int SUBCMD_GET_PROGRAM_LENGTH
See Also:
Constant Field Values

SUBCMD_SET_PROGRAM_POWER_LEVELS

public static final int SUBCMD_SET_PROGRAM_POWER_LEVELS
See Also:
Constant Field Values

SUBCMD_GET_PROGRAM_POWER_LEVELS

public static final int SUBCMD_GET_PROGRAM_POWER_LEVELS
See Also:
Constant Field Values

SUBCMD_SET_DECODE_PARAMETERS

public static final int SUBCMD_SET_DECODE_PARAMETERS
See Also:
Constant Field Values

SUBCMD_GET_DECODE_PARAMETERS

public static final int SUBCMD_GET_DECODE_PARAMETERS
See Also:
Constant Field Values

SUBCMD_SET_DECODE_DIAG

public static final int SUBCMD_SET_DECODE_DIAG
See Also:
Constant Field Values

SUBCMD_SET_TREE_INV_METHOD

public static final int SUBCMD_SET_TREE_INV_METHOD
See Also:
Constant Field Values

SUBCMD_GET_TREE_INV_METHOD

public static final int SUBCMD_GET_TREE_INV_METHOD
See Also:
Constant Field Values

SUBCMD_SET_ETSI_LISTEN_CHANNEL

public static final int SUBCMD_SET_ETSI_LISTEN_CHANNEL
See Also:
Constant Field Values

SUBCMD_SET_MOD_FUDGE

public static final int SUBCMD_SET_MOD_FUDGE
See Also:
Constant Field Values

SUBCMD_GET_MOD_FUDGE

public static final int SUBCMD_GET_MOD_FUDGE
See Also:
Constant Field Values

SUBCMD_SET_SUSPENDERS_PARAMS

public static final int SUBCMD_SET_SUSPENDERS_PARAMS
See Also:
Constant Field Values

SUBCMD_GET_SUSPENDERS_PARAMS

public static final int SUBCMD_GET_SUSPENDERS_PARAMS
See Also:
Constant Field Values

SUBCMD_SET_PING_PARAMS

public static final int SUBCMD_SET_PING_PARAMS
See Also:
Constant Field Values

SUBCMD_GET_PING_PARAMS

public static final int SUBCMD_GET_PING_PARAMS
See Also:
Constant Field Values

SUBCMD_SET_ETSI_LISTEN_PARAMS

public static final int SUBCMD_SET_ETSI_LISTEN_PARAMS
See Also:
Constant Field Values

SUBCMD_GET_ETSI_LISTEN_PARAMS

public static final int SUBCMD_GET_ETSI_LISTEN_PARAMS
See Also:
Constant Field Values

RESPONSE_MESSAGE_OK

public static final int RESPONSE_MESSAGE_OK
See Also:
Constant Field Values

RESPONSE_INVENTORY_START

public static final int RESPONSE_INVENTORY_START
See Also:
Constant Field Values

RESPONSE_INVENTORY_TAG

public static final int RESPONSE_INVENTORY_TAG
See Also:
Constant Field Values

RESPONSE_INVENTORY_END

public static final int RESPONSE_INVENTORY_END
See Also:
Constant Field Values

RESPONSE_LIST_DUMP_START

public static final int RESPONSE_LIST_DUMP_START
See Also:
Constant Field Values

RESPONSE_LIST_DUMP_RECORD

public static final int RESPONSE_LIST_DUMP_RECORD
See Also:
Constant Field Values

RESPONSE_LIST_DUMP_END

public static final int RESPONSE_LIST_DUMP_END
See Also:
Constant Field Values

RESPONSE_DIAGNOSTIC_START

public static final int RESPONSE_DIAGNOSTIC_START
See Also:
Constant Field Values

RESPONSE_DIAGNOSTIC_DATA

public static final int RESPONSE_DIAGNOSTIC_DATA
See Also:
Constant Field Values

RESPONSE_DIAGNOSTIC_END

public static final int RESPONSE_DIAGNOSTIC_END
See Also:
Constant Field Values

RESPONSE_UPLOAD_OK

public static final int RESPONSE_UPLOAD_OK
See Also:
Constant Field Values

RESPONSE_UPLOAD_END

public static final int RESPONSE_UPLOAD_END
See Also:
Constant Field Values

RESPONSE_SUSPEND

public static final int RESPONSE_SUSPEND
See Also:
Constant Field Values

RESPONSE_RESUME

public static final int RESPONSE_RESUME
See Also:
Constant Field Values

RESPONSE_MESSAGE_OK_G2

public static final int RESPONSE_MESSAGE_OK_G2
See Also:
Constant Field Values

RESPONSE_UNKNOWN_LENGTH

public static final int RESPONSE_UNKNOWN_LENGTH
See Also:
Constant Field Values

RESPONSE_UNKNOWN_VALUE

public static final int RESPONSE_UNKNOWN_VALUE
See Also:
Constant Field Values

RESPONSE_UNKNOWN_COMMAND

public static final int RESPONSE_UNKNOWN_COMMAND
See Also:
Constant Field Values

RESPONSE_UNKNOWN_TAG_COMMAND

public static final int RESPONSE_UNKNOWN_TAG_COMMAND
See Also:
Constant Field Values

RESPONSE_OVERFLOW_ERROR

public static final int RESPONSE_OVERFLOW_ERROR
See Also:
Constant Field Values

RESPONSE_NO_TAG

public static final int RESPONSE_NO_TAG
See Also:
Constant Field Values

RESPONSE_ERASE_FAILED

public static final int RESPONSE_ERASE_FAILED
See Also:
Constant Field Values

RESPONSE_PROGRAM_FAILED

public static final int RESPONSE_PROGRAM_FAILED
See Also:
Constant Field Values

RESPONSE_TAG_LOCKED

public static final int RESPONSE_TAG_LOCKED
See Also:
Constant Field Values

RESPONSE_KILL_FAILED

public static final int RESPONSE_KILL_FAILED
See Also:
Constant Field Values

RESPONSE_LOCK_FAILED

public static final int RESPONSE_LOCK_FAILED
See Also:
Constant Field Values

RESPONSE_DATA_SIZE_MISMATCH

public static final int RESPONSE_DATA_SIZE_MISMATCH
See Also:
Constant Field Values

RESPONSE_HARDWARE_ERROR

public static final int RESPONSE_HARDWARE_ERROR
See Also:
Constant Field Values

RESPONSE_LIST_FULL

public static final int RESPONSE_LIST_FULL
See Also:
Constant Field Values

RESPONSE_UPLOAD_LINE_ERROR

public static final int RESPONSE_UPLOAD_LINE_ERROR
See Also:
Constant Field Values

RESPONSE_UPLOAD_INVALID

public static final int RESPONSE_UPLOAD_INVALID
See Also:
Constant Field Values

RESPONSE_UPLOAD_CRC_ERROR

public static final int RESPONSE_UPLOAD_CRC_ERROR
See Also:
Constant Field Values

RESPONSE_LOCK_CRC_ERROR

public static final int RESPONSE_LOCK_CRC_ERROR
See Also:
Constant Field Values

RESPONSE_TAG_LOST

public static final int RESPONSE_TAG_LOST
See Also:
Constant Field Values

RESPONSE_INVALID_KILL_CODE

public static final int RESPONSE_INVALID_KILL_CODE
See Also:
Constant Field Values

TAGDECODE_GOOD_ID

public static final int TAGDECODE_GOOD_ID
See Also:
Constant Field Values

TAGDECODE_NO_TAG

public static final int TAGDECODE_NO_TAG
See Also:
Constant Field Values

TAGDECODE_COLLISION

public static final int TAGDECODE_COLLISION
See Also:
Constant Field Values

TAGDECODE_CRC_ERROR

public static final int TAGDECODE_CRC_ERROR
See Also:
Constant Field Values

RESPONSE_STRINGS

public static final java.lang.String[] RESPONSE_STRINGS

SESSION_ID

public static int SESSION_ID

commandBuffer

public byte[] commandBuffer

unpackedCommandBuffer

public byte[] unpackedCommandBuffer

commandLength

public int commandLength

replyBuffer

public byte[] replyBuffer

replyBufferRaw

public byte[] replyBufferRaw

replyLength

public int replyLength

replyLengthRaw

public int replyLengthRaw

replyCommType

public int replyCommType

replyCommTypeHexString

public java.lang.String replyCommTypeHexString

replyCommTypeMessage

public java.lang.String replyCommTypeMessage

replyValueInt

public int replyValueInt

replyValueIntArray

public int[] replyValueIntArray

replyValueHexArray

public byte[] replyValueHexArray

tagTable

public TagTable tagTable

status

public int status

sessionID

public int sessionID

isCyclops

public boolean isCyclops
Constructor Detail

AlienDLEObject

public AlienDLEObject()
Constructs a new AlienDLEObject object.

Method Detail

prepareGenericCommand

public void prepareGenericCommand(int commandID)
Prepares a ReaderCommand, using 0 arguments for command paramters. Packetizes the command and sets up the commandBuffer with the DLE command message.

Parameters:
commandID - the code of the reader command

prepareGenericCommand

public void prepareGenericCommand(int commandID,
                                  int commandParam1)
Prepares a ReaderCommand, using 1 int argument for command paramters. Packetizes the command and sets up the commandBuffer with the DLE command message.

Parameters:
commandID - the code of the reader command
commandParam1 - the single parameter byte for this command

prepareGenericCommand

public void prepareGenericCommand(int commandID,
                                  int commandParam1,
                                  int commandParam2)
Prepares a ReaderCommand, using 2 int arguments for command paramters. Packetizes the command and sets up the commandBuffer with the DLE command message.

Parameters:
commandID - the code of the reader command
commandParam1 - the 1st parameter byte for this command
commandParam2 - the 2nd parameter byte for this command

prepareGenericCommand

public void prepareGenericCommand(int commandID,
                                  int commandParam1,
                                  int commandParam2,
                                  int commandParam3)
Prepares a ReaderCommand, using 3 int arguments for command paramters. Packetizes the command and sets up the commandBuffer with the DLE command message.

Parameters:
commandID - the code of the reader command
commandParam1 - the 1st parameter byte for this command
commandParam2 - the 2nd parameter byte for this command
commandParam3 - the 3rd parameter byte for this command

prepareGenericCommand

public void prepareGenericCommand(int commandID,
                                  int commandParam1,
                                  int commandParam2,
                                  int commandParam3,
                                  int commandParam4)
Prepares a ReaderCommand, using 4 int arguments for command paramters. Packetizes the command and sets up the commandBuffer with the DLE command message.

Parameters:
commandID - the code of the reader command
commandParam1 - the 1st parameter byte for this command
commandParam2 - the 2nd parameter byte for this command
commandParam3 - the 3rd parameter byte for this command
commandParam4 - the 4th parameter byte for this command

prepareGenericCommand

public void prepareGenericCommand(int commandID,
                                  int[] commandParamInts)
Prepares a ReaderCommand, using an int array for command paramters. Packetizes the command and sets up the commandBuffer with the DLE command message.

Parameters:
commandID - the code of the reader command
commandParamInts - an int array containing the parameters for this command

prepareGenericCommand

public void prepareGenericCommand(int commandID,
                                  byte[] commandParamBytes)
Prepares a ReaderCommand, using a byte array for command paramters. Packetizes the command and sets up the commandBuffer with the DLE command message.

Parameters:
commandID - the code of the reader command
commandParamBytes - a byte array containing the parameters for this command

prepareGenericCommand

public void prepareGenericCommand(byte[] commandByteSequence)
Prepares a ReaderCommand, using a byte array for the entire DLE command sequence, Command and Arguments. Packetizes the command and sets up the commandBuffer with the DLE command message.

Parameters:
commandByteSequence - a byte array containing the command and arguments

addReply

public int addReply(int b)
Adds a byte to a reader reply and returns the current status of the reader's response. This forms part of the DLE state machine. As bytes are read from the reader, they are passed to this method to construct the full reply within this AlienDLEObject's reply buffer.

Parameters:
b - the byte to add to the reply
Returns:
the current response status