Fastest Way to Implement SECS/GEM Communication Protocol to Your Equipment

This guide is intended to give an overview and basic introduction of SECS/GEM and its usage in the semiconductor industry to the beginner. And It is NOT INTENDED to substitute or serve as complete reference of the standards. For a complete reference of the standards, please refer to SEMI.

SECS/GEM stands for SECS (SEMI Equipment Communication Standards) and GEM (Generic Model For Communications and Control Of Manufacturing Equipment) standard is published and maintained by, an international organization of semiconductor manufacturers, is an organization body that governs the standard for semiconductor manufacturing.

To understand the SECS/GEM standards you will need to purchase the following 3 basic standards from SEMI:

  • SEMI E30 GEM Standard – Defines the behaviors of equipment (Business Rules), state machine and some rules like which SECS-II messages should be used, in what situations, and what the resulting activity should be.
  • SEMI E5 SECS-II – Defines the details of the interpretation of messages (APIs) exchanged between equipment a host.
  • SEMI E37 HSMS – High Speed SECS Message Services. This is a transport layer based on TCP/IP protocol and a successor of the previous SEMI E4 SECS-I standard that is based on serial communication.

SECS/GEM interface is developed in the 80s but the concept to the modern technology is very similar. As an illustration, let’s consider Web Service technology. An enterprise application server uses Web Service to interface with other services or hosts via HTTP or TCP/IP.


The SECS/GEM standard defines a common set of equipment behavior and communications capabilities that provide the functionality and flexibility to support the manufacturing automation programs of semiconductor device manufacturers. Equipment suppliers may provide additional SECS-II functionality not included in GEM as long as the additional functionality does not conflict with any of the behavior or capabilities defined in GEM. Such additions may include SECS-II messages, collection events, alarms, remote command codes, processing states, variable data items (data values, status values or equipment constants), or other functionality that is unique to a class (etchers, steppers, etc.) or specific instance of equipment.


The COMMUNICATION state model defines the behavior of the equipment in relation to the existence or absence of a communication link with the host. It also defines how communication is established or re-established with S1F13/S1F14 when communication is broken


The CONTROL state model defines the level of cooperation between the host and equipment. The CONTROL model provides the host with three basic levels of host control which determine the host’s ability to control the equipment:

  • OFFLINE (Lowest Level): Operation of the equipment is performed manually by the operator at the operator console. Equipment will respond with an SxF0 to any primary message from the host other than S1F13 or S1F17.
  • ONLINE/LOCAL (Middle Level): In this state, the host is only allowed to perform “read-only” operation like data collection. The host shall be prohibited from modifying any equipment constants that affect processes, remote commands that cause physical movement or which initiate processing.
  • ONLINE/REMOTE (Highest Level): In this state, the host may operate the equipment to the full extent available through the communications interface (“read-write” operations).


The PROCESSING state model is highly dependent on the equipment process, technology, and style. However, there are expected to be common aspects to these models.

Remote Command

Host can send command to instruct the equipment to perform an automatic operation. E.g.: START, STOP, PAUSE, etc. This is similar to the manual operation performed by operator on the console.


The GEM standard defines three types of variable which are accessible by the Host:

  • Status Variable: This is a “readonly” global variable defined in the equipment. Whenever there is a processing the equipment will update the respective status variable to reflect the latest data. E.g.: incremental of some counter, current/previous state, etc.
  • Equipment Constant: This is a “read-write” global variable defined in the equipment. Host can set or modify the equipment constant variable which may affect the setting that in turn change the way equipment’s behaviors.
  • Data Variable: This is a “local” variable which only exists in collection event.

Data Colection

SECS/GEM a couple of avenues for Host to collect data or information from the equipment:

  • A set of status variable values can be requested at anytime using S1F3 command.
  • A set of equipment constant values can be requested at anytime using S2F13
  • Host can define report containing status variable, equipment constants and data variable then attaching it to a collection event. When equipment raise the event (using S6F11 command), the report containing those variable’s values will be sent together.
  • Host can define traces which will do sampling of status variable data at a periodic basis.
  • Another way is leverage on alarm notification to collect more data with collection event. By standard, whenever an occurrence or clearance of an alarm, an event (collection event) must be sent to Host.

Alarm Notification

This feature allows the Equipment to notify Host for every occurrence or clearance of an alarm/error on the equipment. Alarm refers to those occurrence that are abnormal, undesirable and endanger people, equipment or physical material being processed.

Below are some of the characteristics of Alarm Management defined by GEM:

  • Each alarm has two associated state model. ALARM SET (occurrence) and ALARM CLEAR (clearance)
  • Each AlarmSet and AlarmClear has an associated Collection Event. This is to address the host’s potential need for more extensive and flexible data reporting.
  • Host can requests which Alarms to be enabled/disabled and Equipment will only notify the Host for the enabled Alarms.


The SECS/GEM standard requires that each equipment provide a GEM Interface Reference Manual. It must include GEM Compliance statement, Complete SECS-II message documentation, State Model, list of status variables, equipment constants, data variables, alarms, collection events, etc that are defined/supported by the equipment.