Attachment_0005_DoD Interoperability Guidelines for the Over Air Interfa....docx
DOCX document 143 KB Posted
- Attached to
- aRFID-V
- Solicitation number
- W52P1J-20-R-0044
About this file
This is a solicitation for the procurement of active radio frequency identification hardware, software, documentation, and technical engineering services. The Army Contracting Command-Rock Island is seeking these products and services through contract W52P1J-20-R-0044 to continue its aRFID-V program as a follow-on to the expiring aRFID-IV contract. Savi Technology, Inc. is the incumbent contractor, but all responsible sources may submit a proposal which will be considered for this non-competitive acquisition. The Army Materiel Command Joint Munitions Command is the contracting agency. The solicitation requires the delivery of aRFID hardware, software, and documentation to support the Department of the Army's aRFID program through the performance of technical engineering services.
View the file
Other files
Show all 20
On GovTribe
Work with this file
- Download the original file
- Contacts named in this file
- Similar government files
- Ask GovTribe AI about this file
Text version
DoD Interoperability Guidelines for the Over Air Interface Version 5.0 15 June 2018
Introduction This document contains Interoperability Guidelines for the Over Air Interface functionality of the RFID-V Compliant Active Transponders and Interrogators for the DoD Radio Frequency In-Transit Visibility (RF-ITV) system. The RFID-V Active Transponder Protocol is based upon the ISO/IEC 18000-7:2008 standard, with DoD specific changes and clarifications.
Normative references The following documents are applicable to this document:
ISO/IEC 18000-7:2008 Information technology — Radio frequency identification for item management — Part 7: Parameters for active air interface communications at 433 MHz
DoD Over Air Interface Guidelines
DoD Transponder Hardwire Electrical Interface & Data Protocol
DoD Routing Code Guidelines
DoD Active RFID Common Abstraction Interface Developer’s Java Doc
Terms Used in this Document Within this document, all references to ISO/IEC 18000-7 explicitly refer to the ISO/IEC 18000-7:2008 standard.
The term RFID-V Compliant Active Transponder Protocol will be used to refer to the composite protocol defined by the ISO/IEC 18000-7:2008 standard with the changes and clarifications identified in the DoD Over Air Guidelines document and the DoD Interoperability Guidelines for the Over Air Interface document.
The term aRFID-V RF Protocol refers to the over-the-air communications portion of the RFID-V Compliant Active Transponder Protocol.
The term aRFID-V Hardwire Protocol refers to the over-wire communications portion of the RFID-V Compliant Active Transponder Protocol, covering communications between a RFID-V complaint Active Transponder and a host computer. The aRFID-V Hardwire Protocol is based upon RFID-V Compliant Active Transponder Protocol incorporating the changes defined in the DoD Transponder Hardwire Electrical Interface & Data Protocol document.
RFID-V uses the term transponder to refer to the component which the ISO/IEC 18000-7 standard and related documents use the term tag. To simplify correlation between the ISO/IEC 18000-7 standard, the DoD Over Air Interface Guidelines and this document, the terms tag and transponder will both be used depending on the context.
RFID-V uses the term interrogator to refer to the component which ISO/IEC 18000-7 standard and related documents use both the terms reader and interrogator. In this document, the term interrogator will be used.
Order of Precedence of Protocol Documents RFID-V Compliant Active Transponder Protocol will be used to refer to the protocol based on the ISO/IEC 18000-7:2008 standard incorporating all changes and clarifications specified in the DoD Over Air Interface Guidelines document and any changes and differences identified in this document. In cases in which ISO/IEC 18000-7:2008 standard and the DoD Over Air Interface Guidelines document do not agree, the DoD Over Air Interface Guidelines takes precedence, and in any case where the ISO/IEC 18000-7:2008 standard and incorporated DoD Over Air Interface Guidelines do not agree with this document, this document takes precedence.
Implementation Details
RFID-V Active Transponder Protocol Implementation Requirements
RFID-V Active Transponder Protocol Commands which shall be Implemented on RFID-V Compliant Active Transponders
Table A contains a list of commands which are defined as mandatory for the transponder in the RFID-V Active Transponder Protocol. These commands shall be implemented on all RFID-V Compliant Active Transponders. These commands shall be implemented on the Transponder via RF (over-the-air) using the aRFID-V RF Protocol and for the hardwire interface using the aRFID-V Hardwire Protocol.
Table A – RFID-V Active Transponder Protocol Required Commands List
| Command Code |
| Command |
| 0x1F |
| Collection with Universal Data Block |
| 0x15 |
| Sleep |
| 0x16 |
| Sleep All But |
| 0x09 |
| Read Routing Code |
| 0x89 |
| Write Routing Code |
| 0x70 |
| Read Universal Data Block (UDB Type Codes: 0,1,2,3) |
RFID-V Active Transponder Protocol Optional Commands which shall be implemented on RFID-V Compliant Active Transponders
Table B contains a list of commands which are defined as optional for the transponder in the RFID-V Active Transponder Protocol, but shall be implemented on all RFID-V Compliant Active Transponders with the exception of the RFID-V License Plate type Transponder. These commands shall be implemented on the Transponder via RF (over-the-air) using the aRFID-V RF Protocol and for the hardwire interface using the aRFID-V Hardwire Protocol.
Table B — Required “Optional” RFID-V Active Transponder Protocol Commands List
| Command Code (+ Sub Command Code) |
| Command |
| 0x13 |
| Read User ID |
| 0x93 |
| Write User ID |
| 0x0C |
| Firmware Revision |
| 0x0E |
| Model Number |
| 0x26 ( + 0x01) |
| Table Create |
| 0x26 ( + 0x02) |
| Table Add Records |
| 0x26 ( + 0x03) |
| Table Update Records |
| 0x26 ( + 0x04) |
| Table Update Fields |
| 0x26 ( + 0x05) |
| Table Delete Record |
| 0x26 ( + 0x06) |
| Table Get Data |
| 0x26 ( + 0x07) |
| Table Get Properties |
| 0x26 ( + 0x08) |
| Table Read Fragment |
| 0x26 ( + 0x09) |
| Table Write Fragment |
| 0x26 ( + 0x10) |
| Table Query |
| 0xE1 |
| Beep On/Off |
| 0x8E |
| Delete Writeable Data |
RFID-V Active Transponder Protocol Optional Commands which shall be implemented on RFID-V Compliant Active License Plate Transponders
Table C contains a list of commands which are defined as optional for the transponder in the RFID-V Active Transponder Protocol, but which shall be implemented on RFID-V Compliant Active License Plate Transponders. These commands shall be implemented via RF (over-the-air) using the aRFID-V RF Protocol and for the hardwire interface (if implemented) using the aRFID-V Hardwire Protocol.
Table C -- Required “Optional” RFID-V Active Transponder Protocol Commands List for License Plate Transponders
| Command Code (+ Sub Code) |
| Command |
| 0x13 |
| Read User ID |
| 0x93 |
| Write User ID |
| 0x0C |
| Firmware Revision |
| 0x0E |
| Model Number |
| 0xE1 |
| Beep On/Off |
Regardless of whether the Database Table commands are implemented on RFID-V Compliant Active License Plate Transponder, the transponder shall support the Query Status UDB Element (see Section 4.1.3.1 – Table Query Results UDB Element (0x15) below).
RFID-V Active Transponder Protocol Optional Commands which shall NOT be implemented on RFID-V Compliant Active Transponders
Table D contains a list of commands which are identified as optional for the transponder in the RFID-V Active Transponder Protocol, which shall not be implemented by the Transponder on any RFID-V Compliant Active Transponder.
Table D — RFID-V Active Transponder Protocol Commands which shall NOT be implemented on a RFID-V Compliant Active Transponder
| Command Code |
| Command |
| 0x95 |
| Set Password |
| 0x97 |
| Set Password Protect Mode |
| 0x96 |
| Unlock |
Specifically, the password protection mechanism detailed in ISO/IEC 18000-7:2008 standard Section 6.3.4 titled Security Commands shall not be operative on any RFID-V Active Transponder. Specifically, transponders shall operate exclusively in the unlocked state, and shall not be capable of entering a locked state.
RFID-V Active Transponder Protocol Commands which may be implemented on RFID-V Compliant Active Transponders
Table E contains a list of commands which are identified as optional for the transponder in the RFID-V Active Transponder Protocol, which may be implemented on the RFID-V Compliant Active Transponder, at the vendors’ option. If implemented, the commands shall be implemented via RF (over-the-air) using the aRFID-V RF Protocol and for the hardwire interface (if implemented) using the aRFID-V Hardwire Protocol.
These commands are not planned to be used by the DoD RF-ITV system. These commands shall not be implemented if their implementation compromises the functionality of commands identified in Table A and Table B.
This command list is for RFID-V Active Transponders excepting the RFID-V Active License Plate Transponder which is addressed in the next section.
Table E — RFID-V Active Transponder Protocol Commands which may be implemented by Transponder
| Command Code |
| Command |
| 0x60 |
| Read Memory |
| 0xE0 |
| Write Memory |
RFID-V Active Transponder Protocol Commands which may be implemented on a RFID-V Compliant License Plate Transponder
Table F contains a list of commands which are indentified as optional for the transponder in the RFID-V Active Transponder Protocol, which may be implemented on the RFID-V Compliant Active License Plate Transponder, at the vendors’ option. If implemented, the commands shall be implemented via RF (over-the-air) using the aRFID-V RF Protocol and for the hardwire interface (if implemented) using the aRFID-V Hardwire Protocol by the vendor, via RF (over-the-air) and the Hardwire interface, These commands are expected to be used by DoD RF-ITV system. These commands shall not be implemented if their implementation compromises the functionality of commands identified in Table A and Table C.
Table F — RFID-V Active Transponder Protocol Commands which may be implemented by License Plate Transponder
| Command Code (+ Sub Command Code) |
| Command |
| 0x26 ( + 0x01) |
| Table Create |
| 0x26 ( + 0x02) |
| Table Add Records |
| 0x26 ( + 0x03) |
| Table Update Records |
| 0x26 ( + 0x04) |
| Table Update Fields |
| 0x26 ( + 0x05) |
| Table Delete Record |
| 0x26 ( + 0x06) |
| Table Get Data |
| 0x26 ( + 0x07) |
| Table Get Properties |
| 0x26 ( + 0x08) |
| Table Read Fragment |
| 0x26 ( + 0x09) |
| Table Write Fragment |
| 0x26 ( + 0x10) |
| Table Query |
| 0x8E |
| Delete Writeable Data |
| 0x60 |
| Read Memory |
| 0xE0 |
| Write Memory |
Transponder Minimum Database Functionality
Any RFID-V Compliant Active Transponders required to support database table memory, shall support at minimum, the Database functionality specified in Table G. Available database table memory shall be measured as amount of memory for user data when configured with 32 database tables.
These 32 database tables are specifically for user data. Any other database tables including query result table, vendor specific tables or tables that support sensor functionality shall be additional tables beyond these 32 tables and as such shall not be counted in these 32 tables.
Table G — Minimum Database Functionality
| Feature |
| Minimum |
| Number of Concurrent Database Tables |
| 32 Concurrent Tables |
| Number of Query Elements, Table Query commands to build a single complete Query) |
| 8 Query Elements |
| Table Query Results Table Size |
| 128 entries |
Transponder Non-volatile memory requirement
The transponder shall retain all user-writeable data in the event of battery removal or full battery depletion. User writeable data includes Routing Code, and User ID. If supported, Database tables and Read/Write memory shall also be retained in the event of battery removal or full battery depletion.
RFID-V Protocol Clarifications
This section covers DoD specific clarifications and interpretations of ISO/IEC 18000-7 standard and the protocol changes and clarifications identified in the DoD Over Air Interface Guidelines document.
Universal Data Block (UDB) Clarification and interpretation Transit Data UDB Type (0x00)
The Transit Data UDB includes the following two UDB Elements
1. Routing Code UDB Element
1. User ID UDB Element
The UDB Elements are only included in the Transit UDB if the data length is non-zero. For example, if User ID is zero length, The User ID Element will not be included in the Transit UDB.
Capability Data UDB Type (0x01)
The Capability Data UDB includes the following three UDB Elements
1. Optional Command List UDB Element
1. Memory Size UDB Element
1. Table Query Size UDB Element
Optional Command List UDB Element (0x12)
The Optional Command List UDB Element shall consist of the command codes listed in Table B and those in Table E if implemented by vendor. For the database commands, a single entry of the database table command code (0x26) will be used in the Optional Command List UDB Element. Sub Command Codes shall not be included in the Optional Command List UDB Element.
Memory Size UDB Element (0x13)
The Read/Write Memory field value shall represent the number of bytes of memory available to be read or written using the RFID-V Active Transponder Protocol Read Memory and Write Memory commands exclusively. If the Read Memory and Write Memory commands are not implemented, this field shall set to zero.
The Total Table Memory field value shall represent the total number of bytes of database memory usable for user data on a transponder. This value shall not include overhead memory needed to support basic database functionality. This value should not change regardless of number of database tables written to transponder. If database functionality is not supported by a transponder, this field shall be set to zero.
The Available Table Memory field value shall report the current number of bytes of database memory usable for user tables and data on a transponder. This value shall not include overhead memory needed to support basic database functionality. This value shall change as database tables are created on the transponder. If database functionality is not supported by a transponder, this field shall be set to zero.
Table Query Size UDB Element (0x14)
Each Table Query command communicates a single table query element, a sequence of Table Query commands is needed to communicate the complete query criteria for a Database Query operation. The Table Query Size UDB element returns the number of individual table query elements the transponder can support for a complete query criteria.
If database functionality is not supported by the transponder, the Table Query Size UDB Element shall not be included in the Transponder’s Capability Data UDB response.
Query Results UDB Type (0x02)
The Query Results UDB consists of a single UDB Element
1. Table Query Results UDB Element
The Table Query Results UDB Element shall be included in the Transponder’s Query Results UDB response, regardless of whether Database functionality is supported by the transponder.
Table Query Results UDB Element (0x15)
The format of the Table Query Results UDB Element is shown in Table H.
Table H -- Table Query Results UDB Element format
| UDB Element Type ID |
| Length of Data field in Bytes |
| Data |
| 1 byte |
| 1 byte |
| 7 bytes |
| 0x15 |
| 0x07 |
| Query Status Flag |
| Table ID |
| Number of Records Matched |
| Index of First Matched Record |
| 1 byte |
| 2 bytes |
| 2 bytes |
| 2 bytes |
The Table Query Results UDB Element data is dependent upon the Table Query State on the Tag. The Query State is described below in Section 4.6.15. The actual values to be included the Table Query Results UDB element are described in Table J below.
Table J -- Table Query Status
| Description of Query Results present on Transponder |
| Field contents |
| Query State |
| Query Status Flag |
| Table ID |
| Number of Records Matched |
| Index of First Matched Record |
| Query Results Present, query matches found |
| Query Results Present |
| 0x00 |
| ID of Table Queried |
| Use Results of Query |
| Use Results of Query |
| Query Results Present, no query matches found |
| Query Results Present |
| 0x00 |
| ID of Table Queried |
| 0x0000 |
| 0x0000 |
| No Query Results or Query Results were Cleared/Invalidated (initial condition of transponder) |
| No Query Results |
| 0x01 |
| 0x0000 |
| 0x0000 |
| 0x0000 |
| Query Expression Incomplete, partial Table Query received (Query valid so far) |
| Partial Query Received |
| 0x01 |
| 0x0000 |
| 0x0000 |
| 0x0000 |
| Invalid Query Expression Received (Table Query command out of sequence) |
| Invalid Query Received |
| 0x01 |
| 0x0000 |
| 0x0000 |
| 0x0000 |
| Invalid Table ID, Invalid Field or other Table Query Error |
| Invalid Query Received |
| 0x02 |
| 0x0000 |
| 0x0000 |
| 0x0000 |
| Database functionality not supported by transponder |
| Invalid Query Received |
| 0x02 |
| 0x0000 |
| 0x0000 |
| 0x0000 |
| Query Operation Timed Out |
| Partial Query Results |
| 0x03 |
| ID of Table Queried |
| Use Partial Results of Query (up to timeout) |
| Use Partial Results of Query (up to timeout) |
Hardware Fault Data UDB Type (0x03)
The Hardware Fault Data UDB provides a mechanism for the Transponder to report a hardware related fault condition (such as a low battery condition).
The Hardware Fault Data UDB consists of a single UDB Element
1. Hardware Fault Status UDB Element Hardware Fault Status UDB Element (0x15)
The Hardware Fault Status UDB Element consists of three data fields; a Lifetime Count of Hardware Resets, a Lifetime Count of Firmware Resets, and a Hardware Fault Bitmap.
1. The Hardware Fault Bitmap shall be implemented.
7. If any of the bits in the Hardware Fault Bitmap are in the set condition (‘1’), the Service Bit in the Tag Status Word shall be set.
7. Low Battery Detection shall be implemented
1. This bit flag shall be set (‘1’) when the tag’s battery has been depleted to the point that less than 10% - 20% of battery capacity remains.
7. On-Tag Memory Corruption (if detectable) may be indicated
2. Reports memory corruption or other memory fault
2. If not implemented, this bit shall remain cleared (‘0’);
1. Implementation of Lifetime Counts of Resets is recommended, not required.
8. This field shall not affect the Tag Status Word Service Bit.
8. If not implemented
1. This field shall always return 0x00.
8. If Implemented
2. if this count exceeds 255 (0xFF), the value (0xFF) shall be reported for this field
2. The value 0x00 is not expected from an operational tag
2. The vendor may implement a Hardwire Interface mechanism to reset this value.
1. Implementation of Lifetime Counts of Firmware Resets (Watchdog Timer events) is recommended, not required.
9. This field shall not affect the Tag Status Word Service Bit.
9. If not implemented
1. This field shall always return 0x00
9. If Implemented
2. If this count exceeds 255 (0xFF), the value (0xFF) shall be reported for this field
9. This field shall not affect the Tag Status Word Service Bit.
9. The vendor may implement a Hardwire Interface mechanism to reset this value.
Support of Low Battery Detection, and the Low Battery Detected status bit in the Hardware Fault Bitmap is mandatory for RFID-V Compliant Active Transponders, all other fields in the Hardware Fault Status UDB Element are optional.
Tag Status Field
The Tag Status Word (defined in DoD Over Air Interface Guidelines, Table 23) Service Bit shall be set (‘1’) whenever any of the bits in the Hardware Fault Bitmap (See Hardware Fault Data UDB Type, Hardware Fault Status Element) are set. The Lifetime Count of Hardware Resets and Lifetime Count of Firmware Resets values shall not have any effect on the Tag Status Word Service Bit.
Table 25 – Tag Status Word Field Format Bit
| 15 |
| 14 |
| 13 |
| 12 |
| 11 |
| 10 |
| 9 |
| 8 |
| Mode field |
| Alarm |
| Reserved |
| Reserved |
| Acknowledgement |
1 = NACK
0 = ACK
Bit
| 7 |
| 6 |
| 5 |
| 4 |
| 3 |
| 2 |
| 1 |
| 0 |
| Reserved |
| Tag type |
| Reserved |
| Reserved |
| Service bit |
For Vendor Use
Note: reserved fields are set to a value of “0”.
Specific Generalized Concepts
Session ID (formerly Interrogator ID)
The Session ID field in RFID-V Active Transponder Protocol over-air messages is “a 16-bit integer value that uniquely identifies an interrogator from any other RFID-V Compliant Interrogator in the local vicinity”. A Session ID conflict occurs when two interrogators use the same Session ID field value within the over-air communication range of any tag. For Fixed Interrogators or other interrogators which remain stationary (in a fixed location), Session ID conflicts can be avoided by assigning a unique Session ID value to each interrogator. A mobile interrogator (non static interrogator, typically a handheld interrogator) which can freely move has a much greater potential for causing interference since its population of neighboring interrogators is dynamically changing.
To avoid Session ID conflicts between interrogators, particularly interrogators used in time sensitive locations such as chokepoints, stationary and mobile (non-stationary) interrogators shall use separate Session ID spaces as shown in Table K below.
In addition, interrogators which operate in a stationary location shall use a static Session ID value, and the static Session ID value shall be configured at installation time. For handheld (mobile interactive) interrogators, the Session ID value may be changed dynamically to avoid interference with other nearby handheld interrogators.
Table K -- Session ID Ranges by Interrogator Type
| Type Of Interrogator |
| Session ID Range To Use |
| Stationary Interrogator |
| 0x0001 to 0x7FFF |
| Mobile (Non-Stationary) Interrogator |
| 0x8000 to 0xFFFE |
Transponder Sleep State
The transponder shall stay awake for 30 seconds after the last well formed command message packet with valid Protocol ID and CRC values, regardless of Manufacturer ID or Serial Number, unless otherwise commanded by the interrogator.
Data Encoding Manufacturing Information Commands Firmware Version
The firmware version is a 32 bit binary value, contents and encoding of the firmware version is left to the transponder manufacturer.
Model Number
The model number is a 16 bit binary value, contents and encoding of the model number is left to the transponder manufacturer.
Database Tables
The database table contents are not restricted to ASCII strings, binary data may be used. The Table Query comparison function shall operate on binary data. Wildcard searches cannot specify a search for the asterisk character (0x2A), as the asterisk is used to indicate a wild card search.
Error Codes and Error Responses
Error responses for Invalid command codes
The transponder shall generate an Invalid Command error response (0x01) upon receipt of:
1. Any command code not identified in the RFID-V Active Transponder Protocol.
1. Any Sub Command Code not identified in the RFID-V Active Transponder Protocol
Error responses for non-implemented command codes
The transponder shall generate an Optional Command Not Supported error response (0x03) upon receipt of:
1. Any command code identified in Table D above
1. Any command code identified in Table E which was not implemented
1. Any command code identified in Table F which was not implemented on a License Plate Transponder
Reporting a command timed-out error
RFID-V Compliant Active Transponders shall generate an Implementation Dependent Error (error code 0x3F) to indicate that a point-to-point command was unable to complete in the time permitted (as defined in section 5.1.3 Transponder Command Timing below). Table 19 shows the structure of this error code
Table 19 – Implementation Dependent Error
| Error Code |
| Sub-code |
| 0x3F |
| 1 byte |
Sub-code: a code as shown in Table L that describes the error more specifically. The following values are defined:
Table L – Implementation Dependent Error Sub-Codes for RFID-V Compliant Active Transponders
| Sub-code |
| Sub-error Name |
| Meaning |
| 0x00-0x7F |
| Reserved |
| Reserved for Manufacturer Use |
| 0x81 |
| Command Timed Out |
| The operation timed out before completing |
This error as shown in Table 19 shall be used to report that a point-to-point command was unable to complete in the time permitted, and has timed-out.
Not Found Errors and Boundary Exceeded Errors
The Not Found Error (error code 0x04) and Boundary Exceeded Error (error code 0x41) condition descriptions overlap for Record Not Found and Field Not Found. For the RFID-V Active Transponder Protocol, the use the Error Codes defined in Table M below.
Table M – Use of Not Found Errors verses Boundary Exceeded Errors
| Error Condition |
| Error Message |
| Error Code |
| Error Sub-Code |
| Table Does Not Exist |
| Not Found Error, Table Not Found |
| 0x04 |
| 0x01 |
| Record Does Not Exist |
| Boundary Exceeded, Record Not Found |
| 0x41 |
| 0x02 |
| Field Does Not Exist |
| Boundary Exceeded, |
| 0x41 |
| 0x04 |
Clarification and interpretation specifics of RFID-V Active Transponder Protocol commands
RFID-V Compliant Active Transponders error messages shall be implemented as defined in the tables below, which are intended to clarify specifics in like numbered tables in the ISO/IEC 18000-7 standard and the DoD Over Air Interface Guidelines document.
The error responses defined below explicitly define the complete contents of the error messages. This is done to avoid confusion and differing interpretations of the error response message descriptions found in the standard. The basis of these error response messages are the ISO/IEC 18000-7 standard, the DoD Over Air Interface Guidelines document, and this document. For example, in the case of the Invalid Parameter Error (error code 0x02), the sub-code and error parameter data values listed are derived from the documented error messages to the maximum extent possible.
4.6.0A RFID-V Active Transponder Protocol Collect with UDB Command
Upon receipt of a Collect with Universal Data Block command, the tag shall save all requested UDB data and ensure that no change to the UDB data shall occur until tag has returned to sleep state.
RFID-V Compliant Active Transponders shall at minimum support Collection with UDB commands with the command arguments parameter values listed in Table N.
Table N -- Required Parameter Support Ranges for Collection with UDB Command
| Parameter |
| Minimum value |
| Maximum value |
| Window Size |
| 1 |
| 36 |
| Max Packet Length |
| 20 |
| 78 |
RFID-V Active Transponder Protocol User ID Command
The error response shown in Table 39A shall be implemented for read User ID command errors.
Table 39A – (Read) User ID Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Memory Consistency |
| 0x0A |
| 0x03 |
| not used |
| Internal failure reading User ID from internal tag memory |
The error responses shown in Table 42 shall be implemented for write User ID command errors.
Table 42 – (Write) User ID Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x00 |
(offset of User ID Length parameter in Command Arguments) Requested User ID length is greater than 60 bytes
| Missing Parameter(s) |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| User ID Length parameter is missing or the length of the User ID parameter in bytes is fewer than specified in the User ID Length parameter |
| Write Failure |
| 0x0A |
| 0x01 |
| not used |
| Internal Failure Writing User ID to internal tag memory |
RFID-V Active Transponder Protocol Routing Code Command
The Routing Code read and write commands shall be implemented as defined in the RFID-V Active Transponder Protocol however the data contents and format of the Routing Code data field shall be as defined in the DoD Routing Code Guidelines document.
The error response shown in Table 39A shall be implemented for read User ID command errors.
Table 44A – (Read) Routing Code Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Memory Consistency |
| 0x0A |
| 0x03 |
| not used |
| Internal failure reading Routing Code from internal tag memory |
The error responses shown in Table 47 shall be implemented for write Routing Code command errors.
Table 47 – (Write) Routing Code Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x00 |
(offset of User ID Length parameter in Command Arguments) Requested Write Routing Code Length is greater than 50 bytes
| Missing Parameter(s) |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| Routing Code Length parameter is missing or the length of the Routing Code parameter in bytes is fewer than specified in the Routing Code Length parameter |
| Write Failure |
| 0x0A |
| 0x01 |
| not used |
| Internal Failure Writing Routing Code to internal tag memory |
4.6.2A RFID-V Active Transponder Protocol Write Memory Command
If the Write Memory command is implemented on the transponder, the transponder shall be capable of accepting write Number of Bytes in the range of 1 to 46, unless the transponder specifies fewer less than 46 bytes of read/write addressable memory in the transponder’s Memory Size UDB element (see section 4.1.2.2 above).
If the Write Memory command is implemented on transponder, the error responses shown in Table 47 shall be implemented for Read Memory command errors.
Table 54 – Write Memory Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x00 |
| Number of Bytes parameter is invalid, either 0 or greater than 46 (or the read/write memory size identified in the Memory Size UDB element if less than 46) |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x01 |
| The Start Address parameter is outside beyond the end of memory |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x00 |
| The Number of Bytes parameter added to the Start Address parameter lies outside the addressable memory on the tag |
| Missing Parameter |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| Fewer than 4 bytes of command arguments received (Number of Bytes and Start Address parameters) or The length of the Data parameter in bytes is fewer than specified in the Number Of Bytes parameter |
| Write Failure |
| 0x0A |
| 0x01 |
| not used |
| Internal failure writing to internal tag memory |
4.6.2B RFID-V Active Transponder Protocol Read Memory Command
If the Read Memory command is implemented on the transponder, the transponder shall be capable of handling Read Data lengths in the range of 1 to 46, unless the transponder specifies fewer less than 46 bytes of read/write addressable memory in the transponder’s Memory Size UDB element (see section 4.1.2.2 above).
If the Read Memory command is implemented on transponder, the error responses shown in Table 47 shall be implemented for Read Memory command errors.
Table 57 – Read Memory Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x00 |
| Received Number of Bytes to Read of zero, or greater than 46 bytes |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x01 |
| The Start Address parameter is outside beyond the end of memory |
| Missing Parameter(s) |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| Fewer than 4 bytes of command arguments received (Number of Bytes to Read and Start Address Parameters) |
| Memory Consistency |
| 0x0A |
| 0x03 |
| not used |
| Internal failure reading from internal tag memory |
RFID-V Active Transponder Protocol Delete Writeable Data Command
The command on the transponder shall be implemented as defined in the ISO/IEC 18000-7 standard.
The DOD Active RFID Common Abstraction Interface compliant driver for the interrogator shall insure that the Routing Code on the transponder is maintained across a Delete Writeable Data command sequence. Recommended Delete Writeable Data sequence is:
1. Read the Routing Code from the transponder
1. Send Delete Writeable Data command to the transponder
1. Write Routing Code back to transponder
Delete Writeable Data is not required to physically clear all writeable memory on the transponder. For example, all user created database tables shall be deleted, and any memory used by the database tables freed, but the physical memory which held the table record data is not required to be physically erased.
The error responses shown in Table 60 shall be implemented for Delete Writeable Data command errors.
Table 60 – Delete Writeable Data Command Errors
| Error |
| Error Code |
| Sub Code |
| Reason |
| Erase Failure |
| 0x0A |
| 0x02 |
| Internal failure deleting data in internal tag memory |
RFID-V Active Transponder Protocol Read Universal Data Block Command
RFID-V Compliant Active Transponders shall at minimum support Read Universal Data Block commands with the command arguments parameter values listed in Table R.
Table R-- Required Parameter Support Ranges for Read Universal Data Block Command
| Parameter |
| Minimum value |
| Maximum value |
| Max Packet Length |
| 21 |
| 78 |
The error responses shown in Table 63 shall be implemented for Read Universal Data Block command errors.
Table 63 – Read UDB Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x00 |
| Read UDB Type is unknown |
(Not 0,1, 2 or 3)
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x01 |
| Offset into UDB is beyond total length of specified UDB |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x03 |
| Max Packet Length was shorter than 21 |
(for over-the-air command)
| Missing Parameters |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| Fewer than 4 bytes of command arguments received |
(UDB Type Code, Offset into UDB, and Max Packet Length parameters)
| Memory Consistency |
| 0x0A |
| 0x03 |
| not used |
| Internal failure reading Universal Data Block from internal tag memory |
RFID-V Active Transponder Protocol Database Table Command Set
The transponder database consists of tables, records, and fields. Tables are referenced by a Table ID, records within a table are referenced by a Record Number, and fields within a record are referenced by a Field Number.
The Table ID of a database table is assigned at creation time. The actual Table ID value which may be assigned to a table is constrained by Table ID space definitions.
The Record Number is actually a zero based index to the record’s relative position in the table. Record Number zero is the first record in the table. Subsequent records added to a table have incrementing Record Numbers. The Record Number for specific record data is not fixed. Deleting records causes changes to the Record Numbering of records in the database table.
Field Numbers are a zero based index of relative field position within the record.
A Field is an untyped, fixed length byte array. A Record is a concatenated set of from one to thirty-two Fields. The length of each Field within a table Record is assigned at table creation time. The maximum number of Records which a table can hold is also defined at creation time.
Database Tables, once created, cannot be individually deleted, nor can the table’s schema be modified. The only way of deleting tables is issuing a Delete Writeable Data command which deletes all tables and table data on the transponder.
Database Table commands are identified by the Database Table Command Code (0x26) and a Sub Command Code which defines the Database Table operation. If the transponder receives a point-to-point Database Table Command (indicated by a Command Code of 0x26) and an unrecognized Sub Command Code; the transponder shall respond as shown in Table 82A below.
Table 63C – Table Command with Unrecognized Sub Command Code error
| Error |
| Error Code |
| Reason |
| Invalid Command Code |
| 0x01 |
| Unrecognized Sub Command Code to Database Table command |
RFID-V Active Transponder Protocol Table Create Command
The error responses shown in Table 66 shall be implemented for Table Create command errors.
Table 66 – Table Create Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x03 |
| Maximum Number of Records requested is zero |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x05 |
| Number of fields requested was zero or greater than 32 |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x06 + field number |
| A zero was received in the Length of Each Field list |
| Missing Parameter(s) |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| Fewer than ( 6 + number of fields) bytes of command arguments received (Sub Command Code, Table ID, Maximum Number of Records, and Number of Fields parameters) or The length of the Length of Each Field parameter in bytes is fewer than specified in the Number of Fields parameter |
| Table Already Exists |
| 0x06 |
| 0x02 |
| not used |
| Table exists with requested Table ID and this is not a retry command |
| Out of Memory |
| 0x06 |
| 0x03 |
| not used |
| Insufficient memory to create table |
| Table ID Reserved |
| 0x06 |
| 0x04 |
| not used |
| Table ID is reserved (for example Table ID 0x0000) |
| Write Failure |
| 0x0A |
| 0x01 |
| not used |
| Unable to write created table to internal memory |
The interrogator may retry the Table Create command by resending the command, insuring the Session ID, Command Code, Sub Command Code, Table ID, and Maximum Number of Records, Number of Fields, and Length of Each Field are the same as the original command. The tag must respond to any command retries (duplicates) of the Table Create command by sending a response equivalent to the response from the first successful invocation of the command.
Following successful completion of a Table Create command on a transponder, the Available Table Memory field of the Memory Size UDB Element shall be updated to indicate that user data memory consumed by the newly created table is no longer available for other use.
RFID-V Active Transponder Protocol Table Add Records Command
The interrogator shall not send a Table Add Records command using the Sequence ID value of 0x00.
The error responses shown in Table 70 shall be implemented for Table Add Records command errors.
Table 70 – Table Add Records Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x03 |
| Sequence ID is not unique, it was used in previous (non-retry) command |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x05 |
| Number of Records is 0x0000 |
| Missing Parameter(s) |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| Fewer than 6 bytes of command arguments received (Sub Command Code, Table ID, Sequence ID, and Number of Records parameters) |
| Table Does Not Exist |
| 0x04 |
| 0x01 |
| not used |
| No database table associated with provided Table ID |
| Object is Read Only |
| 0x09 |
| Not used |
| not used |
| Table ID is not writable (for example, Table ID 0x0000) |
| Memory Consistency |
| 0x0A |
| 0x03 |
| not used |
| Internal failure adding records to database table in internal tag memory |
| Table Full |
| 0x41 |
| 0x01 |
| not used |
| Table is too full to accept the number of additional records specified in Number of Records parameter. |
The interrogator may retry the Table Add Records command by resending the command, insuring the Session ID, Command Code, Sub Command Code, Table ID, Sequence ID and Number of Records are the same as the original command. The tag must respond to any command retries (duplicates) of the Table Add Records command by sending a response equivalent to the response from the first successful invocation of the command, and shall not add additional records to the table.
RFID-V Active Transponder Protocol Table Update Records Command
The error responses shown in Table 73 shall be implemented for Table Update Records command errors.
Table 73 – Table Update Records Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x05 |
| Number of Records is 0x0000 |
| Missing Parameter(s) |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| Fewer than 6 bytes of command arguments received (Sub Command Code, Table ID, Starting Record Number and Number of Records parameters) |
| Table Does Not Exist |
| 0x04 |
| 0x01 |
| not used |
| No database table associated with provided Table ID |
| Boundary Exceeded Record Does Not Exist |
| 0x41 |
| 0x02 |
| not used |
| Starting Record Number + Number of Records or Starting Record Number is beyond records in table |
| Object is Read Only |
| 0x09 |
| Not used |
| not used |
| Table ID is not writable (for example Table ID 0x0000) |
| Memory Consistency |
| 0x0A |
| 0x03 |
| not used |
| Internal failure updating database table in internal tag memory |
The interrogator may retry the Table Update Records command by resending the command, insuring the Session ID, Command Code, Sub Command Code, Table ID, Starting Record Number and Number of Records are the same as the original command. The tag must respond to any command retries (duplicates) of the Table Update Records command by sending a response equivalent to the response from the first successful invocation of the command, RFID-V Active Transponder Protocol Table Update Fields Command
The error responses shown in Table 76 shall be implemented for Table Update Fields command errors.
Table 76 – Table Update Fields Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x06 |
| Number of Fields is 0x00 or greater than 32 |
| Missing Parameter(s) |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| Fewer than 7 bytes of command arguments received (Sub Command Code, Table ID, |
Starting Record Number, Starting Field Number and Number of Fields parameters)
| Table Does Not Exist |
| 0x04 |
| 0x01 |
| not used |
| No database table associated with provided Table ID |
| Boundary Exceeded Record Does Not Exist |
| 0x41 |
| 0x02 |
| not used |
| Record Number is beyond number of records in the table |
| Boundary Exceeded Field Does Not Exist |
| 0x41 |
| 0x04 |
| not used |
| Starting Field Number or Starting Field |
Number plus Number of Fields is beyond the total number of fields in the table
| Object is Read Only |
| 0x09 |
| not used |
| not used |
| Table ID is not writable (for example, Table ID 0x0000) |
| Memory Consistency |
| 0x0A |
| 0x03 |
Internal Failure updating fields in database table in internal memory
The interrogator may retry the Table Update Fields command by resending the command, insuring the Session ID, Command Code, Sub Command Code, Table ID, Starting Record Number, Starting Field Number and Number of Fields are the same as the original command. The tag must respond to any command retries (duplicates) of the Table Update Fields command by sending a response equivalent to the response from the first successful invocation of the command, RFID-V Active Transponder Protocol Table Delete Record Command
The Table Delete Records command on the transponder shall be implemented such that the record being deleted is overwritten with the contents of the highest numbered record in the table, and then the highest numbered record is deleted from the table. See Figure 1 below
Figure 1-- Table Delete Record process
The Sequence ID value of 0x00 is reserved, all other values are permitted. The interrogator shall not send a Table Delete Record command using the Sequence ID value of 0x00.
The error responses shown in Table 79 shall be implemented for Table Delete Record command errors.
Table 79 – Table Delete Record Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x03 |
| Sequence ID is zero or is a repeat of the value used with a different record number |
| Missing Parameter(s) |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| Fewer than 6 bytes of command arguments received (Sub Command Code, Table ID, Sequence ID, and Record Number parameters) |
| Table Does Not Exist |
| 0x04 |
| 0x01 |
| not used |
| No database table associated with provided Table ID |
| Boundary Exceeded Record Does Not Exist |
| 0x41 |
| 0x02 |
| not used |
| Record Number is beyond records in table |
| Object is Read Only |
| 0x09 |
| not used |
| not used |
| Table ID is not writable (for example, Table ID 0x0000) |
| Memory Inconsistency |
| 0x0A |
| 0x03 |
| Not used |
| Internal failure deleting records in database table in internal tag memory |
| Time Out |
| 0x3F |
| 0x81 |
| not used |
| Command did not complete in time permitted for execution (see Section 5.1.3) and was aborted, Following termination of this command, the database may left in undefined state, assert the Tag Status Word Service Bit and Memory Corruption Detected flag in the Hardware Fault Bitmap of the Hardware Fault Data UDB Element |
The interrogator may retry the Table Delete Record command by resending the command, insuring the Session ID, Command Code, Sub Command Code, Table ID, Sequence ID, and Record Number are the same as the original command attempt. The tag must respond to any command retries (duplicates) of the Table Delete Record command by sending a response equivalent to the response from the first successful invocation of the command, and shall not delete any additional records from the table.
RFID-V Active Transponder Protocol Table Get Data Command A Table Get Data command execution shall not exceed the time limit specified in section 5.1.3 Transponder Command Timing, without timing-out and issuing the Command Timed Out error (see section 4.5.3 Reporting a command timed-out error).
The error responses shown in Table 82 shall be implemented for Table Get Data Code command errors.
Table 82 – Table Get Data Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x05 |
| Starting Field Number is greater than 32 |
| Missing Parameter(s) |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| Fewer than 6 bytes of command arguments received (Sub Command Code, Table ID, Record Number and Field Number parameters) |
| Table Does Not Exist |
| 0x04 |
| 0x01 |
| not used |
| No database table associated with provided Table ID |
| Table Does Not Exist |
| 0x04 |
| 0x01 |
| not used |
| Table ID 0x0000 and no query results available, no query since last table modification |
| Table Does Not Exist |
| 0x04 |
| 0x01 |
| not used |
| Table ID is 0x0000 and the first command of a new sequence of Table Query commands has been started but the final Table Query command has not been received |
| Boundary Exceeded Record Does Not Exist |
| 0x41 |
| 0x02 |
| not used |
| Record Number is beyond the number of instantiated records in table |
| Boundary Exceeded Record Does Not Exist |
| 0x41 |
| 0x04 |
| not used |
| Starting Field Number is beyond the number of fields in table |
| Memory Inconsistency |
| 0x0A |
| 0x03 |
| Not used |
| Internal failure accessing database table, record & field in internal tag memory |
| Command Timed Out |
| 0x3F |
| 0x81 |
| not used |
| Command did not complete in time permitted for execution (see section 5.1.3), no token available aborted |
The interrogator may retry the Table Get Data command by resending the command, insuring the Session ID, Command Code, Sub Command Code, Table ID, Starting Record Number, and Starting Field Number are the same as the original command. The tag must respond to any command retries (duplicates) of the Table Get Data command by sending a response equivalent to the response from the first successful invocation of the command, RFID-V Active Transponder Protocol Table Get Properties Command
For Table Get Properties commands referencing the Query Results Table (Table ID = 0x0000) the response is dependent upon the Table Query State on the Tag. The Query State is described below in Section 4.6.15.
The actual values to be included in the Table Get Properties response for Table ID 0x0000 are described below in Table P.
Table P – Table Get Properties Responses Based Upon Query Status
| State of Query Results present on Transponder |
| Table Number of Records Field contents |
| Maximum Number of Records Field |
| Query Results present, query matches found, filled or overflowed Query Results Table |
| Number of Records which satisfied Query Criteria |
(equal to value in Maximum Number of Records field) Maximum Number of Matched Records reportable by Transponder (Capacity of Table)
| Query Results present, query matches found, did not fill Query Results Table |
| Number of Records which satisfied Query Criteria |
(less than value in Maximum Number of Records field) Maximum Number of Matched Records reportable by Transponder (Capacity of Table)
| Query Results present, no query matches found |
| 0x0000 (Number of Records which satisfied Query Criteria) |
Maximum Number of Matched Records reportable by Transponder (Capacity of Table)
| Query Expression Incomplete, partial Table Query received |
| 0x0000 (Number of Records which satisfied Query Criteria) |
0x0000 (Flag Query Expression Incomplete)
Partial Query Results Query Execution Timed-Out and did not complete
| Number of Records which satisfied Query Criteria which were identified prior to Time-Out |
| Maximum Number of Matched Records reportable by Transponder (Capacity of Table) |
| No Query Results or Query Results Cleared/Invalidated |
| Return Table ID Not Found Error |
The error response shown in Table 85 shall be implemented for Table Get Properties command errors.
Table 85 – Table Get Properties Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Missing Parameter(s) |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| Fewer than 3 bytes of command arguments received (Sub Command Code and Table ID parameters) |
| Table Does Not Exist |
| 0x04 |
| 0x01 |
| not used |
| No database table associated with provided Table ID |
| Memory Inconsistency |
| 0x0A |
| 0x03 |
| not user |
| Internal error accessing database table in internal tag memory |
The interrogator may retry the Table Get Properties command by resending the command, insuring the Session ID, Command Code, Sub Command Code, and Table ID, are the same as the original command. The tag must respond to any command retries (duplicates) of the Table Get Properties command by sending a response equivalent to the response from the first successful invocation of the command.
RFID-V Active Transponder Protocol Table Read Fragment Command
The error responses shown in Table 88 at minimum shall be implemented for Table Read Fragment command errors.
Table 88 – Table Read Fragment Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x01 |
| Request Token is malformed (as defined by implementation) or Request Token is 0x00 |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 1 + Token Size |
| Requested Read Length is zero or exceeds the maximum allowable read length |
| Missing Parameter(s) |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| Fewer than 3 bytes of command arguments received (Sub Command Code, Request Token, Requested Read Length parameters) or the length of the Request Token parameter in bytes is fewer than is specified internal to the Token (high nibble of first byte of Token) |
| Memory Inconsistency |
| 0x0A |
| 0x03 |
| not used |
| Memory corrupted or failed accessing Table, Record, or Field |
| Command Timed Out |
| 0x3F |
| 0x81 |
| not used |
| Command did not complete in time permitted for execution (see section 5.1.3) |
| Stale Token |
| 0x40 |
| not used |
| not used |
| Token properly formed but stale, due to intervening table modification |
The interrogator may retry the Table Read Fragment command by resending the command, insuring the Session ID, Command Code, Sub Command Code, Request Token, and Requested Read Length are the same as the original command attempt. The tag must respond to any command retries (duplicates) of the Table Read Fragment command by sending a response equivalent to the response from the first successful invocation of the command.
RFID-V Active Transponder Protocol Table Write Fragment Command
An individual Table Write Fragment command shall fail with a boundary exceeded error (as shown in Table 91), and no data shall be written to the table if the Data Length specified in the command exceeds the number of bytes remaining to be written to the table based upon the originating Table Add Records, Table Update Records, or Table Update Fields command.
The error responses shown in Table 91 shall be implemented for the Table Write Fragment command errors.
Table 91 – Table Write Fragment Command Errors
| Error |
| Error Code |
| Sub Code |
| Error Parameter Data |
| Reason |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 0x01 |
| Request Token is malformed (as defined by implementation) or Request Token is 0x00 |
| Parameter Out of Range |
| 0x02 |
| 0x01 |
| 1 + Token Size |
| Requested Write Length is zero or exceeds the maximum allowable write length |
| Missing Parameter(s) |
| 0x02 |
| 0x02 |
| Number of command argument bytes received |
| Fewer than (token length + data length + 2) bytes of command arguments received (Sub Command Code, Request Token, Requested Data Length parameters) or the length of the Request Token parameter in bytes is fewer than is specified internal to the Token (high nibble of first byte of Token) |
| Memory Inconsistency |
| 0x0A |
| 0x01 |
| not used |
| Internal memory write failure |
| Stale Token |
| 0x40 |
| not used |
| not used |
| Token properly formed but stale, due to intervening table modification |
| Fragment Overrun |
| 0x41 |
| 0x03 |
| not used |
| Data Length of this request would exceed the length declared in the originating Table Add Records, Table Update Records, or Table Update Fields command |
The interrogator may retry the Table Write Fragment command by resending the command, insuring the Session ID, Command Code, Sub Command Code, Request Token, Data Length, and Data are the same as the original command attempt. The tag must respond to any command retries (duplicates) of the Table Write Fragment command by sending a response equivalent to the response from the first successful invocation of the command, and shall not effect any change to…
This is the start of the file's text. The full file is on GovTribe.
File details come from the government source that posted it. Updated .