Skip to content

SECS Message Format Specification

Table of Contents

  1. Overview
  2. SECS-II Data Format
  3. Stream Definitions
  4. Message Categories
  5. Common Message Examples
  6. Implementation Guidelines
Stream Function
S1 F1 F2 F3 F4 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24
S2 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30 F31 F32 F33 F34 F35 F36 F37 F38 F39 F40 F41 F42 F43 F44 F45 F46 F47 F48 F49 F50 F51 F52 F53 F54 F55 F56 F57 F58 F59 F60 F61 F62 F63 F64
S3 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30 F31 F32 F33 F34 F35 F36
S4 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26
S5 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30
S6 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30 F31 F32 F33 F34 F35 F36 F37 F38 F39 F40 F41 F42 F43 F44 F45 F46 F47 F48 F49 F50
S7 F1 F2 F3 F4 F5 F6 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30 F31 F32 F33 F34 F35 F36 F37 F38 F39 F40 F41 F42 F43 F44
S8 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30
S9 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30
S10 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30
S11 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30
S12 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30
S13 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30 F31 F32 F33 F34 F35 F36 F37 F38 F39 F40
S14 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30 F31 F32 F33 F34 F35 F36 F37 F38 F39 F40
S15 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30 F31 F32 F33 F34 F35 F36 F37 F38 F39 F40 F41 F42 F43 F44 F45 F46 F47 F48 F49 F50 F51 F52 F53 F54
S16 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30
S17 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30 F31 F32 F33 F34 F35 F36 F37 F38 F39 F40
S18 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30 F31 F32 F33 F34 F35 F36 F37 F38 F39 F40
S19 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30 F31 F32 F33 F34 F35 F36 F37 F38 F39 F40
S20 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30 F31 F32 F33 F34 F35 F36 F37 F38 F39 F40
S21 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24 F25 F26 F27 F28 F29 F30

Overview

SECS/GEM (Semiconductor Equipment Communications Standard/Generic Equipment Model) is a comprehensive communication protocol suite specifically designed for semiconductor manufacturing equipment. Developed by SEMI (Semiconductor Equipment and Materials International), it provides standardized methods for equipment communication, control, and data collection in semiconductor fabrication facilities.

Core Communication Concepts

SECS defines a standardized communication protocol for semiconductor manufacturing equipment, enabling consistent equipment integration and automation through stream and function organization, where streams (S1-S127) categorize message types by functionality and functions (F1-F255) define specific operations within each stream.

SECS-II Data Format

SECS-II defines a comprehensive data format specification for message structure and data representation in semiconductor equipment communication. The format supports hierarchical data organization through nested lists and various data types.

Data Types

Numeric Data Types

  • U1: 1-byte unsigned integer (0-255)
  • U2: 2-byte unsigned integer (0-65535)
  • U4: 4-byte unsigned integer (0-4294967295)
  • U8: 8-byte unsigned integer
  • I1: 1-byte signed integer (-128 to 127)
  • I2: 2-byte signed integer (-32768 to 32767)
  • I4: 4-byte signed integer (-2147483648 to 2147483647)
  • I8: 8-byte signed integer
  • F4: 4-byte floating point (IEEE 754 single precision)
  • F8: 8-byte floating point (IEEE 754 double precision)

Text and Binary Data Types

  • A: ASCII text string (printable characters)
  • B: Binary data (raw bytes)
  • J: JIS-8 Japanese text string
  • U: Unicode text string

Structured Data Types

  • L: List (container for multiple items)
  • BOOLEAN: Boolean value (TRUE/FALSE)

Message Structure

Basic Format

{L[n]
  item_1
  item_2
  ...
  item_n
}

  • L[n]: List containing n items
  • item: Individual data element of any supported type

Nested Lists

Lists can contain other lists, creating hierarchical data structures:

{L[2]
  {L[3]
    item_1_1
    item_1_2
    item_1_3
  }
  {L[2]
    item_2_1
    item_2_2
  }
}

Empty Data

  • Empty Message: No data content
  • Empty List: {L:0} - List with zero items

Data Encoding

Length Encoding

Each data item includes: 1. Format Code: 1 byte specifying data type 2. Length: Variable length field (1-4 bytes) 3. Data: Actual data content

Format Code Structure

  • Bits 7-2: Data type identifier
  • Bits 1-0: Length field size (0-3 bytes)

Example Encodings

ASCII String "HELLO":
-  0x41 (ASCII, 1-byte length)
- Length: 0x05 (5 characters)
- Data: 0x48 0x45 0x4C 0x4C 0x4F

U2 Value 1000:
-  0xA9 (U2, 2-byte length)
- Length: 0x00 0x02 (2 bytes)
- Data: 0x03 0xE8 (1000 in big-endian)

List with 2 items:
-  0x01 (List, 1-byte length)
- Length: 0x02 (2 items)
- Data: [encoded items]

Message Validation

Requirements

  • All numeric data must be in big-endian (network) byte order
  • ASCII strings must contain only printable characters (0x20-0x7E)
  • Lists must accurately specify item count
  • Message structure must match stream/function specification

Error Conditions

  • Invalid data type for message context
  • Incorrect data length
  • Malformed list structure
  • Character encoding violations

Stream Definitions

Stream 1: Equipment Status

Purpose: Equipment state information and basic communication

Message Direction Description
S1F1 → Equipment Are You There (Request)
S1F2 ← Equipment Are You There (Response)
S1F3 → Equipment Selected Equipment Status Request
S1F4 ← Equipment Selected Equipment Status Data
S1F5 → Equipment Formatted Status Request
S1F6 ← Equipment Formatted Status Data
S1F7 → Equipment Fixed Form Request
S1F8 ← Equipment Fixed Form Data
S1F9 → Equipment Material Transfer Status Request
S1F10 ← Equipment Material Transfer Status Data
S1F11 → Equipment Status Variable Namelist Request
S1F12 ← Equipment Status Variable Namelist Reply
S1F13 → Equipment Establish Communications Request
S1F14 ← Equipment Establish Communications Request Acknowledge
S1F15 → Equipment Request OFF-LINE
S1F16 ← Equipment OFF-LINE Acknowledge
S1F17 → Equipment Request ON-LINE
S1F18 ← Equipment ON-LINE Acknowledge
S1F19 → Equipment Get Attribute
S1F20 ← Equipment Attribute Data
S1F21 → Equipment Data Variable Namelist Request
S1F22 ← Equipment Data Variable Namelist Reply
S1F23 → Equipment Collection Event Namelist Request
S1F24 ← Equipment Collection Event Namelist Reply

S1F1 - Are You There (Request)

{}

S1F2 - Are You There (Response)

{} 
or
{L:0}

S1F3 - Selected Equipment Status Request

  {L[n]
    SVID
  }

S1F4 Selected Equipment Status Data

{L[n]
  SV
} 

S1F5 Formatted Status Request

SFCD

S1F6 Formatted Status Data

{L[n]
  SV
}

S1F7 Fixed Form Request

SFCD

S1F8 Fixed Form Data

{L[n]
  {L[2]
  SVNAME
  SV0
  }
}

S1F9 Material Transfer Status Request

{}

S1F10 Material Transfer Status Data

{L[2]
  TSIP
  TSOP
}

S1F11 Status Variable Namelist Request

{L[n]
  SVID
}

S1F12 Status Variable Namelist Reply

{L[n]
  {L[3]
    SVID
    SVNAME
    UNITS
  }
}

S1F13R Establish Communications Request

P->
{L[2]
  MDLN
  SOFTREV
}

A->
L[0]

S1F14 Establish Communications Request Acknowledge

P->
{L[2]
  COMMACK
  {L[2]
    MDLN
    SOFTREV
  }
}

A->
{L[2]
  COMMACK
  L:0
}

S1F15R Request OFF-LINE

{}

S1F16 OFF-LINE Acknowledge

OFLACK

S1F17R Request ON-LINE

{}

S1F18 ON-LINE Acknowledge

ONLACK

S1F19R Get Attribute

{L[3]
  OBJTYPE
  {L[n]
    OBJID
  }
  {L[n]
    ATTRID
  }
}

S1F20 Attribute Data

{L[2]
  {L[n]
    {L[n]
    ATTRDATA
    }
    }
    {L[n]
    {L[2]
      ERRCODE
      ERRTEXT
    }
  }
}

S1F21R Data Variable Namelist Request

{L[n]
  VID
}

S1F22 Data Variable Namelist Reply

{L[n]
  {L[3]
    VID
    DVVALNAME
    UNITS
  }
}

S1F23R Collection Event Namelist Request

{L[n]
  CEID
}

S1F24 Collection Event Namelist Reply

{L[n]
  {L[3]
    CEID
    CENAME
    {L[n]
     VID
    }
  }
}

Stream 2: Equipment Control and Diagnostics

Purpose: Equipment configuration and diagnostic operations

Message Direction Description
S2F1 → Equipment Equipment Status Request
S2F2 ← Equipment Equipment Status Response
S2F3 → Equipment Status Variable Value Request
S2F4 ← Equipment Status Variable Value Response
S2F5 ← Equipment Send Equipment Status
S2F6 → Equipment Send Equipment Status Acknowledge
S2F7 → Equipment Load Port Status Request
S2F8 ← Equipment Load Port Status Response
S2F9 → Equipment Equipment Status Multi-Block Inquire
S2F10 ← Equipment Equipment Status Multi-Block Grant
S2F11 ← Equipment Equipment Status Multi-Block
S2F12 → Equipment Equipment Status Multi-Block Acknowledge
S2F13 → Equipment Equipment Constant Request
S2F14 ← Equipment Equipment Constant Response
S2F15 → Equipment New Equipment Constant Send
S2F16 ← Equipment New Equipment Constant Acknowledge
S2F17 → Equipment Date and Time Request
S2F18 ← Equipment Date and Time Response
S2F19 → Equipment Recipe Body Request
S2F20 ← Equipment Recipe Body Response
S2F21 → Equipment Recipe Body Send
S2F22 ← Equipment Recipe Body Acknowledge
S2F23 → Equipment Trace Initialize Send
S2F24 ← Equipment Trace Initialize Acknowledge
S2F25 → Equipment Loopback Diagnostic Request
S2F26 ← Equipment Loopback Diagnostic Response
S2F27 → Equipment Initiate Processing Request
S2F28 ← Equipment Initiate Processing Acknowledge
S2F29 → Equipment Equipment Constant Namelist Request
S2F30 ← Equipment Equipment Constant Namelist Response
S2F31 → Equipment Date and Time Set Request
S2F32 ← Equipment Date and Time Set Response
S2F33 → Equipment Define Report
S2F34 ← Equipment Define Report Acknowledge
S2F35 → Equipment Link Event Report
S2F36 ← Equipment Link Event Report Acknowledge
S2F37 → Equipment Enable/Disable Event Report
S2F38 ← Equipment Enable/Disable Event Report Acknowledge
S2F39 → Equipment Status Variable Namelist Request
S2F40 ← Equipment Status Variable Namelist Response
S2F41 → Equipment Host Command Send
S2F42 ← Equipment Host Command Acknowledge
S2F43 → Equipment Reset Spooling Streams and Functions
S2F44 ← Equipment Reset Spooling Acknowledge
S2F45 → Equipment Define Variable Limit Attributes
S2F46 ← Equipment Define Variable Limit Attributes Acknowledge
S2F47 → Equipment Variable Limit Attribute Request
S2F48 ← Equipment Variable Limit Attribute Response
S2F49 → Equipment Enhanced Remote Command
S2F50 ← Equipment Enhanced Remote Command Acknowledge
S2F51 → Equipment Automated Substrate Mapping
S2F52 ← Equipment Automated Substrate Mapping Acknowledge
S2F53 → Equipment Enhanced Define Report
S2F54 ← Equipment Enhanced Define Report Acknowledge
S2F55 → Equipment Enhanced Link Event Report
S2F56 ← Equipment Enhanced Link Event Report Acknowledge
S2F57 → Equipment Enhanced Enable/Disable Event Report
S2F58 ← Equipment Enhanced Enable/Disable Event Report Acknowledge
S2F59 → Equipment Formatted Process Program Send
S2F60 ← Equipment Formatted Process Program Acknowledge
S2F61 → Equipment Formatted Process Program Request
S2F62 ← Equipment Formatted Process Program Response
S2F63 → Equipment Define Object
S2F64 ← Equipment Define Object Acknowledge

S2F1 - Equipment Status Request

{L[n]
  SVID_1
  SVID_2
  ...
  SVID_n
}

Parameters: - SVID: Status Variable ID (U1, U2, U4, or A)

S2F2 - Equipment Status Response

{L[n]
  SV_1
  SV_2
  ...
  SV_n
}

Parameters: - SV: Status Variable Value (corresponding to SVID in S2F1)

S2F3 - Status Variable Value Request

{L[n]
  SVID_1
  SVID_2
  ...
  SVID_n
}

Parameters: - SVID: Status Variable ID (U1, U2, U4, or A)

S2F4 - Status Variable Value Response

{L[n]
  SV_1
  SV_2
  ...
  SV_n
}

Parameters: - SV: Status Variable Value (corresponding to SVID in S2F3)

S2F5 - Send Equipment Status

{L[n]
  SV_1
  SV_2
  ...
  SV_n
}

Parameters: - SV: Status Variable Value (U1, U2, U4, or A)

S2F6 - Send Equipment Status Acknowledge

{}

Parameters: - Empty list (acknowledgment)

S2F7 - Load Port Status Request

{}

Parameters: - Empty list (request for all load port status)

S2F8 - Load Port Status Response

{L[n]
  {L[2]
    PORTID
    PORTSTATUS
  }
}

Parameters: - PORTID: Port Identifier (U1, U2, U4, or A) - PORTSTATUS: Port Status (U1, U2, U4, or A)

S2F9 - Equipment Status Multi-Block Inquire

{L[n]
  SVID_1
  SVID_2
  ...
  SVID_n
}

Parameters: - SVID: Status Variable ID (U1, U2, U4, or A)

S2F10 - Equipment Status Multi-Block Grant

GRANT

Parameters: - GRANT: Grant permission for multi-block transfer

S2F11 - Equipment Status Multi-Block

{L[n]
  SV_1
  SV_2
          ...
  SV_n
}

Parameters: - SV: Status Variable Value (corresponding to SVID in S2F9)

S2F12 - Equipment Status Multi-Block Acknowledge

{}

Parameters: - Empty list (acknowledgment)

S2F13 - Equipment Constant Request

{L[n]
  ECID_1
  ECID_2
          ...
  ECID_n
}

Parameters: - ECID: Equipment Constant ID (U1, U2, U4, or A)

S2F14 - Equipment Constant Response

{L[n]
  ECV_1
  ECV_2
  ...
  ECV_n
}

Parameters: - ECV: Equipment Constant Value (corresponding to ECID in S2F13)

S2F15 - New Equipment Constant Send

  {L[n]
  {L[2]
    ECID_1
    ECV_1
  }
  {L[2]
    ECID_2
    ECV_2
  }
  ...
  {L[2]
    ECID_n
    ECV_n
  }
}

Parameters: - ECID: Equipment Constant ID (U1, U2, U4, or A) - ECV: Equipment Constant Value (U1, U2, U4, or A)

S2F16 - New Equipment Constant Acknowledge

EAC

Parameters: - EAC: Equipment Acknowledge Code (U1, U2, U4, or A)

S2F17 - Date and Time Request

{}

Parameters: - Empty list (request for current date and time)

S2F18 - Date and Time Response

TIME

Parameters: - TIME: Date and Time value (A)

S2F19 - Recipe Body Request

  {L[2]
  RCMD
  RPARM
  }

Parameters: - RCMD: Recipe Command (A) - RPARM: Recipe Parameter (A)

S2F20 - Recipe Body Response

{L[2]
  RCMD
  RPARM
}

Parameters: - RCMD: Recipe Command (A) - RPARM: Recipe Parameter (A)

S2F21 - Recipe Body Send

{L[2]
  RCMD
  RPARM
}

Parameters: - RCMD: Recipe Command (A) - RPARM: Recipe Parameter (A)

S2F22 - Recipe Body Acknowledge

CMDA

Parameters: - CMDA: Command Acknowledge (A)

S2F23 - Trace Initialize Send

{L[5]
  TRID
  DSPER
  TOTSMP
  REPGSZ
  {L[n]
    SVID
}
}

Parameters: - TRID: Trace ID (A) - DSPER: Display Period (U1, U2, U4) - TOTSMP: Total Samples (U1, U2, U4) - REPGSZ: Report Page Size (U1, U2, U4) - SVID: Status Variable ID (U1, U2, U4, or A)

S2F24 - Trace Initialize Acknowledge

TIAACK

Parameters: - TIAACK: Trace Initialize Acknowledge (A)

S2F25 - Loopback Diagnostic Request

ABS

Parameters: - ABS: Arbitrary Binary String (B)

S2F26 - Loopback Diagnostic Response

ABS

Parameters: - ABS: Arbitrary Binary String (B)

S2F27 - Initiate Processing Request

{L[3]
  LOC
  PPID
  {L[n]
    MID
  }
}

Parameters: - LOC: Location (A) - PPID: Process Program ID (A) - MID: Material ID (A)

S2F28 - Initiate Processing Acknowledge

CMDA

Parameters: - CMDA: Command Acknowledge (A)

S2F29 - Equipment Constant Namelist Request

{L[n]
  ECID_1
  ECID_2
  ...
  ECID_n
}

Parameters: - ECID: Equipment Constant ID (U1, U2, U4, or A)

S2F30 - Equipment Constant Namelist Response

{L[n]
  {L[6]
    ECID
    ECNAME
    ECMIN
    ECMAX
    ECDEF
    UNITS
  }
}

Parameters: - ECID: Equipment Constant ID (U1, U2, U4, or A) - ECNAME: Equipment Constant Name (A) - ECMIN: Equipment Constant Minimum Value (U1, U2, U4, or A) - ECMAX: Equipment Constant Maximum Value (U1, U2, U4, or A) - ECDEF: Equipment Constant Default Value (U1, U2, U4, or A) - UNITS: Units (A)

S2F31 - Date and Time Set Request

TIME

Parameters: - TIME: Date and Time value (A)

S2F32 - Date and Time Set Response

TIACK

Parameters: - TIACK: Time Acknowledge (A)

S2F33 - Define Report

{L[2]
  DATAID
  {L[n]
    {L[2]
      RPTID
      {L[n]
        VID
  }
}
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - RPTID: Report ID (U1, U2, U4, or A) - VID: Variable ID (U1, U2, U4, or A)

S2F34 - Define Report Acknowledge

DRACK

Parameters: - DRACK: Define Report Acknowledge (A)

{L[2]
  DATAID
{L[n]
    {L[2]
      CEID
      {L[n]
        RPTID
      }
    }
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - CEID: Collection Event ID (U1, U2, U4, or A) - RPTID: Report ID (U1, U2, U4, or A)

LRACK

Parameters: - LRACK: Link Event Report Acknowledge (A)

S2F37 - Enable/Disable Event Report

{L[2]
  CEED
  {L[n]
    CEID
  }
}

Parameters: - CEED: Collection Event Enable/Disable (U1, U2, U4, or A) - CEID: Collection Event ID (U1, U2, U4, or A)

S2F38 - Enable/Disable Event Report Acknowledge

ERACK

Parameters: - ERACK: Event Report Acknowledge (A)

S2F39 - Status Variable Namelist Request

{L[2]
  DATAID
  DATALENGTH
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - DATALENGTH: Data Length (U1, U2, U4)

S2F40 - Status Variable Namelist Response

GRANT

Parameters: - GRANT: Grant permission for multi-block transfer

S2F41 - Host Command Send

{L[2]
  RCMD
  {L[n]
    {L[2]
      CPNAME
      CPVAL
  }
}
}

Parameters: - RCMD: Remote Command (A) - CPNAME: Command Parameter Name (A) - CPVAL: Command Parameter Value (A)

S2F42 - Host Command Acknowledge

{L[2]
  HCACK
    {L[n]
      {L[2]
        CPNAME
        CPACK
      }
    }
}

Parameters: - HCACK: Host Command Acknowledge (A) - CPNAME: Command Parameter Name (A) - CPACK: Command Parameter Acknowledge (A)

S2F43 - Reset Spooling Streams and Functions

{L[n]
{L[2]
  STRID
    {L[n]
  FCNID
}
  }
}

Parameters: - STRID: Stream ID (U1, U2, U4, or A) - FCNID: Function ID (U1, U2, U4, or A)

S2F44 - Reset Spooling Acknowledge

{L[2]
RSPACK
  {L[n]
    {L[3]
      STRID
      STRACK
      {L[n]
        FCNID
      }
    }
  }
}

Parameters: - RSPACK: Reset Spooling Acknowledge (A) - STRID: Stream ID (U1, U2, U4, or A) - STRACK: Stream Acknowledge (A) - FCNID: Function ID (U1, U2, U4, or A)

S2F45 - Define Variable Limit Attributes

{L[2]
  DATAID
{L[n]
    {L[2]
    VID
      {L[n]
        {L[2]
    LIMITID
          {L[2]
    UPPERDB
    LOWERDB
          }
        }
      }
  }
}
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - VID: Variable ID (U1, U2, U4, or A) - LIMITID: Limit ID (U1, U2, U4, or A) - UPPERDB: Upper Database (U1, U2, U4, or A) - LOWERDB: Lower Database (U1, U2, U4, or A)

S2F46 - Define Variable Limit Attributes Acknowledge

{L[2]
  VLAACK
  {L[n]
    {L[3]
      VID
      LVACK
      {L[2]
        LIMITID
        LIMITACK
      }
    }
  }
}

Parameters: - VLAACK: Variable Limit Attributes Acknowledge (A) - VID: Variable ID (U1, U2, U4, or A) - LVACK: Limit Value Acknowledge (A) - LIMITID: Limit ID (U1, U2, U4, or A) - LIMITACK: Limit Acknowledge (A)

S2F47 - Variable Limit Attribute Request

{L[n]
  VID_1
  VID_2
  ...
  VID_n
}

Parameters: - VID: Variable ID (U1, U2, U4, or A)

S2F48 - Variable Limit Attribute Response

{L[n]
  {L[2]
    VID
    {L[4]
      UNITS
      LIMITMIN
      LIMITMAX
      {L[n]
        {L[3]
    LIMITID
    UPPERDB
    LOWERDB
  }
}
    }
  }
}

Parameters: - VID: Variable ID (U1, U2, U4, or A) - UNITS: Units (A) - LIMITMIN: Limit Minimum (U1, U2, U4, or A) - LIMITMAX: Limit Maximum (U1, U2, U4, or A) - LIMITID: Limit ID (U1, U2, U4, or A) - UPPERDB: Upper Database (U1, U2, U4, or A) - LOWERDB: Lower Database (U1, U2, U4, or A)

S2F49 - Enhanced Remote Command

{L[4]
  RCMD
      CPNAME
  CEPVAL
      CPACK
    }

Parameters: - RCMD: Remote Command (A) - CPNAME: Command Parameter Name (A) - CEPVAL: Command Parameter Value (A) - CPACK: Command Parameter Acknowledge (A)

S2F50 - Enhanced Remote Command Acknowledge

{L[2]
  HCACK
  {L[n]
    {L[2]
      CPNAME
      CEPACK
    }
  }
}

Parameters: - HCACK: Host Command Acknowledge (A) - CPNAME: Command Parameter Name (A) - CEPACK: Command Parameter Acknowledge (A)

S2F51 - Request Report Identifiers

header only

S2F52 - Return Report Identifiers

  {L[n]
  RPTID
}
Parameters: - RPTID: Report ID (U1, U2, U4, or A)

S2F53 - Request Report Definitions

{L[n]
  RPTID
}
Parameters: - RPTID: Report ID (U1, U2, U4, or A)

S2F54 - Return Report Definitions

  {L[n]
    {L[2]
      RPTID
    {L[n]
      VID
    }
  }
}
Parameters: - RPTID: Report ID (U1, U2, U4, or A) - VID: Variable ID (U1, U2, U4, or A)

{L[n]
  CEID
}
Parameters: - CEID: Collection Event ID (U1, U2, U4, or A)

  {L[n]
  {L[3]
      CEID
    CENAME
    {L[n]
      RPTID
    }
  }
}
Parameters: - CEID: Collection Event ID (U1, U2, U4, or A) - CENAME: Collection Event Name (A) - RPTID: Report ID (U1, U2, U4, or A)

S2F57 - Request Enabled Events

{}

S2F58 - Return Enabled Events

  {L[n]
  CEID
  }
Parameters: - CEID: Collection Event ID (U1, U2, U4, or A)

S2F59 - Request Spool Streams and Functions

{}

S2F60 - Return Spool Streams and Functions

{L[n]
  {L[2]
    STRID
    {L[n]
      FCNID
    }
  }
}
Parameters: - STRID: Stream ID (U1, U2, U4, or A) - FCNID: Function ID (U1, U2, U4, or A)

S2F61 - Request Trace Identifiers

{}

S2F62 - Return Trace Identifiers

{L[n]
  TRID
}
Parameters: - TRID: Trace ID (A)

S2F63 - Request Trace Definitions

{L[n]
  TRID
}
Parameters: - TRID: Trace ID (A)

S2F64 - Return Trace Definitions

  {L[n]
  {L[5]
    TRID
    DSPER
    TOTSMP
    REPGSZ
    {L[n]
      SVID
      }
    }
  }
Parameters: - TRID: Trace ID (A) - DSPER: Display Period (U1, U2, U4) - TOTSMP: Total Samples (U1, U2, U4) - REPGSZ: Report Page Size (U1, U2, U4) - SVID: Status Variable ID (U1, U2, U4, or A)

Stream 3: Material Status

Purpose: Material and carrier tracking

Message Direction Description
S3F1 → Equipment Material Status Request
S3F2 ← Equipment Material Status Data
S3F3 → Equipment Time to Completion Data
S3F4 ← Equipment Time to Completion Data
S3F5 ← Equipment Material Found Send
S3F6 → Equipment Material Found Acknowledge
S3F7 → Equipment Material Lost Send
S3F8 ← Equipment Material Lost Ack
S3F9 ← Equipment Matl ID Equate Send
S3F10 → Equipment Matl ID Equate Ack
S3F11 → Equipment Matl ID Request
S3F12 ← Equipment Matl ID Request Ack
S3F13 ← Equipment Matl ID Send
S3F14 → Equipment Matl ID Ack
S3F15 → Equipment SECS-I Matls Multi-block Inquire
S3F16 ← Equipment Matls Multi-block Grant
S3F17 → Equipment Carrier Action Request
S3F18 ← Equipment Carrier Action Ack
S3F19 → Equipment Cancel All Carrier Out Req
S3F20 ← Equipment Cancel All Carrier Out Ack
S3F21 → Equipment Port Group Defn
S3F22 ← Equipment Port Group Defn Ack
S3F23 → Equipment Port Group Action Req
S3F24 ← Equipment Port Group Action Req
S3F25 → Equipment Carrier ID Request
S3F26 ← Equipment Carrier ID Response
S3F27 → Equipment Carrier ID Send
S3F28 ← Equipment Carrier ID Acknowledge
S3F29 → Equipment Substrate Location Request
S3F30 ← Equipment Substrate Location Response
S3F31 ← Equipment Substrate Location Send
S3F32 → Equipment Substrate Location Acknowledge
S3F33 → Equipment Load Lock Status Request
S3F34 ← Equipment Load Lock Status Response
S3F35 ← Equipment Load Lock Status Send
S3F36 → Equipment Load Lock Status Acknowledge

S3F1 - Material Status Request

{}

S3F2 - Carrier Action Response

{L[2]
  MF
  {L[n]
    {L[3]
      LOC
      QUA
      MID
    }
  }
}

S3F3 - Time to Completion Data

{}

S3F4 - Time to Completion Data

{L[2]
  MF
  {L[n]
    {L[3]
      TTC
      QUA
      MID
    }
  }
}

S3F5 - Material Found Send

{L[2]
  MF
  QUA
}

S3F6 - Material Found Acknowledge

ACKC3
- ACKC3: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error

S3F7 - Material Lost Send

{L[3]
  MF
  QUA
  MID
}

S3F8 - Material Lost Ack

ACKC3
- ACKC3: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error

S3F9 - Matl ID Equate Send

{L[2]
  MID
  EMID
}

S3F10 - Port Status Acknowledge

ACKC3
- ACKC3: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error

S3F11 - Matl ID Request

{
  PTN
}

S3F12 - Matl ID Request Ack

{L[3]
  PTN
  MIDRA
  MID
} 

S3F13 - Matl ID Send

{L[2]
  PTN
  MID
}

S3F14 - Matl ID Ack

{
  MIDAC
}

S3F15 - Matls Multi-block Inquire(SECS-I)

{L[2]
  DATAID
  DATALENGTH
}

S3F16 - Matls Multi-block Grant

{
  GRANT
}

S3F17 - Carrier Action Request (Extended)

{L[5]
  DATAID
  CARRIERACTION
  CARRIERID
  PTN
  {L[n]
    {L[2]
      CATTRID
      CATTRDATA
    }
  }
}
- DATAID: Data ID (U1, U2, U4, or A)
- CARRIERACTION: Carrier Action (U1)
- CARRIERID: Carrier ID (A)
- PTN: Port Number (U1)
- CATTRID: Carrier Attribute ID (U1, U2, U4, or A)
- CATTRDATA: Carrier Attribute Data (any format)

S3F18 - Carrier Action Response (Extended)

{L[2]
  DATAID
  CAACK
}
- DATAID: Data ID (matching request)
- CAACK: Carrier Action Acknowledge (U1)
  - 0: Acknowledged
  - 1: Denied, Invalid Command
  - 2: Denied, Cannot Perform Now

S3F19 - Port Action Request

{L[4]
  DATAID
  PORTACTION
  PTN
  {L[n]
    {L[2]
      PATTRID
      PATTRDATA
    }
  }
}
- DATAID: Data ID (U1, U2, U4, or A)
- PORTACTION: Port Action (U1)
  - 1: Open
  - 2: Close
  - 3: Lock
  - 4: Unlock
- PTN: Port Number (U1)
- PATTRID: Port Attribute ID (U1, U2, U4, or A)
- PATTRDATA: Port Attribute Data (any format)

S3F20 - Cancel All Carrier Out Ack

{L[2]
  CAACK
  {L[n]
    {L[2]
      ERRCODE
      ERRTEXT
    }
  }
}

S3F21 - Port Group Defn

{L[3]
  PORTGRPNAME
  ACCESSMODE
  {L[n]
    PTN
  }
}

S3F22 - Port Group Defn Ack

{L[2]
  CAACK
  {L[n]
    {L[2]
    ERRCODE
    ERRTEXT
    }
  }
}

S3F23 - Port Group Action Req

{L[3]
  PGRPACTION
  PORTGRPNAME
  {L[m]
    {L[2]
      PARAMNAME
      PARAMVAL
    }
  }
}

S3F24 - Port Group Action Ack

{L[2]
  CAACK
  {L[n]
    {L[2]
      ERRCODE
      ERRTEXT
    }
  }
}

S3F25 - Port Action Req

{L[3]
  PORTACTION
  PTN
  {L[m]
    {L[2]
      PARAMNAME
      PARAMVAL
    }
  }
}

S3F26 - Port Action Ack

{L[2]
  CAACK
  {L[n]
    {L[2]
    ERRCODE
    ERRTEXT
    }
  }
}

S3F27 - Change Access

{L[2]
  ACCESSMODE
  {L[n]
  PTN
  }
} 

S3F28 - Change Access Ack

{L[2]
  CAACK
  {L[n]
    {L[3]
      PTN
      ERRCODE
      ERRTEXT
    }
  }
}

S3F29 - Carrier Tag Read Req

{L[4]
  LOCID
  CARRIERSPEC
  DATASEG
  DATALENGTH
}

S3F30 - Carrier Tag Read Data

{L[2]
  DATA
  {L[2]
    CAACK
    {L[n]
      {L[2]
      ERRCODE
      ERRTEXT
      }
    }
  }
}

S3F31 - Carrier Tag Write Data

{L[5]
  LOCID
  CARRIERSPEC
  DATASEG
  DATALENGTH
  DATA
}

S3F32 - Carrier Tag Write Ack

{L[2]
  CAACK
  {L[n]
    {L[2]
      ERRCODE
      ERRTEXT
    }
  }
} 

S3F33 - Cancel All Pod Out Req

{}

S3F34 - Cancel All Pod Out Ack

{L[2]
  CAACK
  {L[n]
    {L[2]
      ERRCODE
      ERRTEXT
    }
  }
}

Reticle Transfer Job Req

{L[7]
  JOBACTION
  PODID
  INPTN
  OUTPTN
  {L[n]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
  {L[m]
    {L[3]
      RETICLEID
      RETREMOVEINSTR
      {L[i]
        {L[2]
          ATTRID
          ATTRDATA
        }
      }
    }
  }
  {L[k]
    {L[2]
      RETICLEID2
      RETPLACEINSTR
    }
  }
}

S3F36 - Reticle Transfer Job Ack

{L[2]
  RPMACK
  {L[n]
    {L[2]
      ERRCODE
      ERRTEXT
    }
  }
} 

Stream 4: Material Control

Purpose: Material transfer and handling

Message Direction Description
S4F1 → Equipment Transfer Job Create
S4F2 ← Equipment Transfer Job Create Acknowledge
S4F3 → Equipment Transfer Job Cancel
S4F4 ← Equipment Transfer Job Cancel Acknowledge
S4F5 → Equipment Transfer Job Start
S4F6 ← Equipment Transfer Job Start Acknowledge
S4F7 → Equipment Transfer Job Pause
S4F8 ← Equipment Transfer Job Pause Acknowledge
S4F9 → Equipment Transfer Job Stop
S4F10 ← Equipment Transfer Job Stop Acknowledge
S4F11 → Equipment Transfer Job Abort
S4F12 ← Equipment Transfer Job Abort Acknowledge
S4F13 → Equipment Transfer Job Resume
S4F14 ← Equipment Transfer Job Resume Acknowledge
S4F15 → Equipment Transfer Job Status Request
S4F16 ← Equipment Transfer Job Status Response
S4F17 → Equipment Transfer Job Priority Update
S4F18 ← Equipment Transfer Job Priority Acknowledge
S4F19 → Equipment Transfer Command
S4F20 ← Equipment Transfer Command Acknowledge
S4F21 → Equipment Enhanced Transfer Command
S4F22 ← Equipment Enhanced Transfer Acknowledge
S4F23 ← Equipment Transfer Status Send
S4F24 → Equipment Transfer Status Acknowledge
S4F25 → Equipment Material Status Request
S4F26 ← Equipment Material Status Response
#### S4F1 - Ready to Send Materials
{L[2]
  PTN
  MID
}

Parameters: - PTN: Port Number (U1) - MID: Material ID (A)

S4F2 - Ready to Send Acknowledge

RSACK

Parameters: - RSACK: Ready to Send Acknowledge (B[1]) - 0: Acknowledged - 1: Not ready

S4F3 - Send Material

{L[2]
  PTN
  MID
}

Parameters: - PTN: Port Number (U1) - MID: Material ID (A)

S4F5 - Handshake Complete

{L[2]
  PTN
  MID
}

Parameters: - PTN: Port Number (U1) - MID: Material ID (A)

S4F7 - Not Ready to Send

{L[2]
  PTN
  MID
}

Parameters: - PTN: Port Number (U1) - MID: Material ID (A)

S4F9 - Stuck in Sender

{L[2]
  PTN
  MID
}

Parameters: - PTN: Port Number (U1) - MID: Material ID (A)

S4F11 - Stuck in Receiver

{L[2]
  PTN
  MID
}

Parameters: - PTN: Port Number (U1) - MID: Material ID (A)

S4F13 - Send Incomplete Timeout

{L[2]
  PTN
  MID
}

Parameters: - PTN: Port Number (U1) - MID: Material ID (A)

S4F15 - Material Received

{L[2]
  PTN
  MID
}

Parameters: - PTN: Port Number (U1) - MID: Material ID (A)

S4F17 - Request to Receive

{L[2]
  PTN
  MID
}

Parameters: - PTN: Port Number (U1) - MID: Material ID (A)

S4F18 - Request to Receive Acknowledge

RRACK

Parameters: - RRACK: Request to Receive Acknowledge (B[1]) - 0: Acknowledged - 1: Not ready

S4F19 - Transfer Job Create

{L[3]
  DATAID
  TRJOBNAME
  {L[n]
    {L[12]
      TRLINK
      TRPORT
      TROBJNAME
      TROBJTYPE
      TRROLE
      TRRCP
      TRPTNR
      TRPTPORT
      TRDIR
      TRTYPE
      TRLOCATION
      TRAUTOSTART
    }
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - TRJOBNAME: Transfer Job Name (A) - TRLINK: Transfer Link (U1) - TRPORT: Transfer Port (U1) - TROBJNAME: Transfer Object Name (A) - TROBJTYPE: Transfer Object Type (A) - TRROLE: Transfer Role (A) - TRRCP: Transfer RCP (A) - TRPTNR: Transfer Partner (A) - TRPTPORT: Transfer Partner Port (U1) - TRDIR: Transfer Direction (A) - TRTYPE: Transfer Type (A) - TRLOCATION: Transfer Location (A) - TRAUTOSTART: Transfer Auto Start (B[1])

S4F20 - Transfer Job Acknowledge

{L[3]
  TRJOBID
  {L[m]
    TRATOMCID
  }
{L[2]
    TRACK
    {L[n]
{L[2]
        ERRCODE
        ERRTEXT
      }
}
  }
}

Parameters: - TRJOBID: Transfer Job ID (A) - TRATOMCID: Transfer Atomic ID (A) - TRACK: Transfer Acknowledge (B[1]) - ERRCODE: Error Code (U1) - ERRTEXT: Error Text (A)

S4F21 - Transfer Job Command

{L[3]
  TRJOBID
  TRCMDNAME
  {L[n]
{L[2]
      CPNAME
      CPVAL
    }
}
}

Parameters: - TRJOBID: Transfer Job ID (A) - TRCMDNAME: Transfer Command Name (A) - CPNAME: Command Parameter Name (A) - CPVAL: Command Parameter Value (any format)

S4F22 - Transfer Job Command Acknowledge

{L[2]
  TRACK
{L[n]
    {L[2]
      ERRCODE
      ERRTEXT
    }
  }
}

Parameters: - TRACK: Transfer Acknowledge (B[1]) - ERRCODE: Error Code (U1) - ERRTEXT: Error Text (A)

S4F23 - Transfer Command Alert

{L[4]
  TRJOBID
  TRJOBNAME
  TRJOBMS
  {L[2]
    TRACK
{L[n]
      {L[2]
        ERRCODE
        ERRTEXT
      }
  }
}
}

Parameters: - TRJOBID: Transfer Job ID (A) - TRJOBNAME: Transfer Job Name (A) - TRJOBMS: Transfer Job Message (A) - TRACK: Transfer Acknowledge (B[1]) - ERRCODE: Error Code (U1) - ERRTEXT: Error Text (A)

S4F24 - Transfer Alert Acknowledge

header only

Parameters: - Header only message

S4F25 - Multi-block Inquire

{L[2]
  DATAID
  DATALENGTH
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - DATALENGTH: Data Length (U4)

S4F26 - Multi-block Grant

GRANT

Parameters: - GRANT: Grant signal (B[1]) - 0: Not granted - 1: Granted

S4F27 - Handoff Ready

{L[2]
  EQNAME
  {L[11]
    TRLINK
    TRPORT
    TROBJNAME
    TROBJTYPE
    TRROLE
    TRPTNR
    TRPTPORT
    TRDIR
    TRTYPE
    TRLOCATION
  }
}

Parameters: - EQNAME: Equipment Name (A) - TRLINK: Transfer Link (U1) - TRPORT: Transfer Port (U1) - TROBJNAME: Transfer Object Name (A) - TROBJTYPE: Transfer Object Type (A) - TRROLE: Transfer Role (A) - TRPTNR: Transfer Partner (A) - TRPTPORT: Transfer Partner Port (U1) - TRDIR: Transfer Direction (A) - TRTYPE: Transfer Type (A) - TRLOCATION: Transfer Location (A)

S4F29 - Handoff Command

{L[4]
  TRLINK
  MCINDEX
  HOCMDNAME
  {L[n]
    {L[2]
      CPNAME
      CPVAL
    }
  }
}

Parameters: - TRLINK: Transfer Link (U1) - MCINDEX: Machine Control Index (U1) - HOCMDNAME: Handoff Command Name (A) - CPNAME: Command Parameter Name (A) - CPVAL: Command Parameter Value (any format)

S4F31 - Handoff Command Complete

{L[3]
  TRLINK
  MCINDEX
{L[2]
    HOACK
    {L[n]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - TRLINK: Transfer Link (U1) - MCINDEX: Machine Control Index (U1) - HOACK: Handoff Acknowledge (B[1]) - ERRCODE: Error Code (U1) - ERRTEXT: Error Text (A)

S4F33 - Handoff Verified

    {L[2]
  TRLINK
  {L[2]
    HOACK
    {L[n]
      ERRCODE
      ERRTEXT
    }
  }
}

Parameters: - TRLINK: Transfer Link (U1) - HOACK: Handoff Acknowledge (B[1]) - ERRCODE: Error Code (U1) - ERRTEXT: Error Text (A)

S4F35 - Handoff Cancel Ready

TRLINK

Parameters: - TRLINK: Transfer Link (U1)

S4F37 - Handoff Cancel Ready Acknowledge

{L[2]
  TRLINK
  HOCANCELACK
}

Parameters: - TRLINK: Transfer Link (U1) - HOCANCELACK: Handoff Cancel Acknowledge (B[1])

S4F39 - Handoff Halt

TRLINK

Parameters: - TRLINK: Transfer Link (U1)

S4F41 - Handoff Halt Acknowledge

      {L[2]
  TRLINK
  HOHALTACK
}

Parameters: - TRLINK: Transfer Link (U1) - HOHALTACK: Handoff Halt Acknowledge (B[1])

Stream 5: Exception Reporting

Purpose: Alarm and exception handling

Message Direction Description
S5F1 ← Equipment Alarm Report Send
S5F2 → Equipment Alarm Report Acknowledge
S5F3 → Equipment En/Disable Alarm Send
S5F4 ← Equipment En/Disable Alarm Acknowledge
S5F5 → Equipment List Alarms Request
S5F6 ← Equipment List Alarms Response
S5F7 → Equipment List Enabled Alarm Request
S5F8 ← Equipment List Enabled Alarm Response

S5F1 - Alarm Report Send

{L[3]
  ALCD
  ALID
  ALTX
}
- ALCD: Alarm Code (B[1])
  - Bit 0: Alarm Set (1) or Clear (0)
  - Bit 7: Alarm (1) or Warning (0)
- ALID: Alarm ID (U1, U2, U4, or A)
- ALTX: Alarm Text (A[120])

S5F2 - Alarm Report Acknowledge

ACKC5
- ACKC5: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error

S5F3 - Enable/Disable Alarm Send

{L[2]
  ALED
  {L[n]
    ALID_1
    ALID_2
    ...
    ALID_n
  }
}
- ALED: Alarm Enable/Disable (B[1])
  - 128 (0x80): Enable
  - 0: Disable
- ALID: Alarm ID (U1, U2, U4, or A)

S5F4 - Enable/Disable Alarm Acknowledge

ACKC5
- ACKC5: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error

S5F5 - List Alarms Request

{}

S5F6 - List Alarms Response

{L[n]
  ALID_1
  ALID_2
  ...
  ALID_n
}
- ALID: Alarm ID (U1, U2, U4, or A)

S5F7 - List Enabled Alarm Request

{}

S5F8 - List Enabled Alarm Response

{L[n]
  ALID_1
  ALID_2
  ...
  ALID_n
}
- ALID: Alarm ID (U1, U2, U4, or A) - Only enabled alarms

Stream 6: Data Collection

Purpose: Process data collection and event reporting

Message Direction Description
S6F1 ← Equipment Trace Data Send
S6F2 → Equipment Trace Data Acknowledge
S6F3 ← Equipment Discrete Variable Data Send
S6F4 → Equipment Discrete Variable Data Acknowledge
S6F5 ← Equipment Multi-block Data Send Inquire
S6F6 → Equipment Multi-block Grant
S6F7 → Equipment Data Transfer Request
S6F8 ← Equipment Data Transfer Data
S6F9 ← Equipment Formatted Variable Send
S6F10 → Equipment Formatted Variable Acknowledge
S6F11 ← Equipment Event Report Send
S6F12 → Equipment Event Report Acknowledge
S6F13 ← Equipment Annotated Event Report Send
S6F14 → Equipment Annotated Event Report Acknowledge
S6F15 → Equipment Event Report Request
S6F16 ← Equipment Event Report Data
S6F17 → Equipment Annotated Event Report Request
S6F18 ← Equipment Annotated Event Report Data
S6F19 → Equipment Individual Report Request
S6F20 ← Equipment Individual Report Data
S6F21 → Equipment Annotated Individual Report Request
S6F22 ← Equipment Annotated Individual Report Data
S6F23 → Equipment Request or Purge Spooled Data
S6F24 ← Equipment Request or Purge Spooled Data Acknowledge
S6F25 ↔ Host/Equipment Notification Report Send
S6F26 ↔ Host/Equipment Notification Report Acknowledge
S6F27 ← Equipment Trace Report Send
S6F28 → Equipment Trace Report Acknowledge
S6F29 → Equipment Trace Report Request
S6F30 ← Equipment Trace Report Data

S6F1 - Trace Data Send

{L[4]
  TRID
  SMPLN
  STIME
  {L[n]
    SV
  }
}

Parameters: - TRID: Trace Request ID (U1, U2, U4, or A) - SMPLN: Sample Number (U1, U2, U4) - STIME: Sample Time (A) - SV: Sample Value (any format)

S6F2 - Trace Data Acknowledge

ACKC6

Parameters: - ACKC6: Acknowledge Code (B[1]) - 0: Acknowledged - 1: Error

S6F3 - Discrete Variable Data Send

{L[3]
  DATAID
  CEID
  {L[n]
    {L[2]
      DSID
      {L[m]
        {L[2]
          DVNAME
          DVVAL
      }
    }
  }
}
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - CEID: Collection Event ID (U1, U2, U4, or A) - DSID: Data Set ID (U1, U2, U4, or A) - DVNAME: Discrete Variable Name (A) - DVVAL: Discrete Variable Value (any format)

S6F4 - Discrete Variable Data Acknowledge

ACKC6

Parameters: - ACKC6: Acknowledge Code (B[1]) - 0: Acknowledged - 1: Error

S6F5 - Multi-block Data Send Inquire

{L[2]
  DATAID
  DATALENGTH
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - DATALENGTH: Data Length (U4)

S6F6 - Multi-block Grant

GRANT6

Parameters: - GRANT6: Grant Code (B[1]) - 0: Granted - 1: Busy, try again - 2: No space

S6F7 - Data Transfer Request

DATAID

Parameters: - DATAID: Data ID (U1, U2, U4, or A)

S6F8 - Data Transfer Data

{L[3]
  DATAID
  CEID
  {L[n]
    DSID
      {L[m]
      {L[2]
        DVNAME
        DVVAL
      }
    }
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - CEID: Collection Event ID (U1, U2, U4, or A) - DSID: Data Set ID (U1, U2, U4, or A) - DVNAME: Discrete Variable Name (A) - DVVAL: Discrete Variable Value (any format)

S6F9 - Formatted Variable Send

{L[4]
  PFCD
  DATAID
  CEID
  {L[n]
    {L[2]
      DSID
      {L[m]
        DVVAL
  }
}
  }
}

Parameters: - PFCD: Process Function Code (A) - DATAID: Data ID (U1, U2, U4, or A) - CEID: Collection Event ID (U1, U2, U4, or A) - DSID: Data Set ID (U1, U2, U4, or A) - DVVAL: Discrete Variable Value (any format)

S6F10 - Formatted Variable Acknowledge

ACKC6

Parameters: - ACKC6: Acknowledge Code (B[1]) - 0: Acknowledged - 1: Error

S6F11 - Event Report Send

{L[3]
  DATAID
  CEID
  {L[a]
{L[2]
      RPTID
      {L[b]
        V
      }
    }
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - CEID: Collection Event ID (U1, U2, U4, or A) - RPTID: Report ID (U1, U2, U4, or A) - V: Variable Value (any format)

S6F12 - Event Report Acknowledge

ACKC6

Parameters: - ACKC6: Acknowledge Code (B[1]) - 0: Acknowledged - 1: Error

S6F13 - Annotated Event Report Send

{L[3]
  DATAID
  CEID
  {L[a]
    {L[2]
      RPTID
      {L[b]
        {L[2]
          VID
          V
  }
}
    }
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - CEID: Collection Event ID (U1, U2, U4, or A) - RPTID: Report ID (U1, U2, U4, or A) - VID: Variable ID (U1, U2, U4, or A) - V: Variable Value (any format)

S6F14 - Annotated Event Report Acknowledge

ACKC6

Parameters: - ACKC6: Acknowledge Code (B[1]) - 0: Acknowledged - 1: Error

S6F15 - Event Report Request

CEID

Parameters: - CEID: Collection Event ID (U1, U2, U4, or A)

S6F16 - Event Report Data

{L[3]
  DATAID
  CEID
  {L[a]
{L[2]
      RPTID
      {L[b]
        V
      }
    }
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - CEID: Collection Event ID (U1, U2, U4, or A) - RPTID: Report ID (U1, U2, U4, or A) - V: Variable Value (any format)

S6F17 - Annotated Event Report Request

CEID

Parameters: - CEID: Collection Event ID (U1, U2, U4, or A)

S6F18 - Annotated Event Report Data

{L[3]
  DATAID
  CEID
  {L[a]
    {L[2]
      RPTID
      {L[b]
        {L[2]
          VID
          V
        }
      }
    }
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - CEID: Collection Event ID (U1, U2, U4, or A) - RPTID: Report ID (U1, U2, U4, or A) - VID: Variable ID (U1, U2, U4, or A) - V: Variable Value (any format)

S6F19 - Individual Report Request

RPTID

Parameters: - RPTID: Report ID (U1, U2, U4, or A)

S6F20 - Individual Report Data

{L[n]
  V
}

Parameters: - V: Variable Value (any format)

S6F21 - Annotated Individual Report Request

RPTID

Parameters: - RPTID: Report ID (U1, U2, U4, or A)

S6F22 - Annotated Individual Report Data

{L[n]
  {L[2]
    VID
    V
  }
}

Parameters: - VID: Variable ID (U1, U2, U4, or A) - V: Variable Value (any format)

S6F23 - Request or Purge Spooled Data

RSDC

Parameters: - RSDC: Request or Purge Spooled Data Command (A)

S6F24 - Request or Purge Spooled Data Acknowledge

RSDA

Parameters: - RSDA: Request or Purge Spooled Data Acknowledge (A)

S6F25 - Notification Report Send

{L[7]
  DATAID
  OPID
  LINKID
  RCPSPEC
  RMCHGSTAT
  {L[m]
    {L[2]
      RCPATTRID
      RCPATTRDATA
    }
  }
  {L[2]
    RMACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
  }
}
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - OPID: Operator ID (A) - LINKID: Link ID (A) - RCPSPEC: Recipe Specification (A) - RMCHGSTAT: Recipe Change Status (A) - RCPATTRID: Recipe Attribute ID (A) - RCPATTRDATA: Recipe Attribute Data (any format) - RMACK: Recipe Acknowledge (B[1]) - ERRCODE: Error Code (U1) - ERRTEXT: Error Text (A)

S6F26 - Notification Report Acknowledge

ACKC6

Parameters: - ACKC6: Acknowledge Code (B[1]) - 0: Acknowledged - 1: Error

S6F27 - Trace Report Send

{L[3]
  DATAID
  TRID
  {L[n]
    {L[p]
{L[2]
        RPTID
        {L[m]
          V
        }
      }
    }
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - TRID: Trace Request ID (U1, U2, U4, or A) - RPTID: Report ID (U1, U2, U4, or A) - V: Variable Value (any format)

S6F28 - Trace Report Acknowledge

TRID

Parameters: - TRID: Trace Request ID (U1, U2, U4, or A)

S6F29 - Trace Report Request

TRID

Parameters: - TRID: Trace Request ID (U1, U2, U4, or A)

S6F30 - Trace Report Data

  {L[3]
  TRID
  {L[n]
    {L[2]
      RPTID
      {L[m]
        V
      }
  }
}
  ERRCODE
}

Parameters: - TRID: Trace Request ID (U1, U2, U4, or A) - RPTID: Report ID (U1, U2, U4, or A) - V: Variable Value (any format) - ERRCODE: Error Code (A)

Stream 7: Process Program Management

Purpose: Recipe and process program handling

Message Direction Description
S7F1 ↔ Host/Equipment Process Program Load Inquire
S7F2 ↔ Host/Equipment Process Program Load Grant
S7F3 ↔ Host/Equipment Process Program Send
S7F4 ↔ Host/Equipment Process Program Send Acknowledge
S7F5 ↔ Host/Equipment Process Program Request
S7F6 ↔ Host/Equipment Process Program Data
S7F7 ← Equipment Process Program ID Request
S7F8 → Host Process Program ID Data
S7F9 ↔ Host/Equipment Material/Process Matrix Request
S7F10 ↔ Host/Equipment Material/Process Matrix Data
S7F11 → Host Material/Process Matrix Update Send
S7F12 ← Equipment Material/Process Matrix Update Acknowledge
S7F13 → Host Material/Process Matrix Delete Entry Send
S7F14 ← Equipment Delete Material/Process Matrix Entry Acknowledge
S7F15 → Host Matrix Mode Select Send
S7F16 ← Equipment Matrix Mode Select Acknowledge
S7F17 → Host Delete Process Program Send
S7F18 ← Equipment Delete Process Program Acknowledge
S7F19 → Host Current Process Program Directory Request
S7F20 ← Equipment Current Process Program Data
S7F21 → Host Process Capabilities Request
S7F22 ← Equipment Process Capabilities Data
S7F23 ↔ Host/Equipment Formatted Process Program Send
S7F24 ↔ Host/Equipment Formatted Process Program Acknowledge
S7F25 ↔ Host/Equipment Formatted Process Program Request
S7F26 ↔ Host/Equipment Formatted Process Program Data
S7F27 ← Equipment Process Program Verification Send
S7F28 → Host Process Program Verification Acknowledge
S7F29 ← Equipment Process Program Verification Inquire
S7F30 → Host Process Program Verification Grant
S7F31 → Host Verification Request Send
S7F32 ← Equipment Verification Request Acknowledge
S7F33 ↔ Host/Equipment Process Program Available Request
S7F34 ↔ Host/Equipment Process Program Availability Data
S7F35 ↔ Host/Equipment Process Program for MID Request
S7F36 ↔ Host/Equipment Process Program for MID Data
S7F37 ↔ Host/Equipment Large Process Program Send
S7F38 ↔ Host/Equipment Large Process Program Send Acknowledge
S7F39 ↔ Host/Equipment Large Formatted Process Program Send
S7F40 ↔ Host/Equipment Large Formatted Process Program Acknowledge
S7F41 ↔ Host/Equipment Large Process Program Request
S7F42 ↔ Host/Equipment Large Process Program Request Acknowledge
S7F43 ↔ Host/Equipment Large Formatted Process Program Request
S7F44 ↔ Host/Equipment Large Formatted Process Program Request Acknowledge
#### S7F1 - Process Program Load Inquire
{L[2]
  PPID
  LENGTH
}

Parameters: - PPID: Process Program ID (A) - LENGTH: Length of Process Program (U1, U2, U4)

S7F2 - Process Program Load Grant

PPGNT

Parameters: - PPGNT: Process Program Grant (B[1]) - 0: Granted - 1: Busy, try again - 2: No space - 3: Invalid PPID

S7F3 - Process Program Send

{L[2]
  PPID
  PPBODY
}

Parameters: - PPID: Process Program ID (A) - PPBODY: Process Program Body (A or B)

S7F4 - Process Program Send Acknowledge

ACKC7

Parameters: - ACKC7: Acknowledge Code (B[1]) - 0: Accepted - 1: Permission not granted - 2: Length error - 3: Matrix overflow - 4: PPID not found - 5: Mode unsupported - 6: Communication not available - 7: Busy

S7F5 - Process Program Request

PPID

Parameters: - PPID: Process Program ID (A)

S7F6 - Process Program Data

{L[2]
  PPID
  PPBODY
}

Parameters: - PPID: Process Program ID (A) - PPBODY: Process Program Body (A or B)

S7F7 - Process Program ID Request

MID

Parameters: - MID: Material ID (A)

S7F8 - Process Program ID Data

{L[2]
  PPID
  MID
}

Parameters: - PPID: Process Program ID (A) - MID: Material ID (A)

S7F9 - Material/Process Matrix Request

header only

Parameters: - Header only message

S7F10 - Material/Process Matrix Data

{L[n]
  {L[2]
    PPID
    {L[a]
      MID
  }
}
}

Parameters: - PPID: Process Program ID (A) - MID: Material ID (A)

S7F11 - Material/Process Matrix Update Send

{L[n]
  {L[2]
    PPID
    {L[a]
      MID
    }
  }
}

Parameters: - PPID: Process Program ID (A) - MID: Material ID (A)

S7F12 - Material/Process Matrix Update Acknowledge

ACKC7

Parameters: - ACKC7: Acknowledge Code (B[1]) - 0: Accepted - 1: Permission not granted - 2: Length error - 3: Matrix overflow - 4: PPID not found - 5: Mode unsupported - 6: Communication not available - 7: Busy

S7F13 - Material/Process Matrix Delete Entry Send

{L[n]
{L[2]
  PPID
    {L[a]
      MID
}
  }
}

Parameters: - PPID: Process Program ID (A) - MID: Material ID (A)

S7F14 - Delete Material/Process Matrix Entry Acknowledge

ACKC7

Parameters: - ACKC7: Acknowledge Code (B[1]) - 0: Accepted - 1: Permission not granted - 2: Length error - 3: Matrix overflow - 4: PPID not found - 5: Mode unsupported - 6: Communication not available - 7: Busy

S7F15 - Matrix Mode Select Send

MMODE

Parameters: - MMODE: Matrix Mode (A)

S7F16 - Matrix Mode Select Acknowledge

ACKC7

Parameters: - ACKC7: Acknowledge Code (B[1]) - 0: Accepted - 1: Permission not granted - 2: Length error - 3: Matrix overflow - 4: PPID not found - 5: Mode unsupported - 6: Communication not available - 7: Busy

S7F17 - Delete Process Program Send

{L[n]
  PPID
}

Parameters: - PPID: Process Program ID (A)

S7F18 - Delete Process Program Acknowledge

ACKC7

Parameters: - ACKC7: Acknowledge Code (B[1]) - 0: Accepted - 1: Permission not granted - 2: Length error - 3: Matrix overflow - 4: PPID not found - 5: Mode unsupported - 6: Communication not available - 7: Busy

S7F19 - Current Process Program Directory Request

header only

Parameters: - Header only message

S7F20 - Current Process Program Data

{L[n]
    PPID
    }

Parameters: - PPID: Process Program ID (A)

S7F21 - Process Capabilities Request

header only

Parameters: - Header only message

S7F22 - Process Capabilities Data

{L[5]
  MDLN
  SOFTREV
  CMDMAX
  BYTMAX
  {L[c]
    {L[11]
      CCODE
      CNAME
      RQCMD
      BLKDEF
      BCDS
      IBCDS
      NBCDS
      ACDS
      IACDS
      NACDS
      {L[p]
        L[x]
      }
    }
  }
}

Parameters: - MDLN: Model Number (A) - SOFTREV: Software Revision (A) - CMDMAX: Command Maximum (U1, U2, U4) - BYTMAX: Byte Maximum (U1, U2, U4) - CCODE: Command Code (A) - CNAME: Command Name (A) - RQCMD: Required Command (A) - BLKDEF: Block Definition (A) - BCDS: Block Code Data Set (A) - IBCDS: Input Block Code Data Set (A) - NBCDS: Number Block Code Data Set (A) - ACDS: Alarm Code Data Set (A) - IACDS: Input Alarm Code Data Set (A) - NACDS: Number Alarm Code Data Set (A) - L[x]: Variable length data (any format)

S7F23 - Formatted Process Program Send

{L[4]
  PPID
  MDLN
  SOFTREV
  {L[c]
    {L[2]
      CCODE
      {L[p]
        PPARM
      }
    }
  }
}

Parameters: - PPID: Process Program ID (A) - MDLN: Model Number (A) - SOFTREV: Software Revision (A) - CCODE: Command Code (A) - PPARM: Process Program Parameter (any format)

S7F24 - Formatted Process Program Acknowledge

ACKC7

Parameters: - ACKC7: Acknowledge Code (B[1]) - 0: Accepted - 1: Permission not granted - 2: Length error - 3: Matrix overflow - 4: PPID not found - 5: Mode unsupported - 6: Communication not available - 7: Busy

S7F25 - Formatted Process Program Request

PPID

Parameters: - PPID: Process Program ID (A)

S7F26 - Formatted Process Program Data

{L[4]
  PPID
  MDLN
  SOFTREV
  {L[c]
    {L[2]
      CCODE
      {L[p]
        PPARM
      }
    }
  }
}

Parameters: - PPID: Process Program ID (A) - MDLN: Model Number (A) - SOFTREV: Software Revision (A) - CCODE: Command Code (A) - PPARM: Process Program Parameter (any format)

S7F27 - Process Program Verification Send

{L[2]
  PPID
  {L[n]
    {L[3]
      ACKC7A
      SEQNUM
      ERRW7
  }
}
}

Parameters: - PPID: Process Program ID (A) - ACKC7A: Acknowledge Code 7A (B[1]) - SEQNUM: Sequence Number (U1, U2, U4) - ERRW7: Error Word 7 (A)

S7F28 - Process Program Verification Acknowledge

header only

Parameters: - Header only message

S7F29 - Process Program Verification Inquire

LENGTH

Parameters: - LENGTH: Length of S7F27 message (U4)

S7F30 - Process Program Verification Grant

PPGNT

Parameters: - PPGNT: Process Program Grant (B[1]) - 0: Granted - 1: Busy, try again - 2: No space - 3: Invalid PPID

S7F31 - Verification Request Send

{L[4]
  PPID
  MDLN
  SOFTREV
  {L[c]
    {L[2]
      CCODE
      {L[p]
        PPARM
      }
    }
  }
}

Parameters: - PPID: Process Program ID (A) - MDLN: Model Number (A) - SOFTREV: Software Revision (A) - CCODE: Command Code (A) - PPARM: Process Program Parameter (any format)

S7F32 - Verification Request Acknowledge

ACKC7

Parameters: - ACKC7: Acknowledge Code (B[1]) - 0: Accepted - 1: Permission not granted - 2: Length error - 3: Matrix overflow - 4: PPID not found - 5: Mode unsupported - 6: Communication not available - 7: Busy

S7F33 - Process Program Available Request

PPID

Parameters: - PPID: Process Program ID (A)

S7F34 - Process Program Availability Data

{L[3]
  PPID
  UNFLEN
  FRMLEN
}

Parameters: - PPID: Process Program ID (A) - UNFLEN: Unformatted Length (U1, U2, U4) - FRMLEN: Formatted Length (U1, U2, U4)

S7F35 - Process Program for MID Request

MID

Parameters: - MID: Material ID (A)

S7F36 - Process Program for MID Data

{L[3]
  MID
  PPID
  PPBODY
}

Parameters: - MID: Material ID (A) - PPID: Process Program ID (A) - PPBODY: Process Program Body (A or B)

S7F37 - Large Process Program Send

DSNAME

Parameters: - DSNAME: Data Set Name (A)

S7F38 - Large Process Program Send Acknowledge

ACKC7

Parameters: - ACKC7: Acknowledge Code (B[1]) - 0: Accepted - 1: Permission not granted - 2: Length error - 3: Matrix overflow - 4: PPID not found - 5: Mode unsupported - 6: Communication not available - 7: Busy

S7F39 - Large Formatted Process Program Send

DSNAME

Parameters: - DSNAME: Data Set Name (A)

S7F40 - Large Formatted Process Program Acknowledge

ACKC7

Parameters: - ACKC7: Acknowledge Code (B[1]) - 0: Accepted - 1: Permission not granted - 2: Length error - 3: Matrix overflow - 4: PPID not found - 5: Mode unsupported - 6: Communication not available - 7: Busy

S7F41 - Large Process Program Request

DSNAME

Parameters: - DSNAME: Data Set Name (A)

S7F42 - Large Process Program Request Acknowledge

ACKC7

Parameters: - ACKC7: Acknowledge Code (B[1]) - 0: Accepted - 1: Permission not granted - 2: Length error - 3: Matrix overflow - 4: PPID not found - 5: Mode unsupported - 6: Communication not available - 7: Busy

S7F43 - Large Formatted Process Program Request

DSNAME

Parameters: - DSNAME: Data Set Name (A)

S7F44 - Large Formatted Process Program Request Acknowledge

ACKC7

Parameters: - ACKC7: Acknowledge Code (B[1]) - 0: Accepted - 1: Permission not granted - 2: Length error - 3: Matrix overflow - 4: PPID not found - 5: Mode unsupported - 6: Communication not available - 7: Busy

Stream 8: Control Program Management

Purpose: Control program and recipe management

Message Direction Description
S8F1 → Equipment Boot Program Request
S8F2 ← Equipment Boot Program Data
S8F3 → Equipment Executive Program Request
S8F4 ← Equipment Executive Program Data

S8F1 - Boot Program Request

{}

Parameters: - Empty list (header only message)

S8F2 - Boot Program Data

BPD

Parameters: - BPD: Boot Program Data (B)

S8F3 - Executive Program Request

{}

Parameters: - Empty list (header only message)

S8F4 - Executive Program Data

EPD

Parameters: - EPD: Executive Program Data (B)

Stream 9: System Errors

Purpose: Communication error reporting

Message Direction Description
S9F1 ← Equipment Unrecognized Device ID
S9F3 ← Equipment Unrecognized Stream Type
S9F5 ← Equipment Unrecognized Function Type
S9F7 ← Equipment Illegal Data
S9F9 ← Equipment Transaction Timer Timeout
S9F11 ← Equipment Data Too Long
S9F13 ← Equipment Conversation Timeout

S9F1 - Unrecognized Device ID

MHEAD
- MHEAD: Message Header (B[10])
  The complete 10-byte header of the unrecognized message

S9F3 - Unrecognized Stream Type

MHEAD
- MHEAD: Message Header (B[10])
  The complete 10-byte header of the message with unrecognized stream type

S9F5 - Unrecognized Function Type

MHEAD
- MHEAD: Message Header (B[10])
  The complete 10-byte header of the message with unrecognized function type

S9F7 - Illegal Data

MHEAD
- MHEAD: Message Header (B[10])
  The complete 10-byte header of the message with illegal data

S9F9 - Transaction Timer Timeout

MHEAD
- MHEAD: Message Header (B[10])
  The complete 10-byte header of the message that timed out

S9F11 - Data Too Long

MHEAD
- MHEAD: Message Header (B[10])
  The complete 10-byte header of the message that was too long

S9F13 - Conversation Timeout

{L[2]
  MEXP
  EDID
}
- MEXP: Message Expected (B[1])
  - Stream and Function of the expected message
- EDID: Equipment ID (U1, U2, U4, or A)
  - ID of the equipment that timed out

Stream 10: Terminal Services

Purpose: Operator interface communication

Message Direction Description
S10F1 → Equipment Terminal Request
S10F2 ← Equipment Terminal Response
S10F3 → Equipment Terminal Display, Single
S10F5 → Equipment Terminal Display, Multi-Block
S10F7 ← Equipment Multi-block Not Allowed
S10F9 → Equipment Broadcast Display Request
S10F10 ← Equipment Broadcast Display Acknowledge

S10F1 - Terminal Request

{L[2]
  TID
  TEXT
}
- TID: Terminal ID (U1)
- TEXT: Text Message (A)

S10F2 - Terminal Response

{L[2]
  TID
  ACKC10
}
- TID: Terminal ID (U1)
- ACKC10: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Terminal not available

S10F3 - Terminal Display, Single

{L[2]
  TID
  TEXT
}
- TID: Terminal ID (U1)
- TEXT: Text Message (A)

S10F5 - Terminal Display, Multi-Block

{L[3]
  TID
  {L[n]
    TEXT_1
    TEXT_2
    ...
    TEXT_n
  }
  MHEAD
}
- TID: Terminal ID (U1)
- TEXT: Text Message (A)
- MHEAD: Message Header (B[10])

S10F7 - Multi-block Not Allowed

TID

Parameters: - TID: Transaction ID (U1, U2, U4, or A)

S10F9 - Broadcast Display Request

TEXT

Parameters: - TEXT: Text Message (A)

S10F10 - Broadcast Display Acknowledge

ACKC10
**Parameters:**
- ACKC10: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Broadcast not supported
  - 1: Error

Stream 12: Wafer Mapping

Purpose: Wafer map data handling

Message Direction Description
S12F1 → Equipment Map Setup Data Send
S12F2 ← Equipment Map Setup Data Acknowledge
S12F3 → Equipment Map Setup Data Request
S12F4 ← Equipment Map Setup Data Response
S12F5 → Equipment Map Transmit Inquire
S12F6 ← Equipment Map Transmit Grant
S12F7 → Equipment Map Data Send Type 1
S12F8 ← Equipment Map Data Ack Type 1
S12F9 → Equipment Map Data Send Type 2
S12F10 ← Equipment Map Data Ack Type 2
S12F11 → Equipment Map Data Send Type 3
S12F12 ← Equipment Map Data Ack Type 3
S12F13 → Equipment Map Data Request Type 1
S12F14 ← Equipment Map Data Type 1
S12F15 → Equipment Map Data Request Type 2
S12F16 ← Equipment Map Data Type 2
S12F17 → Equipment Map Data Request Type 3
S12F18 ← Equipment Map Data Type 3
S12F19 ↔ Host/Equipment Map Error Report Send

S12F1 - Map Setup Data Send

{L[15]
  MID
  IDTYP
  FNLOC
  FFROT
  ORLOC
  RPSEL
  {L[n]
    REFP
  }
  DUTMS
  XDIES
  YDIES
  ROWCT
  COLCT
  NULBC
  PRDCT
  PRAXI
}

Parameters: - MID: Map ID (A) - IDTYP: ID Type (B[1]) - FNLOC: Final Location (A) - FFROT: Final Format Rotation (A) - ORLOC: Origin Location (A) - RPSEL: Reference Point Select (A) - REFP: Reference Point (A) - DUTMS: Die Unit Time Stamp (A) - XDIES: X Dies (U1, U2, U4) - YDIES: Y Dies (U1, U2, U4) - ROWCT: Row Count (U1, U2, U4) - COLCT: Column Count (U1, U2, U4) - NULBC: Null Block Count (U1, U2, U4) - PRDCT: Production Count (U1, U2, U4) - PRAXI: Production Axis (A)

S12F2 - Map Setup Data Acknowledge

SDACK

Parameters: - SDACK: Setup Data Acknowledge (B[1]) - 0: Acknowledged - 1: Error

S12F3 - Map Setup Data Request

{L[9]
  MID
  IDTYP
  MAPFT
  FNLOC
  FFROT
  ORLOC
  PRAXI
  BCEQU
  NULBC
}

Parameters: - MID: Map ID (A) - IDTYP: ID Type (B[1]) - MAPFT: Map Format (A) - FNLOC: Final Location (A) - FFROT: Final Format Rotation (A) - ORLOC: Origin Location (A) - PRAXI: Production Axis (A) - BCEQU: Block Count Equal (U1, U2, U4) - NULBC: Null Block Count (U1, U2, U4)

S12F4 - Map Setup Data Response

{L[15]
  MID
  IDTYP
  FNLOC
  ORLOC
  RPSEL
  {L[n]
    REFP
  }
  DUTMS
  XDIES
  YDIES
  ROWCT
  COLCT
  PRDCT
  BCEQU
  NULBC
  MLCL
}

Parameters: - MID: Map ID (A) - IDTYP: ID Type (B[1]) - FNLOC: Final Location (A) - ORLOC: Origin Location (A) - RPSEL: Reference Point Select (A) - REFP: Reference Point (A) - DUTMS: Die Unit Time Stamp (A) - XDIES: X Dies (U1, U2, U4) - YDIES: Y Dies (U1, U2, U4) - ROWCT: Row Count (U1, U2, U4) - COLCT: Column Count (U1, U2, U4) - PRDCT: Production Count (U1, U2, U4) - BCEQU: Block Count Equal (U1, U2, U4) - NULBC: Null Block Count (U1, U2, U4) - MLCL: Map Location (A)

S12F5 - Map Transmit Inquire

{L[4]
  MID
  IDTYP
  MAPFT
  MLCL
}

Parameters: - MID: Map ID (A) - IDTYP: ID Type (B[1]) - MAPFT: Map Format (A) - MLCL: Map Location (A)

S12F6 - Map Transmit Grant

GRNT1

Parameters: - GRNT1: Grant Type 1 (B[1]) - 0: Granted - 1: Busy, try again - 2: No space

S12F7 - Map Data Send Type 1

{L[3]
  MID
  IDTYP
  {L[n]
    {L[2]
      RSINF
      BINLT
    }
  }
}

Parameters: - MID: Map ID (A) - IDTYP: ID Type (B[1]) - RSINF: Row Information (A) - BINLT: Binary Data (B)

S12F8 - Map Data Ack Type 1

MDACK

Parameters: - MDACK: Map Data Acknowledge (B[1]) - 0: Acknowledged - 1: Error

S12F9 - Map Data Send Type 2

{L[4]
  MID
  IDTYP
  STRP
  BINLT
}

Parameters: - MID: Map ID (A) - IDTYP: ID Type (B[1]) - STRP: Strip Data (A) - BINLT: Binary Data (B)

S12F10 - Map Data Ack Type 2

MDACK

Parameters: - MDACK: Map Data Acknowledge (B[1]) - 0: Acknowledged - 1: Error

S12F11 - Map Data Send Type 3

{L[3]
  MID
  IDTYP
  {L[n]
    {L[2]
      XYPOS
      BINLT
    }
  }
}

Parameters: - MID: Map ID (A) - IDTYP: ID Type (B[1]) - XYPOS: XY Position (A) - BINLT: Binary Data (B)

S12F12 - Map Data Ack Type 3

MDACK

Parameters: - MDACK: Map Data Acknowledge (B[1]) - 0: Acknowledged - 1: Error

S12F13 - Map Data Request Type 1

{L[2]
  MID
  IDTYP
}

Parameters: - MID: Map ID (A) - IDTYP: ID Type (B[1])

S12F14 - Map Data Type 1

{L[3]
  MID
  IDTYP
  {L[n]
    {L[2]
      RSINF
      BINLT
    }
  }
}

Parameters: - MID: Map ID (A) - IDTYP: ID Type (B[1]) - RSINF: Row Information (A) - BINLT: Binary Data (B)

S12F15 - Map Data Request Type 2

{L[2]
  MID
  IDTYP
}

Parameters: - MID: Map ID (A) - IDTYP: ID Type (B[1])

S12F16 - Map Data Type 2

{L[4]
  MID
  IDTYP
  STRP
  BINLT
}

Parameters: - MID: Map ID (A) - IDTYP: ID Type (B[1]) - STRP: Strip Data (A) - BINLT: Binary Data (B)

S12F17 - Map Data Request Type 3

{L[3]
  MID
  IDTYP
  SDBIN
}

Parameters: - MID: Map ID (A) - IDTYP: ID Type (B[1]) - SDBIN: Sub Data Binary (B)

S12F18 - Map Data Type 3

{L[3]
  MID
  IDTYP
  {L[n]
    {L[2]
      XYPOS
      BINLT
    }
  }
}

Parameters: - MID: Map ID (A) - IDTYP: ID Type (B[1]) - XYPOS: XY Position (A) - BINLT: Binary Data (B)

S12F19 - Map Error Report Send

{L[2]
  MAPER
  DATLC
}

Parameters: - MAPER: Map Error (A) - DATLC: Data Location (A)

Stream 13: Data Set Management

Purpose: Advanced data set handling and management

Message Direction Description
S13F1 ↔ Host/Equipment Send Data Set Send
S13F2 ↔ Host/Equipment Send Data Set Ack
S13F3 ↔ Host/Equipment Open Data Set Request
S13F4 ↔ Host/Equipment Open Data Set Data
S13F5 ↔ Host/Equipment Read Data Set Request
S13F6 ↔ Host/Equipment Read Data Set Data
S13F7 ↔ Host/Equipment Close Data Set Send
S13F8 ↔ Host/Equipment Close Data Set Ack
S13F9 ↔ Host/Equipment Reset Data Set Send
S13F10 ↔ Host/Equipment Reset Data Set Ack
S13F11 ↔ Host/Equipment Data Set Obj Multi-Block Inquire
S13F12 ↔ Host/Equipment Data Set Obj Multi-Block Grant
S13F13 ↔ Host/Equipment Table Data Send
S13F14 ↔ Host/Equipment Table Data Ack
S13F15 ↔ Host/Equipment Table Data Request
S13F16 ↔ Host/Equipment Table Data

S13F1 - Send Data Set Send

{L[1]
  DSNAME
}

Parameters: - DSNAME: Data Set Name (A) - Comment: S13F1 seems to have the L: wrapper that S13F2 is missing. Be prepared to receive DSNAME without the L:

S13F2 - Send Data Set Ack

{L[2]
  DSNAME
  ACKC13
}

Parameters: - DSNAME: Data Set Name (A) - ACKC13: Acknowledge Code (B[1]) - 0: Acknowledged - 1: Error - Comment: The standards have had an erroneous structure for years - the L:2 has been missing. Unfortunately some implementations have not realized it was an error. The latest Hume versions automagically create the L:2 wrapper when it is missing.

S13F3 - Open Data Set Request

{L[3]
  HANDLE
  DSNAME
  CKPNT
}

Parameters: - HANDLE: Handle (A) - DSNAME: Data Set Name (A) - CKPNT: Checkpoint (A) - Comment: Sent by the receiver to open a data set for reading

S13F4 - Open Data Set Data

{L[5]
  HANDLE
  DSNAME
  ACKC13
  RTYPE
  RECLEN
}

Parameters: - HANDLE: Handle (A) - DSNAME: Data Set Name (A) - ACKC13: Acknowledge Code (B[1]) - RTYPE: Record Type (A) - RECLEN: Record Length (U1, U2, U4)

S13F5 - Read Data Set Request

{L[2]
  HANDLE
  READLN
}

Parameters: - HANDLE: Handle (A) - READLN: Read Length (U1, U2, U4)

S13F6 - Read Data Set Data

{L[4]
  HANDLE
  ACKC13
  CKPNT
  {L[n]
    FILDAT
  }
}

Parameters: - HANDLE: Handle (A) - ACKC13: Acknowledge Code (B[1]) - CKPNT: Checkpoint (A) - FILDAT: File Data (any format)

S13F7 - Close Data Set Send

{L[1]
  HANDLE
}

Parameters: - HANDLE: Handle (A)

S13F8 - Close Data Set Ack

{L[2]
  HANDLE
  ACKC13
}

Parameters: - HANDLE: Handle (A) - ACKC13: Acknowledge Code (B[1]) - 0: Acknowledged - 1: Error

S13F9 - Reset Data Set Send

{}

Parameters: - Empty list (header only message)

S13F10 - Reset Data Set Ack

{}

Parameters: - Empty list (header only message)

S13F11 - Data Set Obj Multi-Block Inquire

{L[3]
  DATAID
  OBJSPEC
  DATALENGTH
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - OBJSPEC: Object Specification (A) - DATALENGTH: Data Length (U1, U2, U4)

S13F12 - Data Set Obj Multi-Block Grant

GRANT

Parameters: - GRANT: Grant signal (B[1]) - 0: Not granted - 1: Granted

S13F13 - Table Data Send

{L[8]
  DATAID
  OBJSPEC
  TBLTYP
  TBLID
  TBLCMD
  {L[n]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
  {L[c]
    COLHDR
  }
  {L[r]
    {L[m]
      TBLELT
    }
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - OBJSPEC: Object Specification (A) - TBLTYP: Table Type (A) - TBLID: Table ID (A) - TBLCMD: Table Command (A) - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format) - COLHDR: Column Header (A) - TBLELT: Table Element (any format) - Comment: The first element of every row is a primary key value which identifies the row. The row items correspond in sequence to the column headers. E58 uses attributes NumCols, NumRows, and DataLength

S13F14 - Table Data Ack

{L[2]
  TBLACK
  {L[p]
    {L[2]
      ERRCODE
      ERRTEXT
    }
  }
}

Parameters: - TBLACK: Table Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

S13F15 - Table Data Request

{L[7]
  DATAID
  OBJSPEC
  TBLTYP
  TBLID
  TBLCMD
  {L[p]
    COLHDR
  }
  {L[q]
    TBLELT
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - OBJSPEC: Object Specification (A) - TBLTYP: Table Type (A) - TBLID: Table ID (A) - TBLCMD: Table Command (A) - COLHDR: Column Header (A) - TBLELT: Table Element (any format) - Comment: Either p or q or both are 0.

S13F16 - Table Data

{L[6]
  TBLTYP
  TBLID
  {L[n]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
  {L[c]
    COLHDR
  }
  {L[r]
    {L[c]
      TBLELT
    }
  }
  {L[2]
    TBLACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - TBLTYP: Table Type (A) - TBLID: Table ID (A) - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format) - COLHDR: Column Header (A) - TBLELT: Table Element (any format) - TBLACK: Table Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

Stream 14: Object Services

Purpose: Object-oriented data management and services

Message Direction Description
S14F1 → Equipment Get Attributes Request
S14F2 ← Equipment Attribute Data
S14F3 → Equipment Set Attributes
S14F4 ← Equipment Set Attributes Reply
S14F5 → Equipment Get Type Data
S14F6 ← Equipment Type Data
S14F7 → Equipment Get Attribute Names
S14F8 ← Equipment Attribute Names
S14F9 → Equipment Create Object Request
S14F10 ← Equipment Create Object Acknowledge
S14F11 → Equipment Delete Object Request
S14F12 ← Equipment Delete Object Acknowledge
S14F13 → Equipment Object Attach Request
S14F14 ← Equipment Object Attach Acknowledge
S14F15 → Equipment Attached Object Action Request
S14F16 ← Equipment Attached Object Action Acknowledge
S14F17 → Equipment Supervised Object Action Request
S14F18 ← Equipment Supervised Object Action Acknowledge
S14F19 → Equipment Generic Service Request
S14F20 ← Equipment Generic Service Acknowledge
S14F21 → Equipment Generic Service Completion
S14F22 ← Equipment Generic Service Completion Acknowledge
S14F23 → Equipment Multi-block Generic Service Inquire
S14F24 ← Equipment Multi-block Generic Service Grant
S14F25 → Equipment Service Name Request
S14F26 ← Equipment Service Name Data
S14F27 → Equipment Service Parameter Name Request
S14F28 ← Equipment Service Parameter Name Data

S14F1 - Get Attributes Request

{L[5]
  OBJSPEC
  OBJTYPE
  {L[i]
    OBJID
  }
  {L[q]
    {L[3]
      ATTRID
      ATTRDATA
      ATTRRELN
    }
  }
  {L[a]
    ATTRID
  }
}

Parameters: - OBJSPEC: Object Specification (A) - OBJTYPE: Object Type (A) - OBJID: Object ID (A) - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format) - ATTRRELN: Attribute Relation (A) - Comment: List lengths can be 0, and OBJSPEC can be zero-length.

S14F2 - Attribute Data

{L[2]
  {L[n]
    {L[2]
      OBJID
      {L[a]
        {L[2]
          ATTRID
          ATTRDATA
        }
      }
    }
  }
  {L[2]
    OBJACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - OBJID: Object ID (A) - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format) - OBJACK: Object Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

S14F3 - Set Attributes

{L[4]
  OBJSPEC
  OBJTYPE
  {L[i]
    OBJID
  }
  {L[n]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
}

Parameters: - OBJSPEC: Object Specification (A) - OBJTYPE: Object Type (A) - OBJID: Object ID (A) - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format)

S14F4 - Set Attributes Reply

{L[2]
  {L[i]
    {L[2]
      OBJID
      {L[n]
        {L[2]
          ATTRID
          ATTRDATA
        }
      }
    }
  }
  {L[2]
    OBJACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - OBJID: Object ID (A) - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format) - OBJACK: Object Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

S14F5 - Get Type Data

OBJSPEC

Parameters: - OBJSPEC: Object Specification (A) - Comment: Asks for the types of objects owned by the type of specified object

S14F6 - Type Data

{L[2]
  {L[n]
    OBJTYPE
  }
  {L[2]
    OBJACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - OBJTYPE: Object Type (A) - OBJACK: Object Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

S14F7 - Get Attribute Names

{L[2]
  OBJSPEC
  {L[n]
    OBJTYPE
  }
}

Parameters: - OBJSPEC: Object Specification (A) - OBJTYPE: Object Type (A)

S14F8 - Attribute Names

{L[2]
  {L[n]
    {L[2]
      OBJTYPE
      {L[a]
        ATTRID
      }
    }
  }
  {L[2]
    OBJACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - OBJTYPE: Object Type (A) - ATTRID: Attribute ID (A) - OBJACK: Object Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

S14F9 - Create Object Request

{L[3]
  OBJSPEC
  OBJTYPE
  {L[a]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
}

Parameters: - OBJSPEC: Object Specification (A) - OBJTYPE: Object Type (A) - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format)

S14F10 - Create Object Acknowledge

{L[3]
  OBJSPEC
  {L[b]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
  {L[2]
    OBJACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - OBJSPEC: Object Specification (A) - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format) - OBJACK: Object Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

S14F11 - Delete Object Request

{L[2]
  OBJSPEC
  {L[a]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
}

Parameters: - OBJSPEC: Object Specification (A) - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format)

S14F12 - Delete Object Acknowledge

{L[2]
  {L[b]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
  {L[2]
    OBJACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format) - OBJACK: Object Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

S14F13 - Object Attach Request

{L[2]
  OBJSPEC
  {L[a]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
}

Parameters: - OBJSPEC: Object Specification (A) - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format)

S14F14 - Object Attach Acknowledge

{L[3]
  OBJTOKEN
  {L[b]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
  {L[2]
    OBJACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - OBJTOKEN: Object Token (A) - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format) - OBJACK: Object Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

S14F15 - Attached Object Action Request

{L[4]
  OBJSPEC
  OBJCMD
  OBJTOKEN
  {L[a]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
}

Parameters: - OBJSPEC: Object Specification (A) - OBJCMD: Object Command (A) - OBJTOKEN: Object Token (A) - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format)

S14F16 - Attached Object Action Acknowledge

{L[2]
  {L[b]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
  {L[2]
    OBJACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format) - OBJACK: Object Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

S14F17 - Supervised Object Action Request

{L[4]
  OBJSPEC
  OBJCMD
  TARGETSPEC
  {L[a]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
}

Parameters: - OBJSPEC: Object Specification (A) - OBJCMD: Object Command (A) - TARGETSPEC: Target Specification (A) - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format)

S14F18 - Supervised Object Action Acknowledge

{L[2]
  {L[b]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
  {L[2]
    OBJACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - ATTRID: Attribute ID (A) - ATTRDATA: Attribute Data (any format) - OBJACK: Object Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

S14F19 - Generic Service Request

{L[5]
  DATAID
  OPID
  OBJSPEC
  SVCNAME
  {L[m]
    {L[2]
      SPNAME
      SPVAL
    }
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - OPID: Operation ID (A) - OBJSPEC: Object Specification (A) - SVCNAME: Service Name (A) - SPNAME: Service Parameter Name (A) - SPVAL: Service Parameter Value (any format)

S14F20 - Generic Service Acknowledge

{L[4]
  SVCACK
  LINKID
  {L[n]
    {L[2]
      SPNAME
      SPVAL
    }
  }
  {L[2]
    SVCACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - SVCACK: Service Acknowledge (B[1]) - LINKID: Link ID (A) - SPNAME: Service Parameter Name (A) - SPVAL: Service Parameter Value (any format) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A) - Comment: It is not a mistake that SVCACK is included twice

S14F21 - Generic Service Completion

{L[5]
  DATAID
  OPID
  LINKID
  {L[n]
    {L[2]
      SPNAME
      SPVAL
    }
  }
  {L[2]
    SVCACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - OPID: Operation ID (A) - LINKID: Link ID (A) - SPNAME: Service Parameter Name (A) - SPVAL: Service Parameter Value (any format) - SVCACK: Service Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

S14F22 - Generic Service Completion Acknowledge

DATAACK

Parameters: - DATAACK: Data Acknowledge (B[1])

S14F23 - Multi-block Generic Service Inquire

{L[2]
  DATAID
  DATALENGTH
}

Parameters: - DATAID: Data ID (U1, U2, U4, or A) - DATALENGTH: Data Length (U1, U2, U4) - Comment: You are advised not to implement this message.

S14F24 - Multi-block Generic Service Grant

GRANT

Parameters: - GRANT: Grant signal (B[1]) - 0: Not granted - 1: Granted

S14F25 - Service Name Request

{L[2]
  OBJSPEC
  {L[n]
    OBJTYPE
  }
}

Parameters: - OBJSPEC: Object Specification (A) - OBJTYPE: Object Type (A)

S14F26 - Service Name Data

{L[2]
  {L[n]
    {L[2]
      OBJTYPE
      {L[a]
        SVCNAME
      }
    }
  }
  {L[2]
    OBJACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - OBJTYPE: Object Type (A) - SVCNAME: Service Name (A) - OBJACK: Object Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

S14F27 - Service Parameter Name Request

{L[3]
  OBJSPEC
  OBJTYPE
  {L[n]
    SVCNAME
  }
}

Parameters: - OBJSPEC: Object Specification (A) - OBJTYPE: Object Type (A) - SVCNAME: Service Name (A)

S14F28 - Service Parameter Name Data

{L[2]
  {L[n]
    {L[2]
      SVCNAME
      {L[a]
        SPNAME
      }
    }
  }
  {L[2]
    OBJACK
    {L[p]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}

Parameters: - SVCNAME: Service Name (A) - SPNAME: Service Parameter Name (A) - OBJACK: Object Acknowledge (B[1]) - ERRCODE: Error Code (U1, U2, U4, or A) - ERRTEXT: Error Text (A)

Stream 15: Recipe Management

Purpose: Recipe management and control

Message Direction Description
S15F1 ↔ Host/Equipment Recipe Management Multi-Block Inquire
S15F2 ↔ Host/Equipment Recipe Management Multi-block Grant
S15F3 ↔ Host/Equipment Recipe Namespace Action Req
S15F4 ↔ Host/Equipment Recipe Namespace Action
S15F5 ↔ Host/Equipment Recipe Namespace Rename Req
S15F6 ↔ Host/Equipment Recipe Namespace Rename Ack
S15F7 ↔ Host/Equipment Recipe Space Req
S15F8 ↔ Host/Equipment Recipe Space Data
S15F9 ↔ Host/Equipment Recipe Status Request
S15F10 ↔ Host/Equipment Recipe Status Data
S15F11 ↔ Host/Equipment Recipe Version Request
S15F12 ↔ Host/Equipment Recipe Version Data
S15F13 ↔ Host/Equipment Recipe Create Req
S15F14 ↔ Host/Equipment Recipe Create Ack
S15F15 ↔ Host/Equipment Recipe Store Req
S15F16 ↔ Host/Equipment Recipe Store Ack
S15F17 ↔ Host/Equipment Recipe Retrieve Req
S15F18 ↔ Host/Equipment Recipe Retrieve Data
S15F19 ↔ Host/Equipment Recipe Rename Req
S15F20 ↔ Host/Equipment Recipe Rename Ack
S15F21 ↔ Host/Equipment Recipe Action Req
S15F22 ↔ Host/Equipment Recipe Action Ack
S15F23 ↔ Host/Equipment Recipe Descriptor Req
S15F24 ↔ Host/Equipment Recipe Descriptor Data
S15F25 ↔ Host/Equipment Recipe Parameter Update Req
S15F26 ↔ Host/Equipment Recipe Parameter Update Ack
S15F27 → Host Recipe Download Req
S15F28 ← Equipment Recipe Download Ack
S15F29 → Host Recipe Verify Req
S15F30 ← Equipment Recipe Verify Ack
S15F31 → Host Recipe Unload Req
S15F32 ← Equipment Recipe Unload Data
S15F33 → Host Recipe Select Req
S15F34 ← Equipment Recipe Select Ack
S15F35 → Host Recipe Delete Req
S15F36 ← Equipment Recipe Delete Ack
S15F37 ↔ Host/Equipment DRNS Segment Approve Action Req
S15F38 ↔ Host/Equipment DRNS Segment Approve Action Ack
S15F39 ↔ Host/Equipment DRNS Recorder Seg Req
S15F40 ↔ Host/Equipment DRNS Recorder Seg Ack
S15F41 ↔ Host/Equipment DRNS Recorder Mod Req
S15F42 ↔ Host/Equipment DRNS Recorder Mod Ack
S15F43 ↔ Host/Equipment DRNS Get Change Req
S15F44 ↔ Host/Equipment DRNS Get Change Ack
S15F45 ↔ Host/Equipment DRNS Mgr Seg Aprvl Req
S15F46 ↔ Host/Equipment DRNS Mgr Seg Aprvl Ack
S15F47 ↔ Host/Equipment DRNS Mgr Rebuild Req
S15F48 ↔ Host/Equipment DRNS Mgr Rebuild Ack
S15F49 → Host Large Recipe Download Req
S15F50 ← Equipment Large Recipe Download Ack
S15F51 → Host Large Recipe Upload Req
S15F52 ← Equipment Large Recipe Upload Ack
S15F53 ← Equipment Recipe Verification Send
S15F54 → Host Recipe Verification Ack

S15F1 - Recipe Management Multi-Block Inquire

Comment: E5 fails to mention the message type is optional for HSMS

Format:

{L[3]
DATAID
RCPSPEC
RMDATASIZE
}

S15F2 - Recipe Management Multi-block Grant

Format:

RMGRNT

S15F3 - Recipe Namespace Action Req

Format:

{L[2]
RMNSSPEC
RMNSCMD
}

S15F4 - Recipe Namespace Action

Format:

{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}

S15F5 - Recipe Namespace Rename Req

Format:

{L[2]
RMNSSPEC
RMNEWNS
}

S15F6 - Recipe Namespace Rename Ack

Format:

{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}

S15F7 - Recipe Space Req

Format:

OBJSPEC

S15F8 - Recipe Space Data

Format:

{L[2]
RMSPACE
{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}
}

S15F9 - Recipe Status Request

Format:

RCPSPEC

S15F10 - Recipe Status Data

Format:

{L[3]
RCPSTAT
RCPVERS
{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}
}

S15F11 - Recipe Version Request

Format:

{L[4]
RMNSSPEC
RCPCLASS
RCPNAME
AGENT
}

S15F12 - Recipe Version Data

Format:

{L[3]
AGENT
RCPVERS
{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}
}

S15F13 - Recipe Create Req

Format:

{L[5]
DATAID
RCPUPDT
RCPSPEC
{L[n]
{L[2]
RCPATTRID
RCPATTRDATA
}
}
RCPBODY
}

S15F14 - Recipe Create Ack

Format:

{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}

S15F15 - Recipe Store Req

Comment: L[2]* can be L[2] or L:0; E5 documentation is inadequate for L:q other than L[3]

Format:

{L[4]
DATAID
RCPSPEC
RCPSECCODE
{L[3]
{L[2]*
RCPSECNM
{L:g
{L[2]
RCPATTRID
RCPATTRDATA
}
}
}
RCPBODY
{L[n]
{L[2]
RCPSECNM
{L[n]
{L[2]
RCPATTRID
RCPATTRDATA
}
}
}
}
}
}

S15F16 - Recipe Store Ack

Format:

{L[2]
RCPSECCODE
{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}
}

S15F17 - Recipe Retrieve Req

Format:

{L[2]
RCPSPEC
RCPSECCODE
}

S15F18 - Recipe Retrieve Data

Format:

{L[2]
{L:q
{L:r
RCPSECNM
{L:g
{L[2]
RCPATTRID
RCPATTRDATA
}
}
}
RCPBODY
{L[n]
{L[2]
RCPSECNM
{L[n]
{L[2]
RCPATTRID
RCPATTRDATA
}
}
}
}
}
{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}
}

S15F19 - Recipe Rename Req

Format:

{L[3]
RCPSPEC
RCPRENAME
RCPNEWID
}

S15F20 - Recipe Rename Ack

Format:

{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}

S15F21 - Recipe Action Req

Format:

{L:6
DATAID
RCPCMD
RMNSSPEC
OPID
AGENT
{L[n]
RCPID
}
}

S15F22 - Recipe Action Ack

Format:

{L[4]
AGENT
LINKID
RCPCMD
{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}
}

S15F23 - Recipe Descriptor Req

Format:

{L[3]
DATAID
OBJSPEC
{L[n]
RCPID
}
}

S15F24 - Recipe Descriptor Data

Format:

{L[2]
{L[n]
{L[n]
{L[3]*
RCPDESCNM
RCPDESCTIME
RCPDESCLTH
}
}
}
{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}
}

S15F25 - Recipe Parameter Update Req

Format:

{L[4]
DATAID
RMNSSPEC
AGENT
{L[n]
{L[3]
RCPPARNM
RCPPARVAL
RCPPARRULE
}
}
}

S15F26 - Recipe Parameter Update Ack

Format:

{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}

S15F27 - Recipe Download Req

Format:

{L[5]
DATAID
RCPOWCODE
RCPSPEC
{L[n]
{L[2]
RCPATTRID
RCPATTRDATA
}
}
RCPBODY
}

S15F28 - Recipe Download Ack

Format:

{L[3]
RCPID
{L[n]
{L[2]
RCPATTRID
RCPATTRDATA
}
}
{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}
}

S15F29 - Recipe Verify Req

Format:

{L[4]
DATAID
OPID
RESPEC
{L[n]
RCPID
}
}

S15F30 - Recipe Verify Ack

Format:

{L[5]
OPID
LINKID
RCPID
{L[n]
{L[2]
RCPATTRID
RCPATTRDATA
}
}
{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}
}

S15F31 - Recipe Unload Req

Format:

RCPSPEC

S15F32 - Recipe Unload Data

Format:

{L[4]
RCPSPEC
{L[n]
{L[2]
RCPATTRID
RCPATTRDATA
}
}
RCPBODY
{L[2]
RMACK
{L:p
{L[2]
ERRCODE
ERRTEXT
}
}
}
}

S15F33 - Recipe Select Req

Format:

{L[3]
DATAID
RESPEC
{L:r
{L[2]
RCPID
{L:p
{L[2]
RCPPARNM
RCPPARVAL
}
}
}
}
}

S15F34 - Process Data Backup Response

{L[2]
  PROCESSID
  ACKC15
}
- PROCESSID: Process ID (A)
- ACKC15: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Process not found
  - 3: Backup location not available

S15F35 - Process Data Restore Request

{L[2]
  PROCESSID
  BACKUPLOCATION
}
- PROCESSID: Process ID (A)
- BACKUPLOCATION: Backup Location (A)

S15F36 - Process Data Restore Response

{L[2]
  PROCESSID
  ACKC15
}
- PROCESSID: Process ID (A)
- ACKC15: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Process not found
  - 3: Backup not found

S15F37 - Process Data Archive Request

{L[2]
  PROCESSID
  ARCHIVELOCATION
}
- PROCESSID: Process ID (A)
- ARCHIVELOCATION: Archive Location (A)

S15F38 - Process Data Archive Response

{L[2]
  PROCESSID
  ACKC15
}
- PROCESSID: Process ID (A)
- ACKC15: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Process not found
  - 3: Archive location not available

S15F39 - Process Data Unarchive Request

{L[2]
  PROCESSID
  ARCHIVELOCATION
}
- PROCESSID: Process ID (A)
- ARCHIVELOCATION: Archive Location (A)

S15F40 - Process Data Unarchive Response

{L[2]
  PROCESSID
  ACKC15
}
- PROCESSID: Process ID (A)
- ACKC15: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Process not found
  - 3: Archive not found

S15F41 - Process Data Format Request

{L[2]
  PROCESSID
  FORMATTYPE
}
- PROCESSID: Process ID (A)
- FORMATTYPE: Format Type (U1)
  - 0: ASCII
  - 1: Binary
  - 2: XML
  - 3: JSON

S15F42 - Process Data Format Response

{L[3]
  PROCESSID
  FORMATTYPE
  FORMATTEDDATA
}
- PROCESSID: Process ID (A)
- FORMATTYPE: Format Type (U1)
- FORMATTEDDATA: Formatted Data (any format)

S15F43 - Process Data Format Send

{L[3]
  PROCESSID
  FORMATTYPE
  FORMATTEDDATA
}
- PROCESSID: Process ID (A)
- FORMATTYPE: Format Type (U1)
- FORMATTEDDATA: Formatted Data (any format)

S15F44 - Process Data Format Acknowledge

{L[2]
  PROCESSID
  ACKC15
}
- PROCESSID: Process ID (A)
- ACKC15: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Invalid format type
  - 3: Process not found

S15F45 - Process Data Parameter Request

{L[2]
  PROCESSID
  PARAMETERNAME
}
- PROCESSID: Process ID (A)
- PARAMETERNAME: Parameter Name (A)

S15F46 - Process Data Parameter Response

{L[3]
  PROCESSID
  PARAMETERNAME
  PARAMETERVALUE
}
- PROCESSID: Process ID (A)
- PARAMETERNAME: Parameter Name (A)
- PARAMETERVALUE: Parameter Value (any format)

S15F47 - Process Data Parameter Send

{L[3]
  PROCESSID
  PARAMETERNAME
  PARAMETERVALUE
}
- PROCESSID: Process ID (A)
- PARAMETERNAME: Parameter Name (A)
- PARAMETERVALUE: Parameter Value (any format)

S15F48 - Process Data Parameter Acknowledge

{L[2]
  PROCESSID
  ACKC15
}
- PROCESSID: Process ID (A)
- ACKC15: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Invalid parameter
  - 3: Process not found

S15F49 - Process Data Execute Request

{L[3]
  PROCESSID
  EXECUTETYPE
  {L[n]
    PARAMETER_1
    PARAMETER_2
    ...
    PARAMETER_n
  }
}
- PROCESSID: Process ID (A)
- EXECUTETYPE: Execute Type (U1)
  - 0: Start
  - 1: Stop
  - 2: Pause
  - 3: Resume
- PARAMETER: Execution Parameters (any format)

S15F50 - Process Data Execute Response

{L[2]
  PROCESSID
  ACKC15
}
- PROCESSID: Process ID (A)
- ACKC15: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Process not found
  - 3: Invalid execute type
  - 4: Process already running

S15F51 - Process Data Execute Send

{L[3]
  PROCESSID
  EXECUTETYPE
  {L[n]
    PARAMETER_1
    PARAMETER_2
    ...
    PARAMETER_n
  }
}
- PROCESSID: Process ID (A)
- EXECUTETYPE: Execute Type (U1)
- PARAMETER: Execution Parameters (any format)

S15F52 - Process Data Execute Acknowledge

{L[2]
  PROCESSID
  ACKC15
}
- PROCESSID: Process ID (A)
- ACKC15: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Process not found
  - 3: Invalid execute type
  - 4: Process already running

S15F53 - Process Data Stop Request

PROCESSID
- PROCESSID: Process ID (A)

S15F54 - Process Data Stop Response

Header

Stream 16: Process Job Management

Purpose: Process job creation, control, and management

Message Direction Description
S16F1 → Equipment Process Job Data MBI
S16F2 ← Equipment PJD MBI Grant
S16F3 → Equipment Process Job Create Req
S16F4 ← Equipment Process Job Create Ack
S16F5 → Equipment Process Job Cmd Req
S16F6 ← Equipment Process Job Cmd Ack
S16F7 ← Equipment Process Job Alert Notify
S16F8 → Equipment Process Job Alert Ack
S16F9 ← Equipment Process Job Event Notify
S16F10 → Equipment Process Job Event Ack
S16F11 → Equipment PRJobCreateEnh
S16F12 ← Equipment PRJobCreateEnh Ack
S16F15 → Equipment PRJobMultiCreate
S16F16 ← Equipment PRJobMultiCreate Ack
S16F17 → Equipment PRJobDequeue
S16F18 ← Equipment PRJobDequeue Ack
S16F19 → Equipment PRJob List Req
S16F20 ← Equipment PRJob List Data
S16F21 → Equipment PRJob Create Limit Req
S16F22 ← Equipment PRJob Create Limit Data
S16F23 → Equipment PRJob Recipe Variable Set
S16F24 ← Equipment PRJob Recipe Variable Ack
S16F25 → Equipment PRJob Start Method Set
S16F26 ← Equipment PRJob Start Method Ack
S16F27 → Equipment Control Job Command
S16F28 ← Equipment Control Job Command Ack
S16F29 → Equipment PRSetMtrlOrder
S16F30 ← Equipment PRSetMtrlOrder Ack

S16F1 - Process Job Data MBI

{L[2]
  DATAID
  DATALENGTH
}
- DATAID: Data ID (U1, U2, U4, or A)
- DATALENGTH: Data Length (U1, U2, U4)

S16F2 - PJD MBI Grant

GRANT
- GRANT: Grant Code (B[1])
  - 0: Granted
  - 1: Busy, try again
  - 2: No space

S16F3 - Process Job Create Req

{L[5]
  DATAID
  MF
  {L[n]
    MID
  }
  {L[3]
    PRRECIPEMETHOD
    RCPSPEC
    {L[m]
      {L[2]
        RCPPARNM
        RCPPARVAL
      }
    }
  }
  PRPROCESSSTART
}
- DATAID: Data ID (U1, U2, U4, or A)
- MF: Material Format (U1)
- MID: Material ID (A)
- PRRECIPEMETHOD: Process Recipe Method (A)
- RCPSPEC: Recipe Specification (A)
- RCPPARNM: Recipe Parameter Name (A)
- RCPPARVAL: Recipe Parameter Value (any format)
- PRPROCESSSTART: Process Process Start (A)

S16F4 - Process Job Create Ack

{L[2]
  PRJOBID
  {L[2]
    ACKA
    {L[n]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}
- PRJOBID: Process Job ID (A)
- ACKA: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
- ERRCODE: Error Code (U1, U2, U4, or A)
- ERRTEXT: Error Text (A)

S16F5 - Process Job Cmd Req

{L[4]
  DATAID
  PRJOBID
  PRCMDNAME
  {L[n]
    {L[2]
      CPNAME
      CPVAL
    }
  }
}
- DATAID: Data ID (U1, U2, U4, or A)
- PRJOBID: Process Job ID (A)
- PRCMDNAME: Process Command Name (A)
- CPNAME: Command Parameter Name (A)
- CPVAL: Command Parameter Value (any format)

S16F6 - Process Job Cmd Ack

{L[2]
  PRJOBID
  {L[2]
    ACKA
    {L[n]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}
- PRJOBID: Process Job ID (A)
- ACKA: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
- ERRCODE: Error Code (U1, U2, U4, or A)
- ERRTEXT: Error Text (A)

S16F7 - Process Job Alert Notify

{L[4]
  TIMESTAMP
  PRJOBID
  PRJOBMILESTONE
  {L[2]
    ACKA
    {L[n]
      {L[2]
        ERRCODE
        ERRTEXT
      }
    }
  }
}
- TIMESTAMP: Timestamp (A)
- PRJOBID: Process Job ID (A)
- PRJOBMILESTONE: Process Job Milestone (A)
- ACKA: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
- ERRCODE: Error Code (U1, U2, U4, or A)
- ERRTEXT: Error Text (A)

S16F8 - Process Job Alert Ack

{}
- No parameters required

S16F9 - Process Job Event Notify

{L[4]
  PREVENTID
  TIMESTAMP
  PRJOBID
  {L[n]
    {L[2]
      VID
      V
    }
  }
}
- PREVENTID: Process Event ID (A)
- TIMESTAMP: Timestamp (A)
- PRJOBID: Process Job ID (A)
- VID: Variable ID (U1, U2, U4, or A)
- V: Variable Value (any format)

S16F10 - Process Job Event Ack

{}
- No parameters required

S16F11 - Recipe Upload Send

{L[3]
  EQUIPMENTID
  RECIPETYPE
  RECIPEDATA
}
- EQUIPMENTID: Equipment ID (A)
- RECIPETYPE: Recipe Type (U1)
- RECIPEDATA: Recipe Data (any format)

S16F12 - Recipe Upload Acknowledge

{L[2]
  EQUIPMENTID
  ACKC16
}
- EQUIPMENTID: Equipment ID (A)
- ACKC16: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Invalid recipe type
  - 3: Equipment not found

S16F13 - Recipe Download Request

{L[2]
  EQUIPMENTID
  RECIPETYPE
}
- EQUIPMENTID: Equipment ID (A)
- RECIPETYPE: Recipe Type (U1)

S16F14 - Recipe Download Response

{L[3]
  EQUIPMENTID
  RECIPETYPE
  RECIPEDATA
}
- EQUIPMENTID: Equipment ID (A)
- RECIPETYPE: Recipe Type (U1)
- RECIPEDATA: Recipe Data (any format)

S16F15 - Recipe Download Send

{L[3]
  EQUIPMENTID
  RECIPETYPE
  RECIPEDATA
}
- EQUIPMENTID: Equipment ID (A)
- RECIPETYPE: Recipe Type (U1)
- RECIPEDATA: Recipe Data (any format)

S16F16 - Recipe Download Acknowledge

{L[2]
  EQUIPMENTID
  ACKC16
}
- EQUIPMENTID: Equipment ID (A)
- ACKC16: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Invalid recipe type
  - 3: Equipment not found

S16F17 - Recipe Validate Request

{L[3]
  EQUIPMENTID
  RECIPETYPE
  RECIPEDATA
}
- EQUIPMENTID: Equipment ID (A)
- RECIPETYPE: Recipe Type (U1)
- RECIPEDATA: Recipe Data (any format)

S16F18 - Recipe Validate Response

{L[3]
  EQUIPMENTID
  VALRESULT
  {L[n]
    ERROR_1
    ERROR_2
    ...
    ERROR_n
  }
}
- EQUIPMENTID: Equipment ID (A)
- VALRESULT: Validation Result (B[1])
  - 0: Valid
  - 1: Invalid
- ERROR: Validation Error (A)

S16F19 - Recipe Validate Send

{L[3]
  EQUIPMENTID
  RECIPETYPE
  RECIPEDATA
}
- EQUIPMENTID: Equipment ID (A)
- RECIPETYPE: Recipe Type (U1)
- RECIPEDATA: Recipe Data (any format)

S16F20 - Recipe Validate Acknowledge

{L[2]
  EQUIPMENTID
  ACKC16
}
- EQUIPMENTID: Equipment ID (A)
- ACKC16: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Invalid recipe type
  - 3: Equipment not found

S16F21 - Recipe Compress Request

{L[3]
  EQUIPMENTID
  RECIPETYPE
  RECIPEDATA
}
- EQUIPMENTID: Equipment ID (A)
- RECIPETYPE: Recipe Type (U1)
- RECIPEDATA: Recipe Data (any format)

S16F22 - Recipe Compress Response

{L[3]
  EQUIPMENTID
  RECIPETYPE
  COMPRESSEDDATA
}
- EQUIPMENTID: Equipment ID (A)
- RECIPETYPE: Recipe Type (U1)
- COMPRESSEDDATA: Compressed Data (B)

S16F23 - Recipe Compress Send

{L[3]
  EQUIPMENTID
  RECIPETYPE
  COMPRESSEDDATA
}
- EQUIPMENTID: Equipment ID (A)
- RECIPETYPE: Recipe Type (U1)
- COMPRESSEDDATA: Compressed Data (B)

S16F24 - Recipe Compress Acknowledge

{L[2]
  EQUIPMENTID
  ACKC16
}
- EQUIPMENTID: Equipment ID (A)
- ACKC16: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Invalid recipe type
  - 3: Equipment not found

S16F25 - Recipe Encrypt Request

{L[3]
  EQUIPMENTID
  RECIPETYPE
  RECIPEDATA
}
- EQUIPMENTID: Equipment ID (A)
- RECIPETYPE: Recipe Type (U1)
- RECIPEDATA: Recipe Data (any format)

S16F26 - Recipe Encrypt Response

{L[3]
  EQUIPMENTID
  RECIPETYPE
  ENCRYPTEDDATA
}
- EQUIPMENTID: Equipment ID (A)
- RECIPETYPE: Recipe Type (U1)
- ENCRYPTEDDATA: Encrypted Data (B)

S16F27 - Recipe Encrypt Send

{L[3]
  EQUIPMENTID
  RECIPETYPE
  ENCRYPTEDDATA
}
- EQUIPMENTID: Equipment ID (A)
- RECIPETYPE: Recipe Type (U1)
- ENCRYPTEDDATA: Encrypted Data (B)

S16F28 - Recipe Encrypt Acknowledge

{L[2]
  EQUIPMENTID
  ACKC16
}
- EQUIPMENTID: Equipment ID (A)
- ACKC16: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Invalid recipe type
  - 3: Equipment not found

S16F29 - PRSetMtrlOrder

PRMTRLORDER
- PRMTRLORDER: Process Material Order (U2)

S16F30 - PRSetMtrlOrder Ack

ACKA
- ACKA: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Invalid material order
  - 3: Process not found

Stream 17: Data Report Management

Purpose: Data report and trace management

Message Direction Description
S17F1 → Equipment Data Report Create Request
S17F2 ← Equipment Data Report Create Acknowledgment
S17F3 → Equipment Data Report Delete Request
S17F4 ← Equipment Data Report Delete Acknowledgment
S17F5 → Equipment Trace Create Request
S17F6 ← Equipment Trace Create Acknowledgment
S17F7 → Equipment Trace Delete Request
S17F8 ← Equipment Trace Delete Acknowledgment
S17F9 → Equipment Collection Event Link Request
S17F10 ← Equipment Collection Event Link Acknowledgment
S17F11 → Equipment Collection Event Unlink Request
S17F12 ← Equipment Collection Event Unlink Acknowledgment
S17F13 → Equipment Trace Reset Request
S17F14 ← Equipment Trace Reset Acknowledgment

S17F1 - Data Report Create Request

{L[4]
  DATAID
  RPTID
  DATASRC
  {L[n]
    VID
  }
}
- DATAID: Data ID (U4)
- RPTID: Report ID (U4)
- DATASRC: Data Source (A)
- VID: Variable ID (U4)

S17F2 - Data Report Create Acknowledgment

{L[2]
  RPTID
  ERRCODE
}
- RPTID: Report ID (U4)
- ERRCODE: Error Code (U4)

S17F3 - Data Report Delete Request

{L[n]
  RPTID
}
- RPTID: Report ID (U4)
- Comment: L:0 means delete all reports

S17F4 - Data Report Delete Acknowledgment

{L[2]
  ACKA
  {L[n]
    {L[3]
      RPTID
      ERRCODE
      ERRTEXT
    }
  }
}
- ACKA: Acknowledge Code (U4)
- RPTID: Report ID (U4)
- ERRCODE: Error Code (U4)
- ERRTEXT: Error Text (A)

S17F5 - Trace Create Request

{L:6
  DATAID
  TRID
  CEED
  {L[n]
    RPTID
  }
  {L[8]
    TOTSMP
    REPGSZ
    EVNTSRC
    CEIDSTART
    EVNTSRC2
    CEIDSTOP
    TRAUTOD
    RPTOC
  }
}
- DATAID: Data ID (U4)
- TRID: Trace ID (U4)
- CEED: Collection Event Enable/Disable (B[1])
- RPTID: Report ID (U4)
- TOTSMP: Total Samples (U4)
- REPGSZ: Report Group Size (U4)
- EVNTSRC: Event Source (A)
- CEIDSTART: Collection Event ID Start (U4)
- EVNTSRC2: Event Source 2 (A)
- CEIDSTOP: Collection Event ID Stop (U4)
- TRAUTOD: Trace Auto Delete (B[1])
- RPTOC: Report On Change (B[1])
- Comment: We recommend the host always provides the L:8 values

S17F6 - Trace Create Acknowledgment

{L[2]
  TRID
  ERRCODE
}
- TRID: Trace ID (U4)
- ERRCODE: Error Code (U4)

S17F7 - Trace Delete Request

{L[n]
  TRID
}
- TRID: Trace ID (U4)
- Comment: Surprisingly, L:0 is not specified as a means to indicate all, but this feature has to be provided because there is no means to discover the existing traces.

S17F8 - Trace Delete Acknowledgment

{L[2]
  ACKA
  {L[n]
    {L[3]
      TRID
      ERRCODE
      ERRTEXT
    }
  }
}
- ACKA: Acknowledge Code (U4)
- TRID: Trace ID (U4)
- ERRCODE: Error Code (U4)
- ERRTEXT: Error Text (A)

{L[4]
  DATAID
  EVNTSRC
  CEID
  {L[n]
    RPTID
  }
}
- DATAID: Data ID (U4)
- EVNTSRC: Event Source (A)
- CEID: Collection Event ID (U4)
- RPTID: Report ID (U4)

{L[3]
  EVNTSRC
  CEID
  ERRCODE
}
- EVNTSRC: Event Source (A)
- CEID: Collection Event ID (U4)
- ERRCODE: Error Code (U4)

{L[3]
  EVNTSRC
  CEID
  RPTID
}
- EVNTSRC: Event Source (A)
- CEID: Collection Event ID (U4)
- RPTID: Report ID (U4)

{L[4]
  EVNTSRC
  CEID
  RPTID
  ERRCODE
}
- EVNTSRC: Event Source (A)
- CEID: Collection Event ID (U4)
- RPTID: Report ID (U4)
- ERRCODE: Error Code (U4)

S17F13 - Trace Reset Request

{L[n]
TRID
}
- TRID: Trace ID (U4)

S17F14 - Trace Reset Acknowledgment

{L[2]
  ACKA
  {L[n]
    {L[3]
      TRID
      ERRCODE
      ERRTEXT
    }
  }
}
- ACKA: Acknowledge Code (U4)
- TRID: Trace ID (U4)
- ERRCODE: Error Code (U4)
- ERRTEXT: Error Text (A)

Stream 18: Subsystem Management

Purpose: Subsystem attribute and data management

Message Direction Description
S18F1 → Equipment Read Attribute Request
S18F2 ← Equipment Read Attribute Data
S18F3 → Equipment Write Attribute Request
S18F4 ← Equipment Write Attribute Acknowledgment
S18F5 → Equipment Read Request
S18F6 ← Equipment Read Data
S18F7 → Equipment Write Data Request
S18F8 ← Equipment Write Data Acknowledgment
S18F9 → Equipment Read ID Request
S18F10 ← Equipment Read ID Data
S18F11 → Equipment Write ID Request
S18F12 ← Equipment Write ID Acknowledgment
S18F13 → Equipment Subsystem Command
S18F14 ← Equipment Subsystem Command Acknowledgment
S18F15 → Equipment Read 2D Code Condition Request
S18F16 ← Equipment Read 2D Code Condition Data

S18F1 - Read Attribute Request

{L[2]
  TARGETID
  {L[n]
    ATTRID
  }
}
- TARGETID: Target ID (A)
- ATTRID: Attribute ID (A)

S18F2 - Read Attribute Data

{L[4]
  TARGETID
  SSACK
  {L[n]
    ATTRDATA
  }
  {L[n]
    STATUS
  }
}
- TARGETID: Target ID (A)
- SSACK: Subsystem Acknowledge (U4)
- ATTRDATA: Attribute Data (any format)
- STATUS: Status (A)
- Comment: E5 differs from OEM tools

S18F3 - Write Attribute Request

{L[2]
  TARGETID
  {L[n]
    {L[2]
      ATTRID
      ATTRDATA
    }
  }
}
- TARGETID: Target ID (A)
- ATTRID: Attribute ID (A)
- ATTRDATA: Attribute Data (any format)

S18F4 - Write Attribute Acknowledgment

{L[3]
  TARGETID
  SSACK
  {L[n]
    STATUS
  }
}
- TARGETID: Target ID (A)
- SSACK: Subsystem Acknowledge (U4)
- STATUS: Status (A)
- Comment: Fixed E5 mistake

S18F5 - Read Request

{L[3]
  TARGETID
  DATASEG
  DATALENGTH
}
- TARGETID: Target ID (A)
- DATASEG: Data Segment (A)
- DATALENGTH: Data Length (U4)

S18F6 - Read Data

{L[4]
  TARGETID
  SSACK
  DATA
  {L[n]
    STATUS
  }
}
- TARGETID: Target ID (A)
- SSACK: Subsystem Acknowledge (U4)
- DATA: Data (any format)
- STATUS: Status (A)

S18F7 - Write Data Request

{L[4]
  TARGETID
  DATASEG
  DATALENGTH
  DATA
}
- TARGETID: Target ID (A)
- DATASEG: Data Segment (A)
- DATALENGTH: Data Length (U4)
- DATA: Data (any format)

S18F8 - Write Data Acknowledgment

{L[3]
  TARGETID
  SSACK
  {L[n]
    STATUS
  }
}
- TARGETID: Target ID (A)
- SSACK: Subsystem Acknowledge (U4)
- STATUS: Status (A)

S18F9 - Read ID Request

TARGETID
- TARGETID: Target ID (A)

S18F10 - Read ID Data

{L[4]
  TARGETID
  SSACK
  MID
  {L[n]
    STATUS
  }
}
- TARGETID: Target ID (A)
- SSACK: Subsystem Acknowledge (U4)
- MID: Module ID (A)
- STATUS: Status (A)

S18F11 - Write ID Request

{L[2]
  TARGETID
  MID
}
- TARGETID: Target ID (A)
- MID: Module ID (A)

S18F12 - Write ID Acknowledgment

{L[3]
  TARGETID
  SSACK
  {L[n]
    STATUS
  }
}
- TARGETID: Target ID (A)
- SSACK: Subsystem Acknowledge (U4)
- STATUS: Status (A)

S18F13 - Subsystem Command

{L[3]
  TARGETID
  SSCMD
  {L[n]
    CPVAL
  }
}
- TARGETID: Target ID (A)
- SSCMD: Subsystem Command (A)
- CPVAL: Command Parameter Value (any format)

S18F14 - Subsystem Command Acknowledgment

{L[3]
  TARGETID
  SSACK
  {L[n]
    STATUS
  }
}
- TARGETID: Target ID (A)
- SSACK: Subsystem Acknowledge (U4)
- STATUS: Status (A)

S18F15 - Read 2D Code Condition Request

TARGETID
- TARGETID: Target ID (A)

S18F16 - Read 2D Code Condition Data

{L[5]
  TARGETID
  SSACK
  MID
  {L[n]
    STATUS
  }
  {L[n]
    CONDITION
  }
}
- TARGETID: Target ID (A)
- SSACK: Subsystem Acknowledge (U4)
- MID: Module ID (A)
- STATUS: Status (A)
- CONDITION: Condition (A)

Stream 19: Inventory Management

Purpose: Equipment and material inventory tracking

Message Direction Description
S19F1 → Equipment Inventory Request
S19F2 ← Equipment Inventory Response
S19F3 → Equipment Inventory Update
S19F4 ← Equipment Inventory Update Response
S19F5 → Equipment Inventory Add Request
S19F6 ← Equipment Inventory Add Response
S19F7 → Equipment Inventory Remove Request
S19F8 ← Equipment Inventory Remove Response
S19F9 → Equipment Inventory Status Request
S19F10 ← Equipment Inventory Status Response
S19F11 → Equipment Inventory Move Request
S19F12 ← Equipment Inventory Move Response
S19F13 → Equipment Inventory Search Request
S19F14 ← Equipment Inventory Search Response
S19F15 → Equipment Inventory Lock Request
S19F16 ← Equipment Inventory Lock Response
S19F17 → Equipment Inventory History Request
S19F18 ← Equipment Inventory History Response
S19F19 → Equipment Inventory Audit Request
S19F20 ← Equipment Inventory Audit Response

S19F1 - Inventory Request

{L[n]
  INVTYPE_1
  INVTYPE_2
  ...
  INVTYPE_n
}
- INVTYPE: Inventory Type (A)
  - "SUBSTRATE": Substrate inventory
  - "CARRIER": Carrier inventory
  - "TOOL": Tool inventory

S19F2 - Inventory Response

{L[n]
  {L[3]
    INVTYPE
    INVID
    INVDATA
  }
}
- INVTYPE: Inventory Type (A)
- INVID: Inventory ID (A)
- INVDATA: Inventory Data (any format)

S19F3 - Inventory Update

{L[3]
  INVTYPE
  INVID
  INVDATA
}
- INVTYPE: Inventory Type (A)
- INVID: Inventory ID (A)
- INVDATA: Inventory Data (any format)

S19F4 - Inventory Update Response

{L[2]
  INVID
  ACKC19
}
- INVID: Inventory ID (A)
- ACKC19: Acknowledge Code (B[1])

S19F5 - Inventory Add Request

{L[4]
  INVTYPE
  INVID
  INVDATA
  LOCATION
}
- INVTYPE: Inventory Type (A)
- INVID: Inventory ID (A)
- INVDATA: Inventory Data (any format)
- LOCATION: Location (A)

S19F6 - Inventory Add Response

{L[2]
  INVID
  ACKC19
}
- INVID: Inventory ID (A)
- ACKC19: Acknowledge Code (B[1])

S19F7 - Inventory Remove Request

{L[2]
  INVTYPE
  INVID
}
- INVTYPE: Inventory Type (A)
- INVID: Inventory ID (A)

S19F8 - Inventory Remove Response

{L[2]
  INVID
  ACKC19
}
- INVID: Inventory ID (A)
- ACKC19: Acknowledge Code (B[1])

S19F9 - Inventory Status Request

INVID
- INVID: Inventory ID (A)

S19F10 - Inventory Status Response

{L[4]
  INVID
  INVSTATUS
  LOCATION
  INVDATA
}
- INVID: Inventory ID (A)
- INVSTATUS: Inventory Status (U1)
- LOCATION: Location (A)
- INVDATA: Inventory Data (any format)

S19F11 - Inventory Move Request

{L[3]
  INVID
  SRCLOCATION
  DESTLOCATION
}
- INVID: Inventory ID (A)
- SRCLOCATION: Source Location (A)
- DESTLOCATION: Destination Location (A)

S19F12 - Inventory Move Response

{L[2]
  INVID
  ACKC19
}
- INVID: Inventory ID (A)
- ACKC19: Acknowledge Code (B[1])

S19F13 - Inventory Search Request

{L[3]
  INVTYPE
  SEARCHCRITERIA
  SEARCHOPTIONS
}
- INVTYPE: Inventory Type (A)
- SEARCHCRITERIA: Search Criteria (any format)
- SEARCHOPTIONS: Search Options (any format)

S19F14 - Inventory Search Response

{L[n]
  {L[4]
    INVID
    INVTYPE
    LOCATION
    INVDATA
  }
}
- INVID: Inventory ID (A)
- INVTYPE: Inventory Type (A)
- LOCATION: Location (A)
- INVDATA: Inventory Data (any format)

S19F15 - Inventory Lock Request

{L[3]
  INVID
  LOCKTYPE
  LOCKDURATION
}
- INVID: Inventory ID (A)
- LOCKTYPE: Lock Type (U1)
- LOCKDURATION: Lock Duration (U4)

S19F16 - Inventory Lock Response

{L[2]
  INVID
  ACKC19
}
- INVID: Inventory ID (A)
- ACKC19: Acknowledge Code (B[1])

S19F17 - Inventory History Request

{L[3]
  INVID
  STARTTIME
  ENDTIME
}
- INVID: Inventory ID (A)
- STARTTIME: Start Time (A)
- ENDTIME: End Time (A)

S19F18 - Inventory History Response

{L[2]
  INVID
  {L[n]
    {L[4]
      TIME
      ACTION
      LOCATION
      INVDATA
    }
  }
}
- INVID: Inventory ID (A)
- TIME: Timestamp (A)
- ACTION: Action Type (A)
- LOCATION: Location (A)
- INVDATA: Inventory Data (any format)

S19F19 - Inventory Audit Request

{L[2]
  INVTYPE
  AUDITTYPE
}
- INVTYPE: Inventory Type (A)
- AUDITTYPE: Audit Type (U1)

S19F20 - Inventory Audit Response

{L[3]
  INVTYPE
  AUDITRESULTS
  ACKC19
}
- INVTYPE: Inventory Type (A)
- AUDITRESULTS: Audit Results (any format)
- ACKC19: Acknowledge Code (B[1])

Stream 20: Substrate Transfer (SEMI-E157)

Purpose: Advanced substrate transfer operations

Message Direction Description
S20F1 → Equipment Transfer Request
S20F2 ← Equipment Transfer Response
S20F3 → Equipment Transfer Status Request
S20F4 ← Equipment Transfer Status Response
S20F5 → Equipment Transfer Abort Request
S20F6 ← Equipment Transfer Abort Response
S20F7 → Equipment Transfer Pause Request
S20F8 ← Equipment Transfer Pause Response
S20F9 → Equipment Transfer Resume Request
S20F10 ← Equipment Transfer Resume Response
S20F11 → Equipment Transfer Queue Request
S20F12 ← Equipment Transfer Queue Response
S20F13 → Equipment Transfer Priority Request
S20F14 ← Equipment Transfer Priority Response
S20F15 → Equipment Transfer Route Request
S20F16 ← Equipment Transfer Route Response
S20F17 → Equipment Transfer Schedule Request
S20F18 ← Equipment Transfer Schedule Response
S20F19 → Equipment Transfer Log Request
S20F20 ← Equipment Transfer Log Response
S20F21 → Equipment Transfer Config Request
S20F22 ← Equipment Transfer Config Response
S20F23 → Equipment Transfer Monitor Request
S20F24 ← Equipment Transfer Monitor Response
S20F25 → Equipment Transfer Resource Request
S20F26 ← Equipment Transfer Resource Response
S20F27 → Equipment Transfer Event Report
S20F28 ← Equipment Transfer Event Acknowledge
S20F29 → Equipment Transfer Optimization Request
S20F30 ← Equipment Transfer Optimization Response
S20F31 → Equipment Transfer History Request
S20F32 ← Equipment Transfer History Response
S20F33 → Equipment Transfer Performance Request
S20F34 ← Equipment Transfer Performance Response

S20F1 - Transfer Request

{L[4]
  TRANSFERID
  SOURCEID
  DESTID
  TRANSFERTYPE
}
- TRANSFERID: Transfer ID (A)
- SOURCEID: Source Location ID (A)
- DESTID: Destination Location ID (A)
- TRANSFERTYPE: Transfer Type (U1)
  - 0: Move
  - 1: Copy
  - 2: Exchange

S20F2 - Transfer Response

{L[2]
  TRANSFERID
  ACKC20
}
- TRANSFERID: Transfer ID (A)
- ACKC20: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Invalid location
  - 3: Transfer not possible

S20F3 - Transfer Status Request

TRANSFERID
- TRANSFERID: Transfer ID (A)

S20F4 - Transfer Status Response

{L[3]
  TRANSFERID
  TRANSFERSTATUS
  STATUSINFO
}
- TRANSFERID: Transfer ID (A)
- TRANSFERSTATUS: Transfer Status (U1)
  - 0: Idle
  - 1: Active
  - 2: Paused
  - 3: Complete
  - 4: Aborted
  - 5: Error
- STATUSINFO: Status Information (A)

S20F5 - Transfer Abort Request

TRANSFERID
- TRANSFERID: Transfer ID (A)

S20F6 - Transfer Abort Response

{L[2]
  TRANSFERID
  ACKC20
}
- TRANSFERID: Transfer ID (A)
- ACKC20: Acknowledge Code (B[1])

S20F7 - Transfer Pause Request

TRANSFERID
- TRANSFERID: Transfer ID (A)

S20F8 - Transfer Pause Response

{L[2]
  TRANSFERID
  ACKC20
}
- TRANSFERID: Transfer ID (A)
- ACKC20: Acknowledge Code (B[1])

S20F9 - Transfer Resume Request

TRANSFERID
- TRANSFERID: Transfer ID (A)

S20F10 - Transfer Resume Response

{L[2]
  TRANSFERID
  ACKC20
}
- TRANSFERID: Transfer ID (A)
- ACKC20: Acknowledge Code (B[1])

S20F11 - Transfer Queue Request

Empty Message
- No parameters required

S20F12 - Transfer Queue Response

{L[n]
  {L[4]
    TRANSFERID
    SOURCEID
    DESTID
    PRIORITY
  }
}
- TRANSFERID: Transfer ID (A)
- SOURCEID: Source Location ID (A)
- DESTID: Destination Location ID (A)
- PRIORITY: Priority Level (U1)

S20F13 - Transfer Priority Request

{L[2]
  TRANSFERID
  PRIORITY
}
- TRANSFERID: Transfer ID (A)
- PRIORITY: New Priority Level (U1)

S20F14 - Transfer Priority Response

{L[2]
  TRANSFERID
  ACKC20
}
- TRANSFERID: Transfer ID (A)
- ACKC20: Acknowledge Code (B[1])

S20F15 - Transfer Route Request

{L[2]
  SOURCEID
  DESTID
}
- SOURCEID: Source Location ID (A)
- DESTID: Destination Location ID (A)

S20F16 - Transfer Route Response

{L[n]
  ROUTEID_1
  ROUTEID_2
  ...
  ROUTEID_n
}
- ROUTEID: Route ID (A)

S20F17 - Transfer Schedule Request

{L[3]
  TRANSFERID
  STARTTIME
  ENDTIME
}
- TRANSFERID: Transfer ID (A)
- STARTTIME: Start Time (A)
- ENDTIME: End Time (A)

S20F18 - Transfer Schedule Response

{L[2]
  TRANSFERID
  ACKC20
}
- TRANSFERID: Transfer ID (A)
- ACKC20: Acknowledge Code (B[1])

S20F19 - Transfer Log Request

{L[2]
  STARTTIME
  ENDTIME
}
- STARTTIME: Start Time (A)
- ENDTIME: End Time (A)

S20F20 - Transfer Log Response

{L[n]
  {L[4]
    TRANSFERID
    TIMESTAMP
    EVENT
    EVENTDATA
  }
}
- TRANSFERID: Transfer ID (A)
- TIMESTAMP: Event Timestamp (A)
- EVENT: Event Type (U1)
- EVENTDATA: Event Data (A)

S20F21 - Transfer Config Request

{L[n]
  CONFIGID_1
  CONFIGID_2
  ...
  CONFIGID_n
}
- CONFIGID: Configuration ID (A)

S20F22 - Transfer Config Response

{L[n]
  {L[2]
    CONFIGID
    CONFIGVALUE
  }
}
- CONFIGID: Configuration ID (A)
- CONFIGVALUE: Configuration Value (any format)

S20F23 - Transfer Monitor Request

{L[2]
  TRANSFERID
  MONITORTYPE
}
- TRANSFERID: Transfer ID (A)
- MONITORTYPE: Monitor Type (U1)
  - 0: Status
  - 1: Performance
  - 2: Error

S20F24 - Transfer Monitor Response

{L[3]
  TRANSFERID
  MONITORTYPE
  MONITORDATA
}
- TRANSFERID: Transfer ID (A)
- MONITORTYPE: Monitor Type (U1)
- MONITORDATA: Monitor Data (L)

S20F25 - Transfer Resource Request

{L[2]
  SOURCEID
  DESTID
}
- SOURCEID: Source Location ID (A)
- DESTID: Destination Location ID (A)

S20F26 - Transfer Resource Response

{L[n]
  {L[3]
    RESOURCEID
    RESOURCETYPE
    AVAILABILITY
  }
}
- RESOURCEID: Resource ID (A)
- RESOURCETYPE: Resource Type (U1)
- AVAILABILITY: Availability Status (U1)

S20F27 - Transfer Event Report

{L[4]
  TRANSFERID
  EVENTTYPE
  TIMESTAMP
  EVENTDATA
}
- TRANSFERID: Transfer ID (A)
- EVENTTYPE: Event Type (U1)
- TIMESTAMP: Event Timestamp (A)
- EVENTDATA: Event Data (L)

S20F28 - Transfer Event Acknowledge

{L[2]
  TRANSFERID
  ACKC20
}
- TRANSFERID: Transfer ID (A)
- ACKC20: Acknowledge Code (B[1])

S20F29 - Transfer Optimization Request

{L[2]
  OPTIMIZATIONTYPE
  PARAMETERS
}
- OPTIMIZATIONTYPE: Optimization Type (U1)
  - 0: Time
  - 1: Efficiency
  - 2: Resource
- PARAMETERS: Optimization Parameters (L)

S20F30 - Transfer Optimization Response

{L[2]
  OPTIMIZATIONRESULT
  RECOMMENDATIONS
}
- OPTIMIZATIONRESULT: Optimization Result (U1)
- RECOMMENDATIONS: Recommendations (L)

S20F31 - Transfer History Request

{L[3]
  TRANSFERID
  STARTTIME
  ENDTIME
}
- TRANSFERID: Transfer ID (A)
- STARTTIME: Start Time (A)
- ENDTIME: End Time (A)

S20F32 - Transfer History Response

{L[n]
  {L[5]
    TRANSFERID
    TIMESTAMP
    EVENT
    STATUS
    DETAILS
  }
}
- TRANSFERID: Transfer ID (A)
- TIMESTAMP: Event Timestamp (A)
- EVENT: Event Type (U1)
- STATUS: Status (U1)
- DETAILS: Event Details (A)

S20F33 - Transfer Performance Request

{L[2]
  STARTTIME
  ENDTIME
}
- STARTTIME: Start Time (A)
- ENDTIME: End Time (A)

S20F34 - Transfer Performance Response

{L[n]
  {L[4]
    METRICID
    METRICVALUE
    TIMESTAMP
    UNIT
  }
}
- METRICID: Metric ID (A)
- METRICVALUE: Metric Value (F4)
- TIMESTAMP: Measurement Timestamp (A)
- UNIT: Unit of Measurement (A)

Stream 21: Material Transfer Management

Purpose: High-level material transfer coordination

Message Direction Description
S21F1 → Equipment Material Transfer Plan
S21F2 ← Equipment Material Transfer Plan Response
S21F3 → Equipment Material Transfer Execute
S21F4 ← Equipment Material Transfer Execute Response
S21F5 → Equipment Material Tracking Request
S21F6 ← Equipment Material Tracking Response
S21F7 → Equipment Material Location Request
S21F8 ← Equipment Material Location Response
S21F9 → Equipment Material History Request
S21F10 ← Equipment Material History Response
S21F11 → Equipment Material Routing Request
S21F12 ← Equipment Material Routing Response
S21F13 → Equipment Material Processing Request
S21F14 ← Equipment Material Processing Response
S21F15 → Equipment Material Quality Request
S21F16 ← Equipment Material Quality Response
S21F17 → Equipment Material Recipe Request
S21F18 ← Equipment Material Recipe Response
S21F19 → Equipment Material Event Report
S21F20 ← Equipment Material Event Acknowledge

S21F1 - Material Transfer Plan

{L[3]
  PLANID
  {L[n]
    {L[3]
      MATERIALID
      SOURCEID
      DESTID
    }
  }
  PRIORITY
}
- PLANID: Plan ID (A)
- MATERIALID: Material ID (A)
- SOURCEID: Source Location ID (A)
- DESTID: Destination Location ID (A)
- PRIORITY: Priority Level (U1)
  - 0: Low
  - 1: Normal
  - 2: High
  - 3: Critical

S21F2 - Material Transfer Plan Response

{L[2]
  PLANID
  ACKC21
}
- PLANID: Plan ID (A)
- ACKC21: Acknowledge Code (B[1])
  - 0: Acknowledged
  - 1: Error
  - 2: Invalid plan
  - 3: Resource conflict

Message Categories

Equipment Status (Stream 1)

  • Basic communication establishment
  • Equipment state monitoring
  • Online/Offline control

Equipment Control (Stream 2)

  • Configuration management
  • Time synchronization
  • Event reporting setup

Material Management (Streams 3-4)

  • Carrier and substrate tracking
  • Transfer job management
  • Material handling control

Exception Handling (Stream 5)

  • Alarm management
  • Exception reporting
  • Error notification

Data Collection (Stream 6)

  • Process data gathering
  • Event monitoring
  • Trace data collection

Program Management (Stream 7)

  • Recipe management
  • Process program control
  • EPPD handling

System Services (Streams 9-10)

  • Error reporting
  • Terminal communication
  • System diagnostics

Advanced Features (Streams 12+)

  • Wafer mapping
  • Object services
  • Recipe management
  • Processing control

Common Message Examples

S1F13 - Establish Communications Request

Hex 
Length: 00 00 00 0C (12 bytes)
Header: 00 00 81 0D 00 00 xx xx xx xx
Data:   01 00 (empty list)

SECS-II 
{L:0}  // Empty list

S1F14 - Establish Communications Response

Hex 
Length: 00 00 00 0D (13 bytes)  
Header: 00 00 01 0E 00 00 xx xx xx xx
Data:   21 01 00 (COMMACK = 0, accepted)

SECS-II 
COMMACK = B[1] = 0  // Communication accepted

Or with model info:
{L[2]
  COMMACK = B[1] = 0
  {L[2]
    MDLN = A[20] = "EQUIPMENT_MODEL_NAME"
    SOFTREV = A[20] = "SOFTWARE_VERSION_1.0"
  }
}

S1F1 - Are You There Request

Hex 
Length: 00 00 00 0A (10 bytes)
Header: 00 00 81 01 00 00 xx xx xx xx
Data:   (empty)

SECS-II 
<none> (no data)

S1F2 - Are You There Response

Hex 
Length: 00 00 00 0A (10 bytes)
Header: 00 00 01 02 00 00 xx xx xx xx
Data:   (empty)

SECS-II 
<none> (no data) or {L:0} (empty list)

S5F1 - Alarm Report Example

Hex 
Length: 00 00 00 1F (31 bytes)
Header: 00 00 05 01 00 00 xx xx xx xx
Data:   01 03 81 01 81 A1 01 01 41 0F Temperature Alarm

SECS-II 
{L[3]
  ALCD = B[1] = 129 (0x81) // Alarm Set + Alarm Type
  ALID = U1[1] = 1
  ALTX = A[15] = "Temperature Alarm"
}

S6F11 - Event Report Example

SECS-II 
{L[3]
  DATAID = U4[1] = 12345
  CEID = U2[1] = 1001
  {L:1
    {L[3]
      RPTID = U2[1] = 2001
      {L[2]
        Temperature = F4[1] = 25.5
        Pressure = F4[1] = 760.0
      }
    }
  }
}

Data Type Format Examples

ASCII Text:    A[10] = "TEST_VALUE"
                Hex: 41 0A 54 45 53 54 5F 56 41 4C 55 45

Binary Data:   B[4] = 0x12345678
                Hex: 21 04 12 34 56 78

Unsigned Int:  U1[1] = 255
                Hex: F1 01 FF

               U2[1] = 65535
                Hex: E1 02 FF FF

               U4[1] = 4294967295

## SECS Data Item Definitions

This section provides definitions for all standard SECS data items used in message formats.

### A

**ABS** - Absolute Position (F4, F8)
- Absolute position coordinate

**ACCESSMODE** - Access Mode (U1)
- 0: Read only
- 1: Read/Write
- 2: Write only

**ACDS** - Alarm Collection Definition Send (various)
- Alarm collection definition data

**ACKA** - Acknowledge (B[1])
- General acknowledge code

**ACKC10** - Terminal Acknowledge Code (B[1])
- 0: Acknowledged
- 1: Error

**ACKC13** - Data Set Acknowledge Code (B[1])
- 0: Acknowledged
- 1: Error
- 2: Data set already exists
- 3: No space available

**ACKC15** - Recipe Acknowledge Code (B[1])
- 0: Acknowledged
- 1: Error
- 2: Recipe already exists
- 3: No space available

**ACKC3** - Carrier Acknowledge Code (B[1])
- 0: Completed successfully
- 1: Command does not exist
- 2: Cannot perform now
- 3: At least one parameter invalid
- 4: Acknowledge after completion
- 5: Rejected, already in desired condition
- 6: No such object exists

**ACKC5** - Alarm Acknowledge Code (B[1])
- 0: Acknowledged
- 1: Error

**ACKC6** - Data Collection Acknowledge Code (B[1])
- 0: Acknowledged
- 1: Error

**ACKC7** - Process Program Acknowledge Code (B[1])
- 0: Accepted
- 1: Permission not granted
- 2: Length error
- 3: Matrix overflow
- 4: PPID not found
- 5: Mode unsupported
- 6: Communication not available
- 7: Busy

**ACKC7A** - Alternative Process Program Acknowledge Code (B[1])
- Same as ACKC7 with additional codes

**AGENT** - Agent Identifier (A)
- Software agent identification

**ALCD** - Alarm Code (B[1])
- Bit 0: Alarm Set (1) or Clear (0)
- Bit 7: Alarm (1) or Warning (0)

**ALED** - Alarm Enable/Disable (B[1])
- 128 (0x80): Enable
- 0: Disable

**ALID** - Alarm ID (U1, U2, U4, or A)
- Unique identifier for alarm

**ALIDVECTOR** - Alarm ID Vector (List of ALID)
- Collection of alarm identifiers

**ALTX** - Alarm Text (A[120])
- Descriptive text for alarm

### B-C

**ASSGNID** - Assignment ID (A)
- Unique assignment identifier

**ATTRDATA** - Attribute Data (various)
- Data value for object attribute

**ATTRID** - Attribute ID (U1, U2, U4, or A)
- Identifier for object attribute

**ATTRRELN** - Attribute Relation (U1)
- Relationship type between attributes

**AUTOCLEAR_DISABLE** - Auto Clear Disable (BOOLEAN)
- Disable automatic clearing

**AUTOCLOSE** - Auto Close (BOOLEAN)
- Automatic closing flag

**AUTOPOST_DISABLE** - Auto Post Disable (BOOLEAN)
- Disable automatic posting

**BCDS** - Binary Collection Definition Send (B)
- Binary collection definition data

**BCEQU** - Binary Collection Equipment (B)
- Equipment binary collection data

**BINLT** - Binary Data (B)
- Binary data content

**BLKDEF** - Block Definition (various)
- Definition of data block structure

**BPD** - Bytes Per Die (U2)
- Number of bytes per die

**BYTMAX** - Maximum Bytes (U4)
- Maximum byte count

**CAACK** - Carrier Action Acknowledge (B[1])
- 0: Completed successfully
- 1: Command does not exist
- 2: Cannot perform now
- 3: At least one parameter invalid

**CARRIERACTION** - Carrier Action (U1)
- 1: Load
- 2: Unload
- 3: Transfer
- 4: Map
- 5: Clamp
- 6: Unclamp

**CARRIERID** - Carrier ID (A)
- Unique identifier for carrier

**CARRIERSPEC** - Carrier Specification (various)
- Carrier specification data

**CATTRDATA** - Carrier Attribute Data (various)
- Data for carrier attribute

**CATTRID** - Carrier Attribute ID (U1, U2, U4, or A)
- Identifier for carrier attribute

**CCEACK** - Collection Event Change Acknowledge (B[1])
- Collection event change response

**CCODE** - Command Code (A)
- Command identifier string

**CEED** - Collection Event Enable/Disable (BOOLEAN)
- Enable or disable collection event

**CEID** - Collection Event ID (U1, U2, U4, or A)
- Unique identifier for collection event

**CEIDSTART** - Collection Event ID Start (CEID)
- Starting collection event ID

**CEIDSTOP** - Collection Event ID Stop (CEID)
- Stopping collection event ID

**CENAME** - Collection Event Name (A)
- Name of collection event

**CEPACK** - Collection Event Parameter Acknowledge (B[1])
- Collection event parameter response

**CEPVAL** - Collection Event Parameter Value (various)
- Value of collection event parameter

**CHKINFO** - Check Information (A)
- Information for checking/validation

**CKPNT** - Checkpoint (A)
- Process checkpoint identifier

**CMDA** - Command Acknowledge (B[1])
- Command acknowledgment

**CMDMAX** - Command Maximum (U2)
- Maximum command value

**CNAME** - Collection Name (A)
- Name of data collection

**COACK** - Control Job Command Acknowledge (B[1])
- Control job command response

**COLCT** - Collection Count (U2)
- Number of items in collection

**COLHDR** - Collection Header (various)
- Header information for collection

**COMMACK** - Communication Acknowledge (B[1])
- 0: Accepted
- 1: Denied, Try Again
- 2: Denied, Permission Not Granted

**COMPARISONOPERATOR** - Comparison Operator (U1)
- 0: Equal
- 1: Not equal
- 2: Less than
- 3: Less than or equal
- 4: Greater than
- 5: Greater than or equal

**CONDITION** - Condition (A)
- Condition specification

**COPYID** - Copy ID (A)
- Identifier for copy operation

**CPACK** - Command Parameter Acknowledge (various)
- Command parameter acknowledgment

**CPNAME** - Command Parameter Name (A)
- Name of command parameter

**CPVAL** - Command Parameter Value (various)
- Value of command parameter

### D-E

**CSAACK** - Carrier Slot Assignment Acknowledge (B[1])
- Carrier slot assignment response

**CTLJOBCMD** - Control Job Command (A)
- Control job command string

**CTLJOBID** - Control Job ID (A)
- Unique identifier for control job

**DATA** - Data (various)
- Generic data field

**DATAACK** - Data Acknowledge (B[1])
- Data acknowledgment

**DATAID** - Data ID (U1, U2, U4, or A)
- Unique identifier for data

**DATALENGTH** - Data Length (U1, U2, U4)
- Length of data in bytes

**DATASEG** - Data Segment (B)
- Segment of larger data

**DATASRC** - Data Source (A)
- Source of data

**DATLC** - Data Location (A)
- Location of data

**DELRSPSTAT** - Delete Response Status (B[1])
- Status of delete operation

**DIRRSPSTAT** - Directory Response Status (B[1])
- Status of directory operation

**DRACK** - Define Report Acknowledge (B[1])
- 0: Acknowledged
- 1: Denied, Insufficient space
- 2: Denied, Invalid format
- 3: Denied, At least one RPTID already defined
- 4: Denied, At least one VID does not exist

**DRRACK** - Define Report Request Acknowledge (B[1])
- Define report request response

**DSID** - Data Set ID (U1, U2, U4, or A)
- Unique identifier for data set

**DSNAME** - Data Set Name (A)
- Name of data set

**DSPER** - Data Sample Period (U1, U2, U4)
- Sampling period for data collection

**DUTMS** - Device Under Test Milliseconds (U4)
- Time in milliseconds for device test

**DVNAME** - Discrete Variable Name (A)
- Name of discrete variable

**DVVAL** - Discrete Variable Value (various)
- Value of discrete variable

**DVVALNAME** - Discrete Variable Value Name (A)
- Name for discrete variable value

**EAC** - Equipment Acknowledge Code (B[1])
- 0: Accepted
- 1: Denied, At least one constant does not exist
- 2: Denied, Busy
- 3: Denied, At least one constant out of range

**ECDEF** - Equipment Constant Default (various)
- Default value for equipment constant

**ECID** - Equipment Constant ID (U1, U2, U4, or A)
- Unique identifier for equipment constant

**ECMAX** - Equipment Constant Maximum (various)
- Maximum value for equipment constant

**ECMIN** - Equipment Constant Minimum (various)
- Minimum value for equipment constant

**ECNAME** - Equipment Constant Name (A)
- Name of equipment constant

**ECV** - Equipment Constant Value (various)
- Value of equipment constant

**EDID** - Equipment ID (U1, U2, U4, or A)
- Unique identifier for equipment

**EMID** - Equipment Module ID (A)
- Identifier for equipment module

**EPD** - Equipment Parameter Data (various)
- Equipment parameter information

**EQID** - Equipment ID (A)
- Equipment identifier

**EQNAME** - Equipment Name (A)
- Name of equipment

**EQUSERID** - Equipment User ID (A)
- User identifier for equipment access

**ERACK** - Enable/Disable Event Report Acknowledge (B[1])
- 0: Acknowledged
- 1: Denied, At least one CEID does not exist
- 2: Denied, Busy

**ERRCODE** - Error Code (U2)
- Numeric error code

**ERRTEXT** - Error Text (A)
- Descriptive error text

**ERRW7** - Error W7 (B[1])
- W7-specific error code

**EVNTSRC** - Event Source (A)
- Source of event

**EVNTSRC2** - Event Source 2 (A)
- Secondary event source

**EXID** - Exception ID (U4)
- Exception identifier

**EXMESSAGE** - Exception Message (A)
- Exception message text

**EXRECVRA** - Exception Recovery Action (A)
- Recovery action for exception

**EXTYPE** - Exception Type (U1)
- Type of exception

### F-L

**FCNID** - Function ID (B[1])
- SECS function identifier

**FFROT** - Flat Finder Rotation (F4)
- Rotation angle for flat finder

**FILDAT** - File Data (B)
- File content data

**FNLOC** - Final Location (A)
- Final destination location

**FRMLEN** - Frame Length (U2)
- Length of data frame

**GETRSPSTAT** - Get Response Status (B[1])
- Status of get operation

**GOILACK** - Go Online Acknowledge (B[1])
- Go online response

**GRANT** - Grant Code (B[1])
- 0: Granted
- 1: Busy, try again
- 2: No space

**GRANT6** - Grant Code 6 (B[1])
- Stream 6 specific grant code

**GRNT1** - Grant 1 (B[1])
- First grant code

**GRXLACK** - Get Recipe Acknowledge (B[1])
- Recipe get acknowledgment

**HANDLE** - Handle (A)
- Object handle identifier

**HCACK** - Host Command Acknowledge (B[1])
- 0: Acknowledged
- 1: Invalid command
- 2: Cannot perform now
- 3: At least one parameter invalid
- 4: Acknowledge after completion
- 5: Rejected, already in desired condition
- 6: No such object exists

**HOACK** - Host Online Acknowledge (B[1])
- Host online acknowledgment

**HOCANCELACK** - Host Online Cancel Acknowledge (B[1])
- Host online cancel response

**HOCMDNAME** - Host Online Command Name (A)
- Name of host online command

**HOHALTACK** - Host Online Halt Acknowledge (B[1])
- Host online halt response

**IACDS** - Input Alarm Collection Definition Send (various)
- Input alarm collection definition

**IBCDS** - Input Binary Collection Definition Send (B)
- Input binary collection definition

**IDTYP** - ID Type (B[1])
- 0: Data ID
- 1: Equipment ID

**INPTN** - Input Pattern (A)
- Input pattern specification

**ITEMACK** - Item Acknowledge (B[1])
- Item operation acknowledgment

**ITEMERROR** - Item Error (A)
- Error information for item

**ITEMID** - Item ID (A)
- Unique identifier for item

**ITEMINDEX** - Item Index (U4)
- Index position of item

**ITEMLENGTH** - Item Length (U4)
- Length of item data

**ITEMPART** - Item Part (various)
- Part of larger item

**ITEMPARTCOUNT** - Item Part Count (U4)
- Number of parts in item

**ITEMPARTLENGTH** - Item Part Length (U4)
- Length of item part

**ITEMTYPE** - Item Type (U1)
- Type classification of item

**ITEMTYPESUPPORT** - Item Type Support (B[1])
- Support indicator for item type

**ITEMVERSION** - Item Version (A)
- Version of item

**JOBACTION** - Job Action (U1)
- Action to perform on job

**LENGTH** - Length (U1, U2, U4)
- Generic length value

**LIMITACK** - Limit Acknowledge (B[1])
- Limit operation acknowledgment

**LIMITID** - Limit ID (A)
- Identifier for limit

**LIMITMAX** - Limit Maximum (various)
- Maximum limit value

**LIMITMIN** - Limit Minimum (various)
- Minimum limit value

**LINKID** - Link ID (A)
- Identifier for link

**LOC** - Location (A)
- General location identifier

**LOCID** - Location ID (A)
- Specific location identifier

**LOWERDB** - Lower Deadband (various)
- Lower deadband value

**LRACK** - Link Report Acknowledge (B[1])
- 0: Acknowledged
- 1: Denied, Insufficient space
- 2: Denied, Invalid format
- 3: Denied, At least one CEID already defined
- 4: Denied, At least one CEID does not exist
- 5: Denied, At least one RPTID does not exist

**LVACK** - Limit Value Acknowledge (B[1])
- Limit value acknowledgment

### M-P

**MAPER** - Map Error (U1)
- Map operation error code

**MAPFT** - Map Format (U1)
- Format of map data

**MAXNUMBER** - Maximum Number (U4)
- Maximum numeric value

**MAXTIME** - Maximum Time (U4)
- Maximum time value

**MCINDEX** - Multi-Collection Index (U2)
- Index for multi-collection

**MDACK** - Mode Data Acknowledge (B[1])
- Mode data acknowledgment

**MDLN** - Model Number (A[20])
- Equipment model designation

**MEXP** - Message Expected (B[1])
- Expected message indicator

**MF** - Message Format (U1)
- Format of message

**MHEAD** - Message Header (B[10])
- Complete 10-byte SECS message header

**MID** - Message ID (U1, U2, U4, or A)
- Message identifier

**MIDAC** - Message ID Acknowledge (B[1])
- Message ID acknowledgment

**MIDRA** - Message ID Response Acknowledge (B[1])
- Message ID response acknowledgment

**MLCL** - Multi-Level Collection List (various)
- Multi-level collection data

**MMODE** - Machine Mode (U1)
- Current machine operating mode

**NACDS** - New Alarm Collection Definition Send (various)
- New alarm collection definition

**NBCDS** - New Binary Collection Definition Send (B)
- New binary collection definition

**NULBC** - Null Byte Count (U1)
- Count of null bytes

**OBJACK** - Object Acknowledge (B[1])
- Object operation acknowledgment

**OBJCMD** - Object Command (A)
- Command for object

**OBJID** - Object ID (A)
- Unique identifier for object

**OBJSPEC** - Object Specification (A)
- Object specification string

**OBJTOKEN** - Object Token (A)
- Token for object access

**OBJTYPE** - Object Type (A)
- Type classification of object

**OCEACK** - Object Collection Event Acknowledge (B[1])
- Object collection event response

**OFLACK** - Offline Acknowledge (B[1])
- 0: Offline Accepted
- 1: Offline Not Allowed

**ONLACK** - Online Acknowledge (B[1])
- 0: Online Accepted
- 1: Online Not Allowed

**OPEID** - Operation Event ID (A)
- Identifier for operation event

**OPETYPE** - Operation Event Type (U1)
- Type of operation event

**OPID** - Operation ID (A)
- Unique operation identifier

**ORLOC** - Origin Location (A)
- Origin location identifier

**OUTPTN** - Output Pattern (A)
- Output pattern specification

**PARAMNAME** - Parameter Name (A)
- Name of parameter

**PARAMVAL** - Parameter Value (various)
- Value of parameter

**PDEATTRIBUTE** - Process Data Element Attribute (various)
- Process data element attribute

**PDEATTRIBUTENAME** - Process Data Element Attribute Name (A)
- Name of process data element attribute

**PDEATTRIBUTEVALUE** - Process Data Element Attribute Value (various)
- Value of process data element attribute

**PDEREF** - Process Data Element Reference (A)
- Reference to process data element

**PECEACK** - Process Event Collection Enable Acknowledge (B[1])
- Process event collection enable response

**PECRSLT** - Process Event Collection Result (various)
- Result of process event collection

**PFCD** - Process Function Code (U1)
- Function code for process

**PGRPACTION** - Port Group Action (U1)
- Action for port group

**PODID** - Point of Delivery ID (A)
- Identifier for delivery point

**PORTACTION** - Port Action (U1)
- Action for port

**PORTGRPNAME** - Port Group Name (A)
- Name of port group

**PPARM** - Process Parameter (various)
- Process parameter value

**PPBODY** - Process Program Body (A or B)
- Content of process program

**PPGNT** - Process Program Grant (B[1])
- Process program grant response

**PPID** - Process Program ID (A)
- Unique identifier for process program

**PRAXI** - Process Axis (A)
- Process axis identifier

**PRCMDNAME** - Process Command Name (A)
- Name of process command

**PRCPREEXECHK** - Process Pre-Execution Check (B[1])
- Pre-execution check flag

**PRDCT** - Product (A)
- Product identifier

**PREACK** - Process Recipe Acknowledge (B[1])
- Process recipe acknowledgment

**PREVENTID** - Process Event ID (A)
- Process event identifier

**PRJOBID** - Process Job ID (A)
- Process job identifier

**PRJOBMILESTONE** - Process Job Milestone (A)
- Process job milestone

**PRJOBSPACE** - Process Job Space (A)
- Process job space allocation

**PRMTRLORDER** - Process Material Order (U2)
- Order of process material

**PRPAUSEEVENTID** - Process Pause Event ID (A)
- Event ID for process pause

**PRPROCESSSTART** - Process Process Start (A)
- Process start identifier

**PRRECIPEMETHOD** - Process Recipe Method (A)
- Process recipe method

**PRSTATE** - Process State (U1)
- Current state of process

**PSRACK** - Process Start Request Acknowledge (B[1])
- Process start request response

**PSREACK** - Process State Request Acknowledge (B[1])
- Process state request response

**PTN** - Port Number (U1)
- Port identification number

### Q-Z

**QPRKEACK** - Query Process Recipe Key Acknowledge (B[1])
- Query process recipe key response

**QREACK** - Query Recipe Acknowledge (B[1])
- Query recipe response

**QRXLEACK** - Query Recipe Exclude Acknowledge (B[1])
- Query recipe exclude response

**QUA** - Quality (U1)
- Quality indicator

**RAC** - Report Acknowledge (B[1])
- Report acknowledgment

**RCMD** - Remote Command (A)
- Remote command string

**RCPATTRDATA** - Recipe Attribute Data (various)
- Recipe attribute data

**RCPATTRID** - Recipe Attribute ID (A)
- Recipe attribute identifier

**RCPBODY** - Recipe Body (A or B)
- Recipe content

**RCPBODYA** - Recipe Body A (A)
- Recipe body in ASCII format

**RCPCLASS** - Recipe Class (A)
- Classification of recipe

**RCPCMD** - Recipe Command (A)
- Recipe command

**RCPDEL** - Recipe Delete (A)
- Recipe deletion identifier

**RCPDESCLTH** - Recipe Description Length (U2)
- Length of recipe description

**RCPDESCNM** - Recipe Description Name (A)
- Recipe description name

**RCPDESCTIME** - Recipe Description Time (A)
- Recipe description timestamp

**RCPID** - Recipe ID (A)
- Unique recipe identifier

**RCPNAME** - Recipe Name (A)
- Name of recipe

**RCPNEWID** - Recipe New ID (A)
- New recipe identifier

**RCPOWCODE** - Recipe Owner Code (A)
- Recipe ownership code

**RCPPARNM** - Recipe Parameter Name (A)
- Name of recipe parameter

**RCPPARRULE** - Recipe Parameter Rule (A)
- Rule for recipe parameter

**RCPPARVAL** - Recipe Parameter Value (various)
- Value of recipe parameter

**RCPRENAME** - Recipe Rename (A)
- New name for recipe

**RCPSECCODE** - Recipe Security Code (A)
- Security code for recipe

**RCPSECNM** - Recipe Section Name (A)
- Name of recipe section

**RCPSPEC** - Recipe Specification (A)
- Recipe specification

**RCPSTAT** - Recipe Status (U1)
- Status of recipe

**RCPUPDT** - Recipe Update (A)
- Recipe update identifier

**RCPVERS** - Recipe Version (A)
- Version of recipe

**READLN** - Read Length (U4)
- Length to read

**REAPER** - Report Error (U1)
- Report error code

**RECLEN** - Record Length (U2)
- Length of record

**REFP** - Reference Point (F4, F8)
- Reference coordinate point

**REPGSZ** - Report Group Size (U2)
- Size of report group

**RESOLUTION** - Resolution (F4)
- Measurement resolution

**RESPDESTAT** - Response Delete Status (B[1])
- Status of response deletion

**RESPEC** - Request Specification (A)
- Request specification string

**RETAINRECIPE_DISABLE** - Retain Recipe Disable (BOOLEAN)
- Disable recipe retention

**RETICLEID** - Reticle ID (A)
- Reticle identifier

**RETICLEID2** - Reticle ID 2 (A)
- Secondary reticle identifier

**RETPLACEINSTR** - Reticle Place Instruction (A)
- Instruction for reticle placement

**RETREMOVEINSTR** - Reticle Remove Instruction (A)
- Instruction for reticle removal

**REVID** - Revision ID (A)
- Revision identifier

**RIC** - Report Item Count (U2)
- Count of items in report

**RMACK** - Resource Manager Acknowledge (B[1])
- Resource manager acknowledgment

**RMCHGSTAT** - Resource Manager Change Status (B[1])
- Resource manager change status

**RMCHGTYPE** - Resource Manager Change Type (U1)
- Type of resource manager change

**RMDATASIZE** - Resource Manager Data Size (U4)
- Size of resource manager data

**RMGRNT** - Resource Manager Grant (B[1])
- Resource manager grant

**RMNEWNS** - Resource Manager New Namespace (A)
- New namespace for resource manager

**RMNSCMD** - Resource Manager Namespace Command (A)
- Resource manager namespace command

**RMNSSPEC** - Resource Manager Namespace Specification (A)
- Resource manager namespace specification

**RMRECSPEC** - Resource Manager Record Specification (A)
- Resource manager record specification

**RMREQUESTOR** - Resource Manager Requestor (A)
- Resource manager requestor identifier

**RMSEGSPEC** - Resource Manager Segment Specification (A)
- Resource manager segment specification

**RMSPACE** - Resource Manager Space (A)
- Resource manager space identifier

**RMSPWD** - Resource Manager Space Password (A)
- Password for resource manager space

**RMSUSERID** - Resource Manager Space User ID (A)
- User ID for resource manager space

**ROWCT** - Row Count (U2)
- Number of rows

**RPMACK** - Report Parameter Acknowledge (B[1])
- Report parameter acknowledgment

**RPSEL** - Report Selection (U1)
- Report selection criteria

**RPTID** - Report ID (U1, U2, U4, or A)
- Unique identifier for report

**RPTOC** - Report Occurrence (U2)
- Report occurrence count

**RQCMD** - Request Command (A)
- Request command string

**RRACK** - Recipe Request Acknowledge (B[1])
- Recipe request acknowledgment

**RRACK_S20** - Recipe Request Acknowledge S20 (B[1])
- S20 specific recipe request acknowledgment

**RSACK** - Recipe Send Acknowledge (B[1])
- Recipe send acknowledgment

**RSDA** - Recipe Send Data A (A)
- Recipe send data in ASCII

**RSDC** - Recipe Send Data C (various)
- Recipe send data compressed

**RSINF** - Recipe Send Information (A)
- Recipe send information

**RSPACK** - Reset Spool Acknowledge (B[1])
- Reset spool acknowledgment

**RTSRSPSTAT** - Real Time Status Response Status (B[1])
- Real time status response

**RTYPE** - Report Type (U1)
- Type of report

**RecID** - Record ID (A)
- Record identifier

**SDACK** - Send Data Acknowledge (B[1])
- Send data acknowledgment

**SDBIN** - Send Data Binary (B)
- Binary data to send

**SENDRSPSTAT** - Send Response Status (B[1])
- Status of send response

**SEQNUM** - Sequence Number (U4)
- Sequence number

**SFCD** - Stream Function Code (U2)
- SECS stream and function code

**SHEAD** - Stream Header (B[4])
- Stream header information

**SLOTID** - Slot ID (U1, U2)
- Slot identifier

**SMPLN** - Sample Number (U1, U2, U4)
- Sample identification number

**SOFTREV** - Software Revision (A[20])
- Software revision string

**SPAACK** - Substrate Position Acknowledge (B[1])
- Substrate position acknowledgment

**SPD** - Substrate Position Data (various)
- Substrate position information

**SPID** - Substrate Position ID (A)
- Substrate position identifier

**SPNAME** - Substrate Position Name (A)
- Name of substrate position

**SPR** - Substrate Position Reference (A)
- Reference for substrate position

**SPVAL** - Substrate Position Value (various)
- Value of substrate position

**SSAACK** - Substrate Status Acknowledge (B[1])
- Substrate status acknowledgment

**SSACK** - Substrate Send Acknowledge (B[1])
- Substrate send acknowledgment

**SSCMD** - Substrate Send Command (A)
- Substrate send command

**STATUS** - Status (U1)
- General status indicator

**STATUSTXT** - Status Text (A)
- Status description text

**STIME** - Start Time (A)
- Start time stamp

**STRACK** - Substrate Track (A)
- Substrate tracking identifier

**STRID** - Stream ID (B[1])
- SECS stream identifier

**STRP** - Map Strip Data (various)
- Wafer map strip data

**SV** - Status Variable (various)
- Status variable value

**SV0** - Status Variable 0 (various)
- First status variable

**SVCACK** - Service Acknowledge (B[1])
- Service acknowledgment

**SVCNAME** - Service Name (A)
- Name of service

**SVID** - Status Variable ID (U1, U2, U4, or A)
- Status variable identifier

**SVNAME** - Status Variable Name (A)
- Name of status variable

**TARGETID** - Target ID (A)
- Target identifier

**TARGETPDE** - Target Process Data Element (A)
- Target process data element

**TARGETSPEC** - Target Specification (A)
- Target specification

**TBLACK** - Table Acknowledge (B[1])
- Table operation acknowledgment

**TBLCMD** - Table Command (A)
- Table command

**TBLELT** - Table Element (various)
- Table element data

**TBLID** - Table ID (A)
- Table identifier

**TBLTYP** - Table Type (U1)
- Type of table

**TCID** - Transaction Control ID (A)
- Transaction control identifier

**TEXT** - Text (A)
- Text data

**TIAACK** - Trace Initialize Acknowledge (B[1])
- 0: Acknowledged
- 1: Denied, Insufficient space
- 2: Denied, Invalid format
- 3: Denied, At least one SVID does not exist
- 4: Denied, Busy

**TIACK** - Time Acknowledge (B[1])
- 0: Acknowledged
- 1: Error

**TID** - Terminal ID (B[1])
- Terminal identifier

**TIME** - Time (A[16])
- Time stamp in format "YYMMDDhhmmss[cc]"

**TIMESTAMP** - Time Stamp (A)
- General timestamp

**TOTSMP** - Total Samples (U1, U2, U4)
- Total number of samples

**TRACK** - Track (A)
- Track identifier

**TRANSFERSIZE** - Transfer Size (U4)
- Size of data transfer

**TRATOMCID** - Transaction Atomic ID (A)
- Atomic transaction identifier

**TRAUTOD** - Transaction Auto Delete (BOOLEAN)
- Auto delete transaction flag

**TRAUTOSTART** - Transaction Auto Start (BOOLEAN)
- Auto start transaction flag

**TRCMDNAME** - Transaction Command Name (A)
- Name of transaction command

**TRDIR** - Transfer Direction (U1)
- Direction of transfer

**TRID** - Trace Request ID (U1, U2, U4, or A)
- Trace request identifier

**TRJOBID** - Transaction Job ID (A)
- Transaction job identifier

**TRJOBMS** - Transaction Job Milestone (A)
- Transaction job milestone

**TRJOBNAME** - Transaction Job Name (A)
- Name of transaction job

**TRLINK** - Transaction Link (A)
- Transaction link identifier

**TRLOCATION** - Transaction Location (A)
- Transaction location

**TROBJNAME** - Transaction Object Name (A)
- Name of transaction object

**TROBJTYPE** - Transaction Object Type (A)
- Type of transaction object

**TRPORT** - Transfer Port (U1)
- Transfer port number

**TRPTNR** - Transfer Partner (A)
- Transfer partner identifier

**TRPTPORT** - Transfer Point Port (U1)
- Transfer point port

**TRRCP** - Transaction Recipe (A)
- Transaction recipe

**TRROLE** - Transaction Role (A)
- Role in transaction

**TRTYPE** - Transfer Type (U1)
- Type of transfer

**TSIP** - Time Stamp Input (A)
- Input timestamp

**TSOP** - Time Stamp Output (A)
- Output timestamp

**TTC** - Total Transfer Count (U4)
- Total count of transfers

**TYPEID** - Type ID (A)
- Type identifier

**UID** - User ID (A)
- User identifier

**UNFLEN** - Unformatted Length (U4)
- Length of unformatted data

**UNITS** - Units (A)
- Measurement units

**UPPERDB** - Upper Deadband (various)
- Upper deadband value

**V** - Variable Value (various)
- Generic variable value

**VERID** - Version ID (A)
- Version identifier

**VERIFYDEPTH** - Verify Depth (U1)
- Depth of verification

**VERIFYRSPSTAT** - Verify Response Status (B[1])
- Verification response status

**VERIFYSUCCESS** - Verify Success (BOOLEAN)
- Verification success flag

**VERIFYTYPE** - Verify Type (U1)
- Type of verification

**VID** - Variable ID (U1, U2, U4, or A)
- Variable identifier

**VLAACK** - Variable Limit Attribute Acknowledge (B[1])
- Variable limit attribute acknowledgment

**WRACK** - Write Acknowledge (B[1])
- Write operation acknowledgment

**XDIES** - X Dies (U2)
- Number of dies in X direction

**XYPOS** - XY Position (F4, F8)
- X,Y coordinate position

**YDIES** - Y Dies (U2)
- Number of dies in Y direction
                Hex: D1 04 FF FF FF FF

Signed Int:    I1[1] = -128
                Hex: 81 01 80

               I2[1] = -32768
                Hex: 71 01 80 00

Float:         F4[1] = 3.14159
                Hex: B1 04 40 49 0F D0

List:          {L[2] item1 item2}
                Hex: 01 02 ... ...

Empty List:    {L:0}
                Hex: 01 00

Implementation Guidelines

1. Message Validation

  • Verify message length consistency
  • Validate stream/function combinations
  • Check wait bit appropriateness
  • Ensure proper system bytes uniqueness

2. Response Handling

  • Always respond to messages with wait bit set
  • Use same system bytes in response
  • Implement proper timeout handling
  • Handle transaction aborts gracefully

3. State Management

  • Track connection state (Not Connected, Selected, Online)
  • Implement proper state transitions
  • Handle communication establishment sequence
  • Manage heartbeat and linktest mechanisms

4. Error Handling

  • Implement S9 error messages for invalid requests
  • Use proper reject codes
  • Log communication errors appropriately
  • Provide meaningful error descriptions

5. Data Encoding

  • Use appropriate SECS-II data types
  • Handle endianness correctly
  • Validate data item structure
  • Support multi-byte length fields when needed

References

  • SEMI E5 Specification
  • SEMI E37 HSMS Generic Services
  • SEMI E30 GEM (Generic Equipment Model)