Appendix J - FASIT II ICD_4Mar2024.pdf
PDF 676 KB Posted
- Attached to
- Live Training, Ranges, and Combat Training Centers (LTRaC) Multiple Award Contract (MAC) 1
- Solicitation number
- W900KK-25-R-0001
About this file
This document is an Interface Control Document (ICD) that describes the communications interface for controlling next-generation FASIT targets, trackless moving targets (TMTs), and related devices used in live-fire training. The ICD defines the network types, message formats, commands, status reporting, and general behaviors for these training devices. Key features include group addressing to efficiently control multiple targets, reporting for hit detection and GPS location, and fault diagnostic capabilities. The ICD supports stationary and moving infantry and armor targets, hit sensor modules, auxiliary control devices, and TMT platforms that can host various training devices. The ICD provides a standardized interface to allow the control system to manage the capabilities and behaviors of these live-fire training systems.
This ICD is related to a pre-solicitation notice for the Live Training, Ranges, and Combat Training Centers (LTRaC) Multiple Award Contract (MAC) 1, which will provide and install live-fire training systems to support military ranges worldwide. The government is seeking industry feedback on the draft Request for Proposal (RFP) before releasing the final solicitation.
View the file
Other files
Show all 21
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
ICD.FASIT II.TARGET
FASIT II TARGET/TMT
INTERFACE CONTROL DOCUMENT
4 MARCH 2024
Distribution A: Approved for Public Release
Page i
Approved by: PdM Tactical Training Systems
Points of Contact:
Jimmy Efantis, APM FASIT Futures james.efantis2.civ@army.mil
Jim Griffith, Deputy PdM Tactical Training Systems james.r.griffith56.civ@army.mil
James Todd, Tactical Training Systems Chief Engineer james.a.todd28.civ@army.mil mailto:james.efantis2.civ@army.mil mailto:james.r.griffith56.civ@army.mil mailto:james.a.todd28.civ@army.mil
Page ii
Table of Contents
1.0 SCOPE
1.1 DOCUMENT OVERVIEW
2.0 INTERFACE DESCRIPTION
2.1 NETWORK TYPE
2.2 NETWORK ENDPOINTS
2.3 BYTE TRANSMISSION ORDER
2.4 DATATYPES
2.5 TARGET AS A SERVICE
2.6 GROUP ADDRESSING
2.7 MESSAGES
2.7.1 Message Header
2.7.2 Announcement Messages
2.7.2.1 Range Init Message
2.7.3 General Purpose Messages
2.7.3.1 Target Join Message
2.7.3.2 FASIT Ping Request
2.7.3.3 FASIT Ping Response
2.7.4 Command Messages
2.7.4.1 Group Command
2.7.4.2 Aux Commands
2.7.4.3 Target Commands
2.7.4.4 TMT Commands
2.7.5 Status
2.7.5.1 Aux Status
2.7.5.2 Firmware Version
2.7.5.3 Target Status
2.7.5.4 TMT Status
2.7.6 Target and TMT Fault Codes
2.8 GENERAL TARGET BEHAVIOR
2.8.1 Target Expose
2.8.2 Target Conceal
2.8.3 Target Movement
2.8.4 Configure Ballistic Hit Sensor
2.8.5 Ballistic Hit Reporting
2.8.6 Aux Ports
2.8.7 GPS Reporting
2.8.8 Hit Sensitivity
2.9 SEQUENCE DIAGRAMS
2.9.1 Control System Startup With Target Running
2.9.2 Target Startup With No Control System Running
2.9.3 Target Startup With Control System Running
2.9.4 Idle Target
2.9.5 Delayed Response Cancelled
2.9.6 Nominal Target State Change
Page iii
2.9.7 Target Point-To-Point Command Nominal
2.9.8 Group Expose Command
2.9.9 TMT Startup Control
2.9.10 TMT Path and Reaction
Page iv
List of Figures
Figure 1: Big Endian Byte Ordering Figure 2: Control System Startup With Target Running Figure 3: Target Startup With No Control System Running Figure 4: Target Startup With Control System Running Figure 5: Idle Target Figure 6: Delayed Response Cancelled Figure 7: Nominal Target State Change Figure 8: Target Point-To-Point Command Nominal Figure 9: Group Expose Command Figure 10: TMT Control Figure 11: TMT Path and Reaction
Page v
List of Tables
Table 1 FASIT II ICD Quick Links Table 2: Message Datatypes Table 3: Message Header Table 4: Target Fault Codes Table 5 TMT Fault Codes
1.0 Scope
The FASIT II Target Interface Control Document (ICD) describes the communications interface for controlling next generation FASIT targets. The word “Target” is defined in FASIT II as a live-fire training device capable of displaying a representation to a shooter (typically a target silhouette). A Target advertises the services that it offers to the control system. The control system will receive status corresponding to these services and can issue commands that invoke or configure them.
The ICD also supports Trackless Moving Target (TMT) platforms. These devices support the ability to host FASIT targets, Battlefield Effects Simulators (BES), and other FASIT devices to assist with adding training realism to the warfighter. TMT platforms do not require fixed tracks and other range infrastructure. Target control systems create and execute missions that manage the TMT movement and behaviors.
Also included is a subclass of target devices called Hit Sensor Modules (HSM) which provides multi-zone hit detection functionality.
Standalone Aux (AUX) devices are included to provide simple device control capabilities for devices such as range limit markers and other devices that require remote on/off control.
1.1 Document Overview
This document is divided into two primary sections. Section 1 defines the overall scope of the document. Section 2 defines the details of the FASIT II communications interface including message structure and sequencing.
Table 1 FASIT II ICD Quick Links Message Type Description Target Types
Range Init Message Sent from control system to initialize the range
SIT, SAT, MIT, MAT, HTT,
HSM, AUX, TMTI, and
TMTV
Target Join Message Sent from targets to connect to range control system
SIT, SAT, MIT, MAT, HTT,
HSM, AUX, TMTI, and
TMTV
FASIT Ping Request Used by control system to determine if a target is up and communicating
SIT, SAT, MIT, MAT, HTT,
HSM, AUX, TMTI, and
TMTV
FASIT Ping Response Used by target to inform control system it is up and communicating
SIT, SAT, MIT, MAT, HTT,
HSM, AUX, TMTI, and
TMTV
Aux Commands Sent by control system to target devices containing aux outputs
SIT, SAT, MIT, MAT, HTT,
AUX, TMTI, and TMTV
Target Commands Commands sent by control system to presentation devices
SIT, SAT, MIT, MAT, HTT,
and HSM
TMT Commands Commands sent by control system to trackless moving targets
TMTI and TMTV
Aux Status Status sent from a target device with aux output capabilities to the control system
SIT, SAT, MIT, MAT, HTT,
AUX, TMTI, and TMTV
Firmware Version Status sent by all device types to control system.
SIT, SAT, MIT, MAT, HTT,
HSM, AUX, TMTI, and
TMTV
Target Status Status sent from a presentation device to control system
SIT, SAT, MIT, MAT, HTT,
HSM
TMT Status Status sent from a trackless moving target to the control system
TMTI and TMTV
2.0 Interface Description
2.1 Network Type
The FASIT II target interface is defined in such a way as to not dictate a specific network type for communicating. The network being used need only be capable of sending data point-to-point or point-to-multipoint (broadcast or multicast) at a bit rate that is adequate for the number of targets being controlled. Anticipated network types where FASIT II will be employed include IPv4, IPv6, ZigBee, and XBee DigiMesh, all of which support point-to-point and point-to-multipoint communications. However, in the future other network types may be identified that are suitable for FASIT II communications. Protocols being used on the network need not guarantee delivery of messages (e.g., UDP) but it is recommended that the network infrastructure be reliable in order to minimize retransmissions or lost messages. Each network frame shall contain a single FASIT II message in its entirety with no additional bytes before or after the message payload. It is important to note that this ICD is not intended for use over RF (UHF/VHF) low bit rate data radios. Communications using low bit rate RF will be covered by a different ICD that is optimized for that communications medium.
2.2 Network Endpoints
Communication on a network requires the concept of an “Endpoint” which defines a specific address that messages can be sent to in a point-to-point fashion. The use of point-to-multipoint messaging in FASIT II allows a Target to determine the Control System communication endpoint by retrieving the source address from point-to-multipoint messages it receives from the control system. Once the Target sends a point-to-point message to the Control System endpoint, the Target endpoint can be determined from the source address of the message, thus allowing both sides to communicate point-to-point when appropriate. For networks that utilize port numbers such as UDP over IPv4 or IPv6, the Control System shall broadcast/multicast on port 4000. The endpoint of the Control System shall be specified in the Target Join Message specified in Section 2.7.2.1. Endpoint Records shall consist of one-byte value specifying the endpoint type followed by an array of bytes containing the endpoint data whose format is dependent on the endpoint type. The endpoint record shall be used for identifying where the Target should send point-to-point data for the Control System.
IPv4 Endpoint 0x01 – Endpoint payload consists of a 4-byte IPv4 address followed by a 2-byte port number. Total Length: 7 bytes
IPv6 Endpoint 0x02 – Endpoint payload consists of a 16-byte IPv6 address followed by a 2-byte port number. Total Length: 19 bytes
Network Endpoint Large 0x03 – Endpoint payload consists of an 8-byte network address. Total Length: 9 bytes
Network Endpoint Medium 0x04 – Endpoint payload consists of a 4-byte network address.
Total Length: 5 bytes
Network Endpoint Small 0x05 – Endpoint payload consists of a 2-byte network address. Total Length: 3 bytes
2.3 Byte Transmission Order
All messages and data fields described in this ICD shall be defined on byte boundaries and transmitted in big-endian format. Figure 1 illustrates the order of transmission. Bits are numbered across the top of the figure. Bytes are transmitted in the order in which they are numbered.
Figure 1: Big Endian Byte Ordering
2.4 Datatypes
The base datatypes referenced in this ICD are defined in the table below. Message definitions and data structures that reference these types shall restrict the acceptable values as needed.
Table 2: Message Datatypes
Datatype Bytes Description unsigned char 1 Unsigned integral value. 0 - 255 char 1 Signed integral value, twos complement. -128 - 127 boolean 1 Unsigned integral value. 0 represents false. All other values represent true.
enum 1 char datatype restricted to a specific set of enumerated values.
unsigned short 2 Unsigned two-byte integral value. 0 - 65535 short 2 Signed two-byte integral value, twos complement. -32768 - 32767 unsigned int 4 Unsigned integral value. 0 – 4,294,967,295 int 4 Signed integral value. -2,147,483,648 – 2,147,483,647 float 4 Single precision floating point value as specified by IEEE STD 754-
1985.
unsigned long 8 Unsigned integral value. 0 - 18446744073709551615 long 8 Signed integral value. -9223372036854775808 -
9223372036854775807 double 8 Double precision floating point value as specified by IEEE STD
754-1985.
bit-field N/A A group of one or more bytes whose individual bit values have a specific meaning.
In certain instances, unsigned char, unsigned short, and unsigned int fields may be subdivided at the bit level in the interest of conserving network bandwidth. These instances shall be clearly identified in this ICD, specifying bit position, and number of bits to be used. When a numeric
01234567
01234567
01234567
01234567
6 7 8 value is being expressed in hexadecimal format, the value shall be preceded by “0x”. All other values are expressed in decimal format.
2.5 Target As A Service
The FASIT II architecture for targets represents a Target as a composition of capabilities. When announcing themselves to the control system, the Target declares a set of “Services” that it provides. These capabilities are declared via a bit-field (8 bits) where the state of each bit represents whether that service is provided by the target. A bit value of 1 declares that the Target provides the Service. Targets shall only report status records corresponding to Services that it provides.
Service Bit Position Description
Auxiliary Control 0 Auxiliary device control Aspect Change 1 Change silhouette aspect during exposure to Foe or
Friend representation.
GPS 2 GPS Location Reserved 3 – 7 Reserved for future use.
2.6 Group Addressing
In order to facilitate commanding groups of targets in an efficient manner, a group addressing scheme is required. When the control system is transmitting a command to a group of targets, the Message Type field in the header shall indicate a group command along with the type of command message being sent. An enumeration (enum) is used to identify the type of group being addressed which in turn defines the number of group address bytes to follow.
Group Unassigned (0, 0x00). This group address type is reserved for indicating that no group address has been assigned. It is not to be used by the Control System for group commanding and any target receiving a Target Group Command with this group address type shall discard the command. If a target receives a Group Membership command with this group address type, it shall clear all group membership data.
All Targets (255, 0xFF). When this group address type is present, there are no additional group address bytes. All targets receiving a group command with this group address type should attempt to execute the command. Membership to this group will not be commanded. All targets shall recognize this group and react to any command based on the services it provides.
All Stationary Targets (254, 0xFE). When this group address type is present, there are no additional group address bytes. All stationary targets (SIT, SAT, HTT) receiving a group command with this group address type should attempt to execute the command. Membership to this group will not be commanded. All stationary targets shall recognize this group and react to any command based on the services it provides.
All Stationary Infantry Targets (253, 0xFD). When this group address type is present, there are no additional group address bytes. All stationary infantry targets (SIT, HTT) receiving a group command with this group address type should attempt to execute the command.
Membership to this group will not be commanded. All stationary infantry targets shall recognize this group and react to any command based on the services it provides.
All Stationary Armor Targets (252, 0xFC). When this group address type is present, there are no additional group address bytes. All stationary armor targets (SAT) receiving a group command with this group address type should attempt to execute the command. Membership to this group will not be commanded. All stationary armor targets shall recognize this group and react to any command based on the services it provides.
All Moving Targets (251, 0xFB). When this group address type is present, there are no additional group address bytes. All moving targets (MIT, MAT) receiving a group command with this group address type should attempt to execute the command. Membership to this group will not be commanded. All moving targets shall recognize this group and react to any command based on the services it provides.
All Moving Infantry Targets (250, 0xFA). When this group address type is present, there are no additional group address bytes. All moving infantry targets (MIT) receiving a group command with this group address type should attempt to execute the command. Membership to this group will not be commanded. All moving infantry targets shall recognize this group and react to any command based on the services it provides.
All Moving Armor Targets (249, 0xF9). When this group address type is present, there are no additional group address bytes. All moving armor targets (MAT) receiving a group command with this group address type should attempt to execute the command. Membership to this group will not be commanded. All moving armor targets shall recognize this group and react to any command based on the services it provides.
Target Group Small (248, 0xF8). Group address type that will accommodate 256 or fewer Targets. Each Target is assigned a single bit in a 32-byte address array. The group address type byte is followed by a 1-byte group identifier. The group identifier allows for larger ranges to be subdivided into smaller Target groupings, usually based on their physical location on the range.
The group ID is followed by the 32-byte address array. The Control System shall assign the group ID and bit position within the address array with the FASIT Group Membership command payload. That command will be sent in response to a Target Join Message if the Target reports an absent or incorrect group address. A Target may belong to zero or one Target Group.
Target Group Large (247, 0xF7). Group address type that will accommodate 512 or fewer Targets. Each Target is assigned a single bit in a 64-byte address array. The group address type byte is followed by a 1-byte group identifier. The group identifier allows for larger ranges to be subdivided into smaller Target groupings, usually based on their physical location on the range.
The group ID is followed by the 64-byte address array. The Control System shall assign the group ID and bit position within the address array with the FASIT Group Membership command payload. That command will be sent in response to a Target Join Message if the Target reports an absent or incorrect group address. A Target may belong to zero or one Target Group.
2.7 Messages
Communication in FASIT II is in the form of digital messages sent in a point-to-point or point-to-multipoint fashion. The structure of the FASIT II messages is defined in the following subsections.
2.7.1 Message Header
All FASIT II messages shall utilize a common message header. This header allows the receiver to identify the message type, ICD version, and sequence number of the message payload that follows.
Table 3: Message Header
FASIT II Message Header. 6 bytes.
Field Datatype Description Message ID unsigned short Message type identifier.
ICD Major Version unsigned char ICD major version. Changes in major version indicate significant structural changes that are not backward compatible.
ICD Minor Version unsigned char ICD minor version. Changes in minor version indicate minor ICD changes that are typically backward compatible. Release notes should be consulted for backward compatibility determination.
Sequence Number unsigned short Message sequence number. Value shall be increased by 1 by the sender for each message transmitted. Once the Sequence Number reaches 65535, the next sequence value shall reset to 1.
2.7.2 Announcement Messages
Announcement messages are sent from the Control System in a point-to-multipoint fashion for the purpose of distributing important information to all Targets on a range. Announcements are not addressed to individual Targets. Upon receipt of an announcement message Targets shall react to the command in the manner defined in this ICD.
2.7.2.1 Range Init Message
During Control System startup, the Range Init Message is sent over the network in a point-to-multipoint fashion. The control system shall also send the Range Init message periodically during range idle time in order to discover Targets that have restarted since the control system startup and to ascertain comm status for Targets. Upon receiving a Range Init message Targets shall compare the Instance ID in the message to that of the most recently received Range Init message (if any). If this is the first Range Init message received or if the Instance ID does not match, the Target shall respond with a Target Join message after the designated random response interval. If any point-to-multipoint message is received while waiting to send a Target Join message, the Target shall cancel the sending of the Target Join message. This announcement serves the following purposes.
1. Allows Targets that are listening on the network to determine the network endpoint of the control system.
2. Inform Targets that they must cease any behaviors (e.g. expose, move, etc.) that they are currently performing (if any) if the Instance ID indicates a control system restart.
3. Define the Response-Interval (in seconds) for targets. Upon receiving the Range Init message, the Target shall calculate a Random Wait Interval in milliseconds between 100 and [(Response-Interval * 1000) – 500].
4. Upon receiving the Range Init message Targets shall wait for the calculated random wait interval after which they shall send a Target Join message to the Control System. If the Range Init message corresponds to a new Control System instance, the Target Join message shall also contain the current status of the Target. Otherwise no status shall be sent in the Target Join message. If a Target receives any point-to-multipoint message while waiting to send a Target Join message, that Target Join message send shall be cancelled. The Control System shall respond to the Target Join message with a FASIT Ack message.
Range Init Message Message ID: 0x1A00 Origin: Control System Transmission Mode: point-to-multipoint Length: 16 - 32 bytes Field Datatype Description Message Header Data Structure FASIT II Message Header defined in Table 2 Instance unsigned int Instance identifier for Target Controller randomly generated at startup. Target Controller shall not generate duplicate Instance identifiers on consecutive startups. Instance shall be a random value between 1 and 4,294,967,295.
Response Interval unsigned char Interval in seconds for sending a response to the Range Init message. The Target shall generate a random number between 100 and [(Response- Interval*1000) – 500] and wait that many milliseconds before sending a response. The range control system shall periodically re-send the Range Init message when the range is Idle.
Maximum Exposure Duration unsigned short Maximum amount of time in seconds that a Target can be in the exposed state before automatically concealing. If zero, Target may remain exposed for an indeterminate amount of time without automatically concealing.
Control System Endpoint
Data Structure FASIT II Network Endpoint as defined in Section 2.2
2.7.3 General Purpose Messages
2.7.3.1 Target Join Message
The Target Join Message is sent by a Target to the Control System in order to “join” the range and provide necessary Target Identity information. This message is sent in response to a Range Init message. When responding to a new instance of the control system as signified by the value of the Instance ID field of the Range Init message, the Target shall include full status. Otherwise, the Target shall omit status records.
Target Join Message Message ID: 0x1A01 Origin: Target Transmission Mode: point-to-point Length: Variable. Minimum 18 bytes Field Datatype Description Message Header Data Structure FASIT II Message Header defined in Table 2 FASIT ID unsigned int Globally unique 32-bit identifier. Most significant byte specifies the manufacturer. Remaining 3 bytes specifies a unique identifier for that manufacturer.
Target ID unsigned short 16-bit identifier unique for a given range.
Identifies a specific target location/pit.
Services bit-field (1 byte) Defines the services that are offered by the target as defined in Section 2.5
Target Type enum SIT: 0x01 SAT: 0x02 MIT: 0x03 MAT: 0x04;
HTT: 0x05 TMTI: 0x06 TMTV: 0x07 HSM: 0x08 (Hit Sensor Module. Provides ballistic multi-zone hit detection) AUX: 0x09 (Standalone Aux device)
Group Address Type enum Group Type used for Group Commanding. Valid values are Unassigned (0x00), Group Address Small (0xF8), and Group Address Large (0xF7) as defined in Section 2.6. When Unassigned or an invalid value, all group address field values shall be ignored.
Group ID unsigned char Group identifier as assigned by the Group Membership command.
Group Position unsigned short Bit position in the group address byte array which identifies the target. Valid values are 0 – 255 for
Group Address Small and 0 – 512 for Group Address Large. See Section 2.6
Target Status Data Structure List of Target Status Records representing current target state. See Section 2.7.5.1.1
2.7.3.2 FASIT Ping Request
The FASIT Ping Request message can be sent point-to-point by the Control System for the purpose of determining if Target is up and communicating. The Target is expected to respond with a FASIT Ping Response message. This message consists solely of a FASIT II Message Header with no payload.
FASIT Ping Request Message ID: 0x1A02 Origin: Target or Control System Transmission Mode: point-to-point Length: 6 bytes Field Datatype Description Message Header Data Structure FASIT II Message Header defined in Table 2
2.7.3.3 FASIT Ping Response
The FASIT Ping Response message is sent point-to-point by a Target in response to a FASIT Ping Request message for the purpose of verifying the communications path between the Control System and the Target. This message consists solely of a FASIT II Message Header and a response sequence number for correlating the Ping Response to the Ping Request.
FASIT Ping Response Message ID: 0x1A03 Origin: Target or Control System Transmission Mode: point-to-point Length: 8 bytes Field Datatype Description Message Header Data Structure FASIT II Message Header defined in Table 2 Response Sequence Number unsigned short Sequence number of the FASIT Ping Request message that is being responded to.
2.7.4 Command Messages
Command messages are transmitted by the control system to Targets in either a point-to-point or point-to-multipoint fashion. Commands can be classified into three categories:
Motion – Motion commands trigger a Target to perform an action that requires physical movement and as such the resultant Target action does not result in an immediate change of state. Examples of motion commands would be Expose, Conceal, and Move. When performing motion commands, Targets shall send status changes when they are detected during the action being performed. For example, after receiving an Expose command, the Target shall send exposure status to indicate the Target is in the Moving state and then another exposure status to indicate the Target is in the Exposed state.
Configuration – Configuration commands trigger an immediate change in Target state.
Examples of configuration commands would involve commands affecting ballistic hit sensors and Aux ports.
Status Request – Status request commands instruct the target to send one or more status records to the control system and have no effect on Target state. Upon receiving a point-to-point Target Command containing only a single Status Request corresponding to at least one service that it supports, a Target shall respond with the requested status regardless of the current Communication Mode. If a Target supports none of the requested services, it shall send no Status in response.
FASIT Command Message ID: 0x1A04 Origin: Control System Transmission Mode: point-to-multipoint Length: Variable Field Datatype Description Message Header Data Structure FASIT II Message Header defined in Table 2 Group Address Data Structure Group address to which the command or commands is being directed. See Section 2.6 Communications Mode bit-field, 1 byte One-byte bit-field with each bit representing a specific category of messages a Target may send.
Categories may be logically OR’d together to combine categories. Status for Power and Faults shall always be sent when changes are detected.
0x00: Targets shall send no status unless a Status Request command payload is received. Not recommended, as critical hit count updates shall not be sent by the Target.
0x01: Hit Count Updates. Most critical.
0x02: Exposure Updates 0x04: Movement Updates 0x08: Hit Sensor Configuration Updates 0x10: Aux Updates 0x20: GPS Updates
Command Payload Data Structure(s) One or more command payload structures.
2.7.4.1 Group Command
Group commands are sent point-to-multipoint to issue one or more commands to a group of targets. Each group command begins with a group address (See Section 2.6) that identifies which
Targets the command payload(s) apply to. Next is the current Communication Mode for the range. This informs all Targets on the range (including those not belonging to the specified group) what types of communications are currently allowed on the range. It consists of a bit-field specifying what types of messages shall be sent by the target until commanded otherwise. Values are logically OR’d together to combine communication modes. This field supplements the Communication Mode message in the event that a Target does not receive the announcement.
One or more command payload records follow. Each command payload record shall begin with a command identifier which defines the command to be executed and the structure of the remaining payload bytes. After reading a command payload record, if there are remaining bytes in the message, Targets shall continue reading the following command payload records until there are no bytes remaining in the message.
2.7.4.2 Aux Commands
Aux commands are sent point-to-point or point-to-multipoint from the Control System to targets that support aux capabilities. Upon receipt of an Aux Command corresponding to services it supports; the Aux device shall attempt to execute the command.
Aux1 Control Command ID: 0x05 Length: 2 Bytes Activate or deactivate the Aux1 port on the target according to the command fields.
Field Name Datatype Description Aux1 Mode enum Off: 0x00 (Turn Aux1 off)
No-Strobe: 0x01 (Assert signal and remain on) Single-Flash: 0x02 (Single pulse, 2 seconds between. The device shall wait a random interval between 0 – 1000 milliseconds before the first pulse.)
Burst-Flash: 0x03 (Multiple pulses, 2 seconds between. The device shall wait a random interval between 0 – 1000 milliseconds before the first pulse.)
Slow-Strobe: 0x04 (Strobe at 4 pulses/sec) Medium-Strobe: 0x05 (Strobe at 8 pulses/sec) Fast-Strobe: 0x06 (Strobe at 12 pulses/sec)
Aux2 Control Command ID: 0x06 Length: 2 Bytes Activate or deactivate the Aux2 port on the target according to the command fields.
Field Name Datatype Description Aux2 Mode enum Off: 0x00 (Turn Aux2 off)
No-Strobe: 0x01 (Assert signal and remain on) Single-Flash: 0x02 (Single pulse, 2 seconds between. The device shall wait a random interval between 0 – 1000 milliseconds before the first pulse.)
Burst-Flash: 0x03 (Multiple pulses, 2 seconds between. The device shall wait a random interval between 0 – 1000 milliseconds before the first pulse.)
Slow-Strobe: 0x04 (Strobe at 4 pulses/sec) Medium-Strobe: 0x05 (Strobe at 8 pulses/sec) Fast-Strobe: 0x06 (Strobe at 12 pulses/sec)
2.7.4.3 Target Commands
Target commands are sent point-to-point from the Control System to the Target with a group type of All Targets. Upon receipt of a Target Command corresponding to services it supports, the Target shall attempt to execute the command. For Motion commands, the Target shall send status messages as defined in Section 2.8.3. The control system may include multiple command payload structures into a Target Command in order to trigger multiple target actions. In this instance Targets shall execute the command payload records in the order that they appear in the Target Command message.
Command Payload Structures are contained within Group Commands and Target Commands and identify the action or actions that the Targets are expected to perform. Certain Command IDs are self-describing and require no additional payload information. Note that the specified length includes the Command ID.
Expose Command ID: 0x01 Length: 2 Bytes Expose if Target is in a Concealed state or transitioning to Concealed state. If Target is in an Exposed state or transitioning to an Exposed state, the Target shall set Aspect to the value in this command if the commanded value does not match current state. Targets shall only report detected ballistic hits when in an Exposed state or transitioning to an Exposed state. Targets supporting Aspect change shall change Aspect while exposed if the Aspect value in the command is different than current Aspect status.
Field Name Datatype Description Aspect enum Foe: 0x00. Foe representation of the silhouette is facing towards the firing position.
Friend: 0x01. Friend representation of the silhouette is facing towards the firing position.
Blade: 0x02. Silhouette Foe and Friend representations are facing perpendicular to the firing position. Shooter sees only the edge of the silhouette.
Conceal Command ID: 0x02 Length: 1 Byte Conceal the Target if in an Exposed state or transitioning to Exposed state. If target is in a Concealed state, do nothing.
Bob Command ID: 0x03 Length: 1 Byte If Target is in an Exposed state or transitioning to Exposed state, conceal and then expose the target.
Field Name Datatype Description Move Command ID: 0x04 Length: 3 Bytes
If a Target is stationary and positioned on the track such that it can move in the commanded direction, it shall execute the commanded movement. If a Target is in motion in the opposite direction of that specified in the Move command, the Target shall stop and begin moving in the commanded direction. If the Target is in motion in the same direction as an incoming Move command, it shall adjust its speed to match the Move command if necessary. Home is defined as being the location of the charging station and Forward direction is moving away from the charging station. Targets in motion towards Home or End that are in close proximity to the track endpoint shall not execute commands to move in the direction of the track endpoint.
Field Name Datatype Description Direction enum Stop: 0x00
Forward: 0x01 Reverse: 0x02
Speed unsigned char Speed in mph. 0 – 20 Configure Ballistic Hit Sensor
Command ID: 0x08 Length: 3 Bytes
Configure ballistic hit sensor according to the command fields. These settings shall apply for all hit detection zones. Upon receiving this command, Targets shall clear hit counts for all hit detect zones and send hit status for all hit detect zones.
Field Name Datatype Description Reaction enum Target reaction when hits are detected in the zone and when hit count reaches or exceeds Cumulative Hits To Kill or zone-specific Hits To Kill. Hit Sensor Module (HSM) devices shall ignore the Reaction field.
Fall: 0x00 – Target remains exposed until hit count reaches Hits To Kill at which point Target shall Conceal. If a MIT or MAT is in motion, it shall continue moving until commanded to stop or until it reaches track end. Fall shall be the default Reaction at target startup.
Fall and Stop: 0x01 - Target remains exposed until hit count reaches Hits To Kill at which point Target shall Conceal. If a MIT or MAT is in motion, it shall stop.
Hold: 0x02 – Target remains exposed regardless of the number of hit detections. Target shall not conceal unless commanded to do so or a safety condition dictates otherwise. If a MIT or MAT is in motion, it shall continue moving until commanded to stop or until it reaches track end.
Bob Kill: 0x03 – For each hit registered during exposure prior to Hit Count reaching Hits To Kill, target shall conceal and re-expose. When Hit Count reaches Hits To Kill target shall conceal. If a MIT or MAT is in motion, it shall continue moving until commanded to stop or until it reaches track end.
Bob Hold: 0x04 – For each hit registered during exposure, target shall conceal and expose. Target shall continue this behavior until commanded to conceal or a safety condition dictates otherwise.
If a MIT or MAT is in motion, it shall continue moving until commanded to stop or until it reaches track end.
Cumulative Hits To Kill unsigned char Aggregate number of hits across all ballistic hit detection zones required to consider the Target “killed”. Value has no meaning when Reaction is HOLD or BOB_HOLD. If this aggregate number of hits is reached, the global Reaction, as defined in this command, shall be performed regardless of per-zone Hits To Kill settings.
When only one hit detection zone is supported, Target shall also set Hits To Kill for that hit zone to this value.
Configure Hit Zone Command ID: 0x09 Length: 6 Bytes Configure hit detect zone according to the command fields. Targets shall only configure hit detect zones that it supports. Upon receiving this command, Target shall clear the hit count for the specified zone and reduce the Cumulative Hit Count by the number of hits that were cleared.
Field Name Datatype Description Zone ID unsigned char Identifier for the hit detect zone:
Singular Zone: 0x00 – Single hit detect zone for the entire target representation All Zones: 0xFF – Configuration shall be applied to all hit detection zones.
All other Zone ID values shall be mapped by the control system.
Sensor On enum Off: 0x00 On: 0x01 Zone sensors shall be On by default unless commanded otherwise. Target shall retain Sensor On setting after being reset via command or power cycle.
Sensitivity unsigned char 1 – 15 Sensitivity value of 1 is least sensitive and 15 is most sensitive.
Detect Mode enum Single: 0x00 Burst: 0x01 Detect mode shall be Single by default unless commanded otherwise. Burst mode detects a series of hits over a very short time frame and reports a single hit, such as when automatic weapons are in use. Target shall retain Detect Mode setting after being reset via command or power cycle.
Hits To Kill unsigned char Number of hits in the hit detect zone after which target is considered “killed”, 1 - 64. Target shall execute the Reaction specified in the Configure Ballistic Hit Sensor command when Hit Count reaches hits to kill. When only one hit detection zone is supported, Target shall also set Cumulative Hits To Kill to this value. Target shall retain Hits To Kill setting after being reset via command or power cycle.
Clear Hit Count Command ID: 0x0A Length: 2 bytes Clear the hit count in the specified zone and reduce the Cumulative Hit Count by the number of hits that were cleared.
Field Name Datatype Description Zone ID unsigned char Identifier for the hit detect zone:
Singular Zone: 0x00 – Single hit detect zone for the entire target representation All Zones: 0xFF – Hit count shall be cleared for all hit detection zones.
All other Zone ID values shall be mapped by the control system.
Status Request Command ID: 0x0B Length: 3 Bytes Send Target Status according to the bits that are set in the Status Type command field. Targets shall send a single Target Status message containing one or more status records.
Field Name Datatype Description Status Type bit-field (1 byte) Exposure: 0x01
Movement: 0x02 Hit Status: 0x04 Hit Sensor Config: 0x08 Aux Status: 0x10 GPS Status: 0x20 General Status: 0x40 (Power and Fault Status) Values shall be logically OR’d to request multiple types of status data. Targets shall only respond with status related to Services that it provides.
Delay unsigned char Upon receiving a non-zero delay value, the Target shall calculate a random wait value between 100 and ((Delay * 1000) – 500) milliseconds and wait that duration before sending the requested status. A target receiving a Delay value of 0 shall send the requested status immediately. Non-zero delays are intended to be used for group commands where several or perhaps all Targets are being queried for status.
The random delay serves to spread out Target responses in time, thus smoothing out network bandwidth utilization. If a Target receives any point-to-multipoint message while it is waiting to send status, that operation shall be cancelled with no status being sent.
Target Reset Command ID: 0x0C Length: 1 Byte Upon receiving this command, a Target shall first perform a graceful shutdown which includes concealing, and stopping movement. Once these actions are complete the target shall “reboot”, performing the same activities it would perform when the power switch has been turned off and then turned back on. This command has no additional fields.
Set Hit Count Command ID: 0x0D Length: 3 Bytes Set the hit count in the specified hit detect zone. For all Reactions other than HOLD and BOB_HOLD, if the hit count specified in the command exceeds the configured Hits To Kill for the zone, the Target shall set its hit count to the configured Hits To Kill value for the zone.
If the hit count specified in the command results in an increase of the Hit Count status in the specified zone and the Target is not in the Concealed state, the configured Reaction shall be performed by the target.
Field Name Datatype Description Zone ID unsigned char Identifier for the hit detect zone:
Singular Zone: 0x00 – Single hit detect zone for the entire target representation All Zones: 0xFF – Reserved but not used.
All other Zone ID values shall be mapped by the control system.
Hit Count unsigned char 0 – 64. A value of 0 shall have the same effect as the Clear Hit Count command.
Group Membership Command ID: 0x0E Length: 4 Bytes Assigns a group address to a Target. A Target shall belong to at most one group. This command payload shall only be sent in point-to-point Target Commands. If present in a Group Command the Target shall ignore this command.
Field Name Datatype Description Group Type enum Group type as described in Section 2.6. Valid enum values are:
Unassigned (0x00) – Clears any previously assigned group address. All other group membership field values shall be ignored by the Target.
Target Group Small (0xF8) – Group address array consists of 32 bytes (256 bits).
Target Group Large (0xF7) – Group address array consists of 64 bytes (512 bits).
Group ID unsigned char Group identifier. A training range may be subdivided into up to 256 subgroups of type Small and Large.
Group Position unsigned short Bit position within the group address array that identifies the Target. Targets receiving a Group Command with its assigned bit set in the address array shall attempt to execute the command.
Valid value is dependent on Group Type.
Unassigned (0x00): 0 Target Group Small (0xF8): 0 – 255 Target Group Large (0xF7): 0 – 512
Perform BIT Command ID: 0x0F Length: 2 Bytes Perform a Built-In-Test (BIT) and send full status afterwards.
Field Name Datatype Description Delay unsigned char Upon receiving a non-zero delay value, the
Target shall calculate a random wait value between 100 and ((Delay * 1000) – 500) milliseconds and wait that duration before sending status. A target receiving a Delay value of 0 shall send status immediately after performing the Built-In-Test. Non-zero delays are intended to be used for group commands where several or perhaps all Targets are commanded to perform a BIT. The random delay serves to spread out Target responses in time, thus smoothing out network bandwidth utilization. If a Target receives any point-to-multipoint message while it is waiting to send status, that operation shall be cancelled with no status being sent.
2.7.4.4 TMT Commands
TMT commands are sent point-to-point from the Control System to the TMT, so no Group Address is necessary. Upon receipt of a TMT Command corresponding to services it supports;
the TMT shall attempt to execute the command. The control system may include multiple command payload structures into a TMT Command to trigger multiple target actions. In this instance TMT shall execute the command payload records in the order that they appear in the TMT Command message.
Control Command ID: 0x10 Length: 2 Bytes Gain control of the TMT for maintenance or mission planning/execution. The TMT shall not support multiple modes of control.
Control Type enum Mission: 0x01. Request mission control of the
TMT
Maintenance: 0x02. Request maintenance control of the TMT
Release Control Command ID: 0x11 Length: 1 Byte Releases control of the TMT. The TMT should enter Maintenance mode.
Query Control Status Command ID: 0x12 Length: 1 Byte Command the TMT to send the current control mode as a control status message.
TMT Halt Command ID: 0x13 Length: 1 Byte Stop all actions and behaviors on the TMT and do not process any incoming commands until receiving the Release TMT Halt command. While halted, the TMT shall continue to send status and join messages. If in motion, the TMT shall stop. If Aux is active, it shall be turned off. Any currently executing paths shall be cancelled. Issuance of the TMT Halt command implies that a critical safety issue has been identified by range operations personnel that requires an immediate cessation of all range training operations until the range can be returned to a safe operating state.
Release TMT Halt Command ID: 0x14 Length: 1 Byte Release vehicle halt. The TMT will remain stopped until new commands are received.
Zone Load Command ID: 0x15 Length: 3 Bytes Message from control system to clear stored zones/boundaries on the TMT and begin storing zone/boundary messages received.
Field Name Datatype Description Zone Load Type enum Start: 0x00. Clear cache and begin loading zones from control system End: 0x01. The control system has finished sending zones
Zone or Boundary Number
Unsigned char The number of zones or boundaries expected to be sent from control system
Perform Reaction Command ID: 0x16 Length: 3 Bytes Send a movement reaction to the TMT.
Field Name Datatype Description Direction enum Forward: 0x00. Move in Drive gear at the specified speed. If in motion in Reverse gear, first stop and then move in Drive gear. If Speed value is zero, TMT shall stop.
Reverse: 0x01. Move in Reverse gear at the specified speed. If in motion in Drive gear, first stop and then move in Reverse gear. If Speed value is zero, TMT shall stop.
Stop: 0x02. Stop the TMT. Speed value shall be ignored.
Opposite: 0x03. If in motion in Drive gear, first stop and then move in Reverse gear. If in motion in Reverse gear, first stop and then move in Drive gear. If stopped, do nothing.
Speed Unsigned char The new speed requested in mph. If zero, TMT shall stop.
Boundary or Zone Command ID: 0x17 Length: 5 + (Number of
Points * 16) Bytes Send boundary or zone data to the TMT Field Name Datatype Description Feature Type enum Boundary: 0x00. A geographic boundary.
Speed Zone: 0x01. Zone with a speed constraint No-Go Zone: 0x02. Zone TMT is prohibited from entering.
Target Zone: 0x03. Target engagement zone.
Number of Points unsigned char The number of points in the boundary or zone.
This is primarily used to validate point array message length
Zone Identifier unsigned char Used to provide status to control system related to ingress/egress zone/boundary crossings
Maximum Speed unsigned char Maximum speed in mph if speed zone. Only used for speed zone.
Point Payload(s) Data Structure(s) One or more point payload structures listed in the order of connected points.
Path Command ID: 0x18 Length: 6 + (Number of
Waypoints * 16) + ((Number of Waypoints – 1)
* 2) Bytes
Execute path movement. The start to the end of the path is dictated by the order of the point and segment payloads. Segment payloads must be of length (number of waypoints – 1) and there must be at least 2 waypoints per path.
Field Name Datatype Description Path Type enum Transit: 0x00. A transit path. Beeping for safety
Mission: 0x01. A mission path Quiet Transit: 0x02. A transit path. No beeping.
Number of waypoints unsigned char The number of waypoints. This is primarily used to validate point array and segment message length
Path Identifier unsigned char Used to provide status to control system related to path execution
Path Gear enum Specifies the gear in which the TMT shall traverse the path.
Drive: 0x00 Reverse: 0x01
Goal Point enum Specifies the destination point of the path traversal.
Start: 0x00. Traverse path points in reverse order, terminating at the first path point.
End:0x01. Traverse path points in order, terminating at the last path point.
Point Payload(s) Data Structure(s) One or more point payload structures listed in the order of connected points.
Segment Payload(s) Data Structure(s) One or more segment payload structures listed in the order of connected segments.
TMT Status Request Command ID: 0x19 Length: 2 Bytes Send TMT Status according to the bits that are set in the Status Type command field. TMTs shall send a single TMT Status message containing one or more status records.
Field Name Datatype Description Status Type bit-field (1 byte) Position: 0x02
Current Path: 0x04 Aux Status: 0x08 General Status: 0x10 (Fault Status) Values shall be logically OR’d to request multiple types of status data. TMTs shall only respond with status related to Services that it provides.
TMT Pause Command ID: 0x1A Length: 1 Byte Pause an executing path. Upon receiving the command while executing a path, TMT shall stop and wait for a Resume command.
TMT Resume Command ID: 0x1B Length: 1 Byte Resume a path that has been paused. Upon receipt, TMT shall continue executing the path that was paused.
Position Report Rate Command ID: 0x1C Length: 3 Bytes Update the reporting frequency of position data.
Field Name Datatype Description GPS Location Report Frequency unsigned short The number of times per minute the TMT should report the current GPS position. A value of 0 indicates the TMT should not report position to the control system.
2.7.4.4.1 TMT Command Payload Structures
Point Payload Length: 16 Bytes A geographic latitude and longitude point Field Name Datatype Description Latitude (degrees) double -90° - 90° Longitude (degrees) double -180° - 180°
Segment Payload Length: 2 Bytes Segment between 2 points Field Name Datatype Description Default Speed unsigned char The default segment movement speed in mph Maximum Speed unsigned char The maximum segment movement speed in mph. Must be greater than or equal to Default Speed.
2.7.5 Status
Status messages are sent point-to-point by Targets or TMTs to the Control System in order to update the state model for the Target/TMT. Unless otherwise specified in this ICD, a Target shall send status immediately when it detects that its state has changed. When sending unsolicited status (not a response to a Status Request Command), the Target shall only send status records corresponding to state that has changed.
FASIT Status Message ID: 0x1A05 Origin: Target Transmission Mode: point-to-point Length: Variable Field Datatype Description Message Header Data Structure FASIT II Message Header defined in Table 2 Group Type enum Group type as described in Section 2.6. Valid enum values are:
Unassigned (0x00) – Clears any previously assigned group address. All other group membership field values shall be ignored by the Control System.
Target Group Small (0xF8) – Group address array consists of 32 bytes (256 bits).
Target Group Large (0xF7) – Group address array consists of 64 bytes (512 bits).
Group ID unsigned char Group identifier. A range may be subdivided into up to 256 subgroups of type Small and Large.
Group Position unsigned short Bit position within the group address array that identifies the Target. Targets receiving a Group Command with its assigned bit set in the address array shall attempt to execute the command.
Valid value is dependent on Group Type.
Unassigned (0x00): 0 Target Group Small (0xF8): 0 – 255 Target Group Large (0xF7): 0 – 512
Status Data Structure(s) One or more Status Record structures.
2.7.5.1 Aux Status
Aux status messages are made up of one or more Aux Status Records that reflect the current state of the Target or TMT containing aux capabilities.
Aux Record Record ID: 0x07 Length: 3 bytes Field Name Datatype Description Aux1 Mode enum Off: 0x00 (Aux1 is turned off)
No-Strobe: 0x01 (Assert signal and remain on) Single-Flash: 0x02 (Single pulse, 2 seconds between.
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 .