Collection Events
1. Overview
Collection Events (CE) are notifications sent by the equipment to the host when significant events occur. Each event can have associated reports containing relevant data variables. Collection Events form the foundation of GEM's data collection capability, enabling real-time monitoring and factory automation.
1.1 Key Concepts
| Term |
Description |
| CEID |
Collection Event ID - Unique identifier for each event |
| RPTID |
Report ID - Defines which variables are collected |
| VID |
Variable ID - Individual data variable (SV, EC, or DV) |
| DATAID |
Data ID - Transaction identifier for the S6F11 message |
1.2 Event Reporting Architecture
flowchart LR
subgraph Equipment
CE[Collection Event] --> RPT[Report]
RPT --> VID1[Variable 1]
RPT --> VID2[Variable 2]
RPT --> VID3[Variable 3]
end
CE -->|S6F11| Host
2. Collection Event Definitions
2.1 System Events (CEID 1-99)
| CEID |
Event Name |
Description |
Trigger Condition |
| 1 |
EquipmentOffline |
Equipment transitioned to OFFLINE |
Control state = OFFLINE |
| 2 |
EquipmentOnlineLocal |
Equipment transitioned to ONLINE-LOCAL |
Control state = ONLINE-LOCAL |
| 3 |
EquipmentOnlineRemote |
Equipment transitioned to ONLINE-REMOTE |
Control state = ONLINE-REMOTE |
| 4 |
ControlStateChange |
Control state changed |
Any control state transition |
| 5 |
CommunicationEstablished |
SECS-II communication established |
S1F13/S1F14 accepted |
| 6 |
CommunicationLost |
Host communication lost |
HSMS disconnect or T3 timeout |
| 7 |
SpoolingActivated |
Spooling started |
Comm lost & spool enabled |
| 8 |
SpoolingDeactivated |
Spooling stopped |
Comm restored & spool transmitted |
| 9 |
SpoolingFull |
Spool buffer full |
Spool capacity exceeded |
| 10 |
HeartbeatFail |
Heartbeat failure detected |
S1F1 no response |
2.2 Operator Events (CEID 20-49)
| CEID |
Event Name |
Description |
Trigger Condition |
| 20 |
OperatorLogin |
Operator logged in |
Successful authentication |
| 21 |
OperatorLogout |
Operator logged out |
Logout or session timeout |
| 22 |
OperatorCommandIssued |
Operator issued command |
Manual command input |
| 23 |
OperatorRecipeSelect |
Operator selected recipe |
Recipe selection via HMI |
| 24 |
OperatorModeChange |
Operator changed equipment mode |
Mode switch (AUTO/MANUAL) |
| 25 |
OperatorAlarmAck |
Operator acknowledged alarm |
Alarm acknowledgment |
| 26 |
OperatorParameterChange |
Operator changed parameter |
EC modification via HMI |
| 27 |
OperatorMaintenanceStart |
Maintenance mode entered |
Maintenance key ON |
| 28 |
OperatorMaintenanceEnd |
Maintenance mode exited |
Maintenance key OFF |
2.3 Process Events (CEID 100-199)
| CEID |
Event Name |
Description |
Trigger Condition |
| 100 |
ProcessStateChange |
Process state changed |
Any process state transition |
| 101 |
ProcessStarted |
Process execution started |
Process begins |
| 102 |
ProcessCompleted |
Process completed successfully |
Process ends normally |
| 103 |
ProcessAborted |
Process aborted |
Process terminated abnormally |
| 104 |
ProcessPaused |
Process paused |
Process hold condition |
| 105 |
ProcessResumed |
Process resumed |
Process restart |
| 106 |
ProcessStepChange |
Process step changed |
Recipe step transition |
| 107 |
ProcessStepCompleted |
Process step completed |
Recipe step ends |
| 108 |
WaitingForOperator |
Waiting for operator input |
Operator intervention required |
| 109 |
WaitingForMaterial |
Waiting for material |
Material not present |
| 110 |
ProcessIdleEntered |
Entered IDLE state |
Process ready, no job |
| 111 |
ProcessSetupEntered |
Entered SETUP state |
Preparing for process |
| 112 |
ProcessExecutingEntered |
Entered EXECUTING state |
Active processing |
| 115 |
ProcessCycleStart |
Process cycle started |
Cycle begins |
| 116 |
ProcessCycleEnd |
Process cycle completed |
Cycle ends |
| 117 |
RecipeStepStart |
Recipe step started |
Step execution begins |
| 118 |
RecipeStepEnd |
Recipe step ended |
Step execution ends |
2.4 Material/Carrier Events (CEID 200-299)
| CEID |
Event Name |
Description |
Trigger Condition |
| 200 |
MaterialReceived |
Material arrived at equipment |
Material detected at load port |
| 201 |
MaterialRemoved |
Material removed from equipment |
Material removed from load port |
| 202 |
SlotMapRead |
Slot map reading completed |
Mapping sequence complete |
| 203 |
SlotMapReadFailed |
Slot map reading failed |
Mapping error |
| 204 |
CarrierClamped |
Carrier clamped |
Clamp sensor ON |
| 205 |
CarrierUnclamped |
Carrier unclamped |
Clamp sensor OFF |
| 206 |
CarrierDocked |
Carrier docked |
Dock sensor ON |
| 207 |
CarrierUndocked |
Carrier undocked |
Dock sensor OFF |
| 208 |
CarrierIDRead |
Carrier ID read |
Barcode/RFID read success |
| 209 |
CarrierIDReadFailed |
Carrier ID read failed |
Barcode/RFID read error |
| 210 |
CarrierAccessModeChange |
Access mode changed |
Manual/Auto switch |
| 220 |
SubstrateLocationChange |
Substrate location changed |
Substrate moved |
| 221 |
SubstrateProcessStart |
Substrate process started |
Individual substrate begins |
| 222 |
SubstrateProcessEnd |
Substrate process ended |
Individual substrate ends |
| 223 |
SubstrateIDRead |
Substrate ID read |
Substrate ID verification |
| 224 |
SubstrateIDMismatch |
Substrate ID mismatch |
ID verification failed |
2.5 Alarm Events (CEID 300-399)
| CEID |
Event Name |
Description |
Trigger Condition |
| 300 |
AlarmSet |
Alarm condition detected |
Any alarm activated |
| 301 |
AlarmCleared |
Alarm condition cleared |
Any alarm deactivated |
| 302 |
AlarmAcknowledged |
Alarm acknowledged |
Operator/Host ack |
| 303 |
PersonalSafetyAlarm |
Personal safety alarm set |
Category 1 alarm |
| 304 |
EquipmentSafetyAlarm |
Equipment safety alarm set |
Category 2 alarm |
| 305 |
IrrecoverableError |
Irrecoverable error |
Category 5 alarm |
| 306 |
WarningAlarm |
Warning condition |
Category 6 alarm |
2.6 Recipe Events (CEID 400-499)
| CEID |
Event Name |
Description |
Trigger Condition |
| 400 |
RecipeSelected |
Recipe selected for processing |
Recipe activated |
| 401 |
RecipeStarted |
Recipe execution started |
Recipe begins |
| 402 |
RecipeCompleted |
Recipe execution completed |
Recipe ends normally |
| 403 |
RecipeAborted |
Recipe execution aborted |
Recipe terminated |
| 404 |
RecipeUploaded |
Recipe uploaded to host |
S7F26 complete |
| 405 |
RecipeDownloaded |
Recipe downloaded from host |
S7F3 complete |
| 406 |
RecipeDeleted |
Recipe deleted |
S7F17 complete |
| 407 |
RecipeCreated |
New recipe created |
Recipe saved |
| 408 |
RecipeModified |
Recipe modified |
Recipe edited |
| 409 |
RecipeVerified |
Recipe verification complete |
Checksum verified |
| 410 |
RecipeVerificationFailed |
Recipe verification failed |
Checksum mismatch |
2.7 Job Events (CEID 500-599)
| CEID |
Event Name |
Description |
Trigger Condition |
| 500 |
ProcessJobCreated |
Process job created |
PRJob received |
| 501 |
ProcessJobQueued |
Process job queued |
PRJob accepted |
| 502 |
ProcessJobStarted |
Process job started |
PRJob execution begins |
| 503 |
ProcessJobCompleted |
Process job completed |
PRJob ends normally |
| 504 |
ProcessJobAborted |
Process job aborted |
PRJob terminated |
| 505 |
ProcessJobPaused |
Process job paused |
PRJob hold |
| 506 |
ProcessJobResumed |
Process job resumed |
PRJob restart |
| 507 |
ProcessJobStateChange |
Process job state changed |
Any state transition |
| 510 |
ControlJobCreated |
Control job created |
CJob received |
| 511 |
ControlJobQueued |
Control job queued |
CJob accepted |
| 512 |
ControlJobStarted |
Control job started |
CJob execution begins |
| 513 |
ControlJobCompleted |
Control job completed |
CJob ends normally |
| 514 |
ControlJobAborted |
Control job aborted |
CJob terminated |
| 515 |
ControlJobStateChange |
Control job state changed |
Any state transition |
2.8 Equipment Status Events (CEID 600-699)
| CEID |
Event Name |
Description |
Trigger Condition |
| 600 |
EquipmentConstantChange |
Equipment constant changed |
EC value modified |
| 601 |
ClockSync |
Clock synchronized |
Time update complete |
| 602 |
SoftwareVersionChange |
Software version changed |
Software update |
| 603 |
ConfigurationChange |
Configuration changed |
Config file modified |
| 604 |
InitializationComplete |
Equipment initialization complete |
Boot sequence done |
| 605 |
ShutdownInitiated |
Equipment shutdown initiated |
Shutdown command |
| 610 |
LoadPortStateChange |
Load port state changed |
LP status change |
| 611 |
RobotStatusChange |
Robot status changed |
Robot state change |
| 612 |
ChamberStatusChange |
Chamber status changed |
Chamber state change |
| 613 |
TemperatureChange |
Temperature limit reached |
Temp threshold |
| 614 |
PressureChange |
Pressure limit reached |
Pressure threshold |
| 615 |
UtilityStatusChange |
Utility status changed |
Utility alarm |
3. Report Definitions
3.1 System Reports (RPTID 1-9)
| RPTID |
Report Name |
Variables (VIDs) |
| 1 |
RPT_SystemState |
Clock, ControlState, ProcessState, PreviousControlState |
| 2 |
RPT_ControlState |
Clock, ControlState, PreviousControlState |
| 3 |
RPT_CommState |
Clock, CommunicationState, ConnectedTime |
| 4 |
RPT_SpoolState |
Clock, SpoolState, SpoolCount, SpoolFullFlag |
| 5 |
RPT_EquipmentStatus |
Clock, ControlState, ProcessState, AlarmCount |
3.2 Operator Reports (RPTID 10-19)
| RPTID |
Report Name |
Variables (VIDs) |
| 10 |
RPT_Operator |
Clock, OperatorID, OperatorLevel |
| 11 |
RPT_OperatorCmd |
Clock, OperatorID, CommandID, CommandParam |
| 12 |
RPT_OperatorRecipe |
Clock, OperatorID, RecipeID, RecipeVersion |
| 13 |
RPT_OperatorMaint |
Clock, OperatorID, MaintenanceCode |
3.3 Process Reports (RPTID 20-39)
| RPTID |
Report Name |
Variables (VIDs) |
| 20 |
RPT_ProcessState |
Clock, ProcessState, PreviousProcessState |
| 21 |
RPT_ProcessStart |
Clock, ProcessJobID, RecipeID, LotID, StartSubstrateCount |
| 22 |
RPT_ProcessEnd |
Clock, ProcessJobID, RecipeID, LotID, ProcessTime, ProcessResult, ProcessedCount, GoodCount, BadCount |
| 23 |
RPT_ProcessStep |
Clock, ProcessJobID, StepNumber, StepName, StepTime |
| 24 |
RPT_ProcessCycle |
Clock, CycleNumber, CycleTime, CycleResult |
| 25 |
RPT_ProcessParam |
Clock, ProcessTemp, ProcessPressure, ProcessPower, ProcessTime |
3.4 Material Reports (RPTID 40-59)
| RPTID |
Report Name |
Variables (VIDs) |
| 40 |
RPT_Material |
Clock, CarrierID, LotID, PortID, MaterialStatus |
| 41 |
RPT_SlotMap |
Clock, CarrierID, PortID, SlotMap, SlotCount, SubstrateCount |
| 42 |
RPT_Carrier |
Clock, CarrierID, CarrierType, CarrierState, ContentMap |
| 43 |
RPT_Substrate |
Clock, SubstrateID, SubstrateType, SlotNumber, SubstrateState |
| 44 |
RPT_SubstrateLoc |
Clock, SubstrateID, PreviousLocation, CurrentLocation |
| 45 |
RPT_SubstrateProc |
Clock, SubstrateID, ProcessResult, ProcessData |
3.5 Alarm Reports (RPTID 60-69)
| RPTID |
Report Name |
Variables (VIDs) |
| 60 |
RPT_Alarm |
Clock, ALID, ALCD, ALTX, AlarmState |
| 61 |
RPT_AlarmDetail |
Clock, ALID, ALCD, ALTX, AlarmSetTime, AlarmSource, AlarmAction |
| 62 |
RPT_AlarmSummary |
Clock, ActiveAlarmCount, AlarmList |
3.6 Recipe Reports (RPTID 70-79)
| RPTID |
Report Name |
Variables (VIDs) |
| 70 |
RPT_Recipe |
Clock, RecipeID, RecipeVersion, RecipeStatus |
| 71 |
RPT_RecipeTransfer |
Clock, RecipeID, TransferDirection, TransferResult |
| 72 |
RPT_RecipeVerify |
Clock, RecipeID, VerifyResult, Checksum |
3.7 Job Reports (RPTID 80-99)
| RPTID |
Report Name |
Variables (VIDs) |
| 80 |
RPT_ProcessJob |
Clock, ProcessJobID, ProcessJobState, RecipeID, MtrlOrder |
| 81 |
RPT_ControlJob |
Clock, ControlJobID, ControlJobState, ProcessingCtrlSpec |
| 82 |
RPT_JobComplete |
Clock, JobID, JobType, JobResult, JobTime, ProcessedCount |
4. Event-Report Linking (Default Configuration)
4.1 System Event Links
| CEID |
Event Name |
Linked RPTIDs |
| 1 |
EquipmentOffline |
1, 2 |
| 2 |
EquipmentOnlineLocal |
1, 2 |
| 3 |
EquipmentOnlineRemote |
1, 2 |
| 4 |
ControlStateChange |
2 |
| 5 |
CommunicationEstablished |
3 |
| 6 |
CommunicationLost |
3 |
| 7 |
SpoolingActivated |
4 |
| 8 |
SpoolingDeactivated |
4 |
4.2 Process Event Links
| CEID |
Event Name |
Linked RPTIDs |
| 100 |
ProcessStateChange |
20 |
| 101 |
ProcessStarted |
20, 21 |
| 102 |
ProcessCompleted |
20, 22 |
| 103 |
ProcessAborted |
20, 22 |
| 106 |
ProcessStepChange |
23 |
4.3 Material Event Links
| CEID |
Event Name |
Linked RPTIDs |
| 200 |
MaterialReceived |
40 |
| 201 |
MaterialRemoved |
40 |
| 202 |
SlotMapRead |
41 |
| 208 |
CarrierIDRead |
42 |
| 220 |
SubstrateLocationChange |
44 |
5. Event Configuration Messages
5.1 S2F33 - Define Report
Define which variables are included in a report.
S2F33 W
<L[n] // n reports to define
<L[2]
<RPTID> // Report ID
<L[m] // m variables in report
<VID> // Variable ID
...
>
>
...
>
.
Example - Define Custom Process Report:
S2F33 W
<L[1]
<L[2]
<U4 100> // RPTID = 100 (custom)
<L[6]
<U4 1> // Clock
<U4 201> // RecipeID
<U4 301> // ProcessTemp
<U4 302> // ProcessPressure
<U4 303> // ProcessTime
<U4 210> // ProcessResult
>
>
>
.
5.2 S2F34 - Define Report Acknowledge
S2F34
<DRACK> // Define Report Ack Code
.
| DRACK |
Description |
| 0x00 |
OK, accepted |
| 0x01 |
Out of space |
| 0x02 |
Invalid format |
| 0x03 |
RPTID already defined |
| 0x04 |
VID doesn't exist |
5.3 S2F35 - Link Event Report
Link reports to collection events.
S2F35 W
<L[n] // n events to configure
<L[2]
<CEID> // Collection Event ID
<L[m] // m reports to link
<RPTID>
...
>
>
...
>
.
Example - Link Reports to Process Complete:
S2F35 W
<L[1]
<L[2]
<U4 102> // CEID = ProcessCompleted
<L[2]
<U4 20> // RPT_ProcessState
<U4 100> // Custom process report
>
>
>
.
5.4 S2F36 - Link Event Report Acknowledge
S2F36
<LRACK> // Link Report Ack Code
.
| LRACK |
Description |
| 0x00 |
OK, accepted |
| 0x01 |
Out of space |
| 0x02 |
Invalid format |
| 0x03 |
CEID doesn't exist |
| 0x04 |
RPTID doesn't exist |
5.5 S2F37 - Enable/Disable Event Report
S2F37 W
<L[2]
<CEED> // 0=Disable, 1=Enable
<L[n] // n events (empty=all)
<CEID>
...
>
>
.
Example - Enable Specific Events:
S2F37 W
<L[2]
<Boolean 1> // Enable
<L[5]
<U4 101> // ProcessStarted
<U4 102> // ProcessCompleted
<U4 200> // MaterialReceived
<U4 201> // MaterialRemoved
<U4 300> // AlarmSet
>
>
.
Example - Enable All Events:
S2F37 W
<L[2]
<Boolean 1> // Enable
<L[0]> // Empty = All events
>
.
5.6 S2F38 - Enable/Disable Event Report Acknowledge
S2F38
<ERACK> // Event Report Ack Code
.
| ERACK |
Description |
| 0x00 |
OK, accepted |
| 0x01 |
CEID doesn't exist |
6. Event Notification (S6F11/S6F12)
6.1 S6F11 - Event Report Send
S6F11 W
<L[3]
<DATAID> // Data ID (transaction ID)
<CEID> // Collection Event ID
<L[n] // n linked reports
<L[2]
<RPTID> // Report ID
<L[m] // m variables
<V> // Variable value
...
>
>
...
>
>
.
6.2 S6F11 Examples
Example 1 - Process Completed Event:
S6F11 W
<L[3]
<U4 12345> // DATAID
<U4 102> // CEID = ProcessCompleted
<L[2]
<L[2]
<U4 20> // RPTID = RPT_ProcessState
<L[2]
<A[14] "20250101143022"> // Clock
<U1 1> // ProcessState = IDLE
>
>
<L[2]
<U4 22> // RPTID = RPT_ProcessEnd
<L[9]
<A[14] "20250101143022"> // Clock
<A[20] "PJOB_20250101_001"> // ProcessJobID
<A[20] "RECIPE_PROD_A"> // RecipeID
<A[20] "LOT_2025_0001"> // LotID
<U4 3600> // ProcessTime (sec)
<U1 0> // ProcessResult (0=OK)
<U4 25> // ProcessedCount
<U4 24> // GoodCount
<U4 1> // BadCount
>
>
>
>
.
Example 2 - Material Received Event:
S6F11 W
<L[3]
<U4 12346> // DATAID
<U4 200> // CEID = MaterialReceived
<L[1]
<L[2]
<U4 40> // RPTID = RPT_Material
<L[5]
<A[14] "20250101090000"> // Clock
<A[20] "CARRIER_001"> // CarrierID
<A[20] "LOT_2025_0002"> // LotID
<U1 1> // PortID
<U1 1> // MaterialStatus (1=Present)
>
>
>
>
.
Example 3 - Alarm Set Event:
S6F11 W
<L[3]
<U4 12347> // DATAID
<U4 300> // CEID = AlarmSet
<L[1]
<L[2]
<U4 60> // RPTID = RPT_Alarm
<L[5]
<A[14] "20250101102530"> // Clock
<U4 3001> // ALID
<B[1] 0x86> // ALCD (Set + Cat 6)
<A[30] "Temperature High Warning"> // ALTX
<U1 1> // AlarmState (1=Active)
>
>
>
>
.
6.3 S6F12 - Event Report Acknowledge
S6F12
<ACKC6> // Acknowledge Code
.
| ACKC6 |
Description |
| 0x00 |
Accepted |
| 0x01-0x3F |
Error (see Appendix B) |
7. Event Query Messages
7.1 S6F15 - Event Report Request
Request current values for an event's linked variables.
S6F15 W
<CEID> // Collection Event ID
.
7.2 S6F16 - Event Report Data
S6F16
<L[3]
<DATAID>
<CEID>
<L[n] // Report data (same as S6F11)
<L[2]
<RPTID>
<L[m]
<V>
...
>
>
...
>
>
.
8. Event Flow Sequences
8.1 Initial Event Configuration
sequenceDiagram
participant H as Host
participant E as Equipment
Note over H,E: After Communication Established
H->>E: S2F33 W (Define Reports)
E-->>H: S2F34 (DRACK=0)
H->>E: S2F35 W (Link Events to Reports)
E-->>H: S2F36 (LRACK=0)
H->>E: S2F37 W (Enable Events)
E-->>H: S2F38 (ERACK=0)
Note over H,E: Events Now Active
8.2 Process Complete Event Flow
sequenceDiagram
participant H as Host
participant E as Equipment
Note over E: Process Completes
E->>H: S6F11 W (CEID=102, ProcessCompleted)
Note right of E: Contains:<br/>- ProcessJobID<br/>- RecipeID<br/>- ProcessResult<br/>- ProcessTime
H-->>E: S6F12 (ACKC6=0)
Note over H: Host logs result<br/>and updates MES
8.3 Carrier Arrival Event Flow
sequenceDiagram
participant H as Host
participant E as Equipment
Note over E: Carrier Placed on Port
E->>H: S6F11 W (CEID=200, MaterialReceived)
H-->>E: S6F12 (ACKC6=0)
E->>H: S6F11 W (CEID=208, CarrierIDRead)
Note right of E: Contains CarrierID
H-->>E: S6F12 (ACKC6=0)
E->>H: S6F11 W (CEID=202, SlotMapRead)
Note right of E: Contains SlotMap
H-->>E: S6F12 (ACKC6=0)
9. Implementation Guidelines
9.1 Event Enable State
| Default State |
Events |
| Always Enabled |
ControlStateChange, AlarmSet, AlarmCleared |
| Enabled |
ProcessStarted, ProcessCompleted, MaterialReceived |
| Disabled |
ProcessStepChange, SubstrateLocationChange |
9.2 Event Queue Management
| Parameter |
Typical Value |
Description |
| MaxQueueSize |
1000 |
Maximum queued events |
| QueueOverflowAction |
DropOldest |
What to do when full |
| EventTimeout |
45 sec |
T3 timeout for S6F12 |
9.3 Multi-Report Events
A single event can trigger multiple reports. This is useful for:
- Combining state data with process data
- Including both summary and detail information
- Supporting different host requirements
9.4 Trace Data Alternative
For high-frequency data collection (>1 Hz), use Trace Data (S2F23/S6F1) instead of Collection Events to avoid message flooding.
10. Implementation Checklist
| Feature |
Required |
Notes |
| S6F11/F12 Event Send |
Yes |
Core event reporting |
| S2F33/F34 Define Report |
Yes |
Report configuration |
| S2F35/F36 Link Event |
Yes |
Event-report linking |
| S2F37/F38 Enable Event |
Yes |
Event enable/disable |
| S6F15/F16 Event Query |
Optional |
On-demand query |
| Event Queue |
Yes |
Buffer during host delay |
| Spool Support |
Yes |
Events during comm loss |
| Default Event Set |
Yes |
Factory default config |