SEMI Equipment Communications Standard 2
The SEMI Equipment Communications Standard Part 2 (SECS-II) defines the message structure between equipment and host. Most of the SEMI E5 standard is a large library of possible messages – a few of which have redundant functionality with different message structures. Most equipment support only a restricted subset of these messages. Some equipment define custom SECS II messages that are not part of the SEMI E5 standard.Only a subset of the possible messages is actually required by the GEM standard. Some SECS-II message transactions may be initiated by only the host. Other SECS-II message transactions may be initiated only by an equipment. A few message transactions may be initiated by either the host or equipment. In order for a SECS II message to be valid, it must be used by the correct party and have the correct message format (the SECS-II message structure defined by E5). The host and equipment can agree to support custom messages to implement custom features whose format is not defined in SEMI E5, but this is highly discouraged when standard message are sufficient.
- SEMI E5 Message Communication
- SECS II Message Format and Structure
- Related Cimetrix Products
- Additional Resources
Download the complete white paper on the SECS/GEM standards.
The SECS-II messages are organized into categories called streams that are identified by an integer between 0 and 255. Each stream category contains specific messages, or functions, also identified by an integer between 0 and 255. A primary message is an odd-numbered function. A secondary message is the corresponding even numbered function. A request for information and the corresponding data transmission is an example of such an activity. In most transmissions when either the host or equipment sends a primary message, the response is the corresponding secondary message.
Unless the reply bit is clear, a primary message should always be responded to with the complimentary secondary message. For most SECS-II messages, a secondary reply message is required. For example, if the host sends an S1,F1 (stream 1, function 1) message to request 'Are you there?', then equipment will send a reply S1,F2 message to indicate 'I am here'. Each SECS II message exchange has a unique transaction ID number. The standards allow message interleaving where there is more than one open, concurrent transaction.
The SECS II standard also defines list of allowed data types including ASCII, binary, boolean, 4 and 8 byte floating points, signed and unsigned integers of byte length 1, 2, 4, or 8 and a List; a container for other data elements including other lists.
SECS-II messages are sent as structured binary data. It is a very efficient means to package information across a network without wasting bandwidth. When using the SECS-I standard, RS-232 serial communication, the message size is limited to 7995148 bytes (about 8 MB). When using the HSMS standard, TCP/IP network communication, the maximum message size is limited to 4294967295 bytes (about 4.3 GB). The structure of each standard SECS-II message is defined by the SEMI E5 SECS-II standard. A message can be a simple data element, such as a binary response or an ASCII string. A message can also be a complex list structure with multiple levels of lists in the hierarchy. The SECS II standard limits a single element within a SECS II message to 16777215 bytes (about 16.5 MB).
CIMConnect is an object oriented software development kit for equipment suppliers to quickly develop host equipment communications interfaces. It makes extensive use of Active X/COM technology and is specifically designed to allow easy customization of the protocol and message format. The CIMConnect architecture allows equipment suppliers the emerging Internet-based communications of tomorrow as well as e-Diagnostics and CAMX. The current release supports the GEM, SECS-I, SECS-II, and HSMS standards. CIMConnect also supplies the tools to support the GEM300 SEMI standards. CIMConnect includes TESTConnect™ and SECSConnect™.
For more information on the CIMConnect product, please visit the CIMConnect Resources Page.
SECSConnect is a Component Object Module (COM) library for creating host or equipment software applications using SECS-II messaging over HSMS-SS or SECS-I. For advanced testing, it enables the user to write automated tests in C++, C#, VB.NET and other programming languages. SECSConnect makes it very easy to send and receive SECS II messages asynchronously and includes built-in queues for incoming and outgoing messages. SECSConnect is compatible with Visual C++, Microsoft Visual Studio .NET, and other IDE that support COM interfaces.
For more information on the SECSConnect product, please visit the SECSConnect Resources Page.
TestConnect is an easy-to-use graphical point-and-click testing tool that can be used for generating and logging host or equipment SECS II message scenarios. It can also be used to verify and characterize station controller designs or emulate equipment behavior without the need for the actual equipment or coding. The graphical user interface allows test scripts and SECS messages to be created using click, drag, and drop techniques. TestConnect is designed so personnel with minimal programming knowledge can easily perform SECS testing or characterization.