SCSI element codes
SCSI Enclosure Services (SES) devices contains a number of elements, each of which is defined by a one byte SCSI element code. There are many different element codes defined to cover various devices as shown in the list below.
List of SES element codes
- 00h - unspecified
- 01h - device - disk-drive or other SCSI device
- 02h - power-supply
- 03h - cooling
- 04h - temperature-sensor
- 05h - door lock
- 06h - audible alarm
- 07h - enclosure services controller electronics
- 08h - SCC controller electronics
- 09h - nonvolatile cache
- 0Ah - invalid operation reason - used to determine why an ESI device has failed to complete a command
- 0Bh - UPS
- 0Ch - display
- 0Dh - keypad
- 0Eh - enclosure
- 0Fh - SCSI port/transceiver
- 10h - language
- 11h - communication port
- 12h - voltage sensor
- 13h - current sensor
- 14h - SCSI target port
- 15h - SCSI initiator port
- 16h - simple subenclosure
- 17h - array device
- 18h - SAS expander
- 19h - SAS connector
- 1Ah-7Fh - reserved
- 80h-FFh - vendor-specific
How SES elements are used
The SCSI initiator communicates with an SES device using two SCSI commands, Send Diagnostic and Receive Diagnostic Results. The most common SES elements are power-supply, cooling-fan, temperature-sensor and UPS. The SCSI command protocols assume that there may be more than one of each device type so they must each be given an 8-bit address. When the SES controller is interrogated for the status of an SES element, the response includes a 4-bit status code. The most common element status codes are: 1h=OK, 2h=critical, 3h=warning, 5h=not installed.
See the SES article for a more detailed description.