SCSI Sense Key Chart

What are Sense Keys, Sense Codes, and Additional Sense Code Qualifiers?

SCSI Sense Key Chart SCSI devices have the ability to generate error information in the form of Sense Key, Sense Code, and Additional Sense Code Qualifiers.

When an error condition is encountered on the SCSI bus, SCSI devices will issue a CHECK CONDITION Status to the host. The SCSI host adapter will respond by sending a REQUEST SENSE Command to the device to determine the nature of the error condition. The device will then reply with Sense information. This Sense information – the Sense Key, Code, and Qualifier – is represented by a series of numbers in Hexadecimal format. These Hexadecimal numbers (e.g. 02h) have certain meanings if referenced to their corresponding tables, which are normally found in the product manuals.

The Sense Key will indicate a general error. A Sense key of 2h means “Not Ready“. The Additional Sense Code and Additional Sense Code Qualifier, ASC and ASCQ, will indicate the specific error. An ASC of 04h with an ASCQ of 02h means “LUN Not Ready, Initializing Command Required“.

In some cases, these codes may enable you to remedy the error if you understand what they indicate (the language used to describe these codes can be somewhat cryptic). The example used here — Not Ready-LUN Not Ready, Initializing Command Required — would indicate that the disk drive has not yet spun up, and you may be able to remedy this by configuring the drive’s jumpers.

Key | Sense Key Description


No Sense – Indicates there is no specific Sense Key information to be reported for the disc drive. This would be the case for a successful command or when the ILI bit is one.


Recovered Error – Indicates the last command completed successfully with some recovery action performed by the disc drive. When multiple recovered errors occur, the last error that occurred is reported by the additional sense bytes.

Note: For some Mode settings, the last command may have terminated before completing.


Not Ready – Indicates the logical unit addressed cannot be accessed. Operator intervention may be required to correct this condition.


Medium Error – Indicates the command terminated with a nonrecovered error condition, probably caused by a flaw in the medium or an error in the recorded data.


Hardware Error – Indicates the disc drive detected a nonrecoverable hardware failure while performing the command or during a self test. This includes SCSI interface parity error, controller failure or device failure.


Illegal Request – Indicates an illegal parameter in the command descriptor block or in the additional parameters supplied as data for some commands (Format Unit, Mode Select, and so forth). If the disc drive detects an invalid parameter in the Command Descriptor Block, it shall terminate the command without altering the medium. If the disc drive detects an invalid parameter in the additional parameters supplied as data, the disc drive may have already altered the medium. This sense key may also indicate that an invalid IDENTIFY message was received. This could also indicate an attempt to write past the last logical block.


Unit Attention – Indicates the disc drive may have been reset.


Data Protect – Indicates that a command that reads or writes the medium was attempted on a block that is protected from this operation. The read or write operation is not performed.


Firmware Error – Vendor specific sense key.


Aborted Command – Indicates the disc drive aborted the command. The initiator may be able to recover by trying the command again.


Equal – Indicates a SEARCH DATA command has satisfied an equal comparison.


Volume Overflow – Indicates a buffered peripheral device has reached the end of medium partition and data remains in the buffer that has not been written to the medium.


Miscompare – Indicates that the source data did not match the data read from the medium.

Extended SCSI Sense Key Chart

Byte 12 | Byte 13 | Error Code Description

00 00 No Additional Sense Information

01 00 No Index/Sector Signal

02 00 No Seek Complete

03 00 Peripheral Device Write Fault

04 00 Logical Unit Not Ready, Cause Not Reportable

04 01 Logical Unit Not Ready, Becoming Ready

04 02 Logical Unit Not Ready, Initializing Command Required

04 03 Logical Unit Not Ready, Manual Intervention Required

04 04 Logical Unit Not Ready, Format in Progress

08 00 Logical Unit Communication Failure

08 01 Logical Unit Communication Time-Out

08 02 Logical Unit Communication Parity Error

09 00 Track Following Error

09 01 Servo Fault

09 04 Head Select Fault

0A 00 Error log overflow

0C 00 Write error

0C 01 Write Error Recovered With Auto-Reallocation

0C 02 Write Error – Auto Reallocation failed

10 00 ID CRC Or ECC Error

11 00 Unrecovered Read Error

11 01 Read Retries Exhausted

11 02 Error Too Long To Correct

11 04 Unrecovered Read Error – Auto Reallocation Failed

12 00 Address Mark Not Found For ID Field

12 01 Recovered Data without ECC using Previous Sector ID

12 02 Recovered Data with ECC using Previous Sector ID

14 00 Sector Not Found

14 01 Record Not Found

15 00 Random Positioning Error

15 01 Mechanical Positioning Error

15 02 Positioning Error Detected By Read Of Medium

16 00 Data Synchronization Mark Error

17 00 Recovered Data With No Error Correction Applied

17 01 Recovered Data Using Retries

17 02 Recovered Data Using Positive Offset

17 03 Recovered Data Using Negative Offset

17 05 Recovered Data Using Previous Sector ID

17 06 Recovered Data Without ECC – Data Auto Reallocated

18 00 Recovered Data With ECC

18 01 Recovered Data With ECC And Retries Applied

18 02 Recovered Data With ECC And/Or Retries, Data Auto-Reallocated

18 05 Recovered Data with ECC and/or retries

19 00 Defect List Error

19 01 Defect List Not Available

19 02 Defect List Error In Primary List

19 03 Defect List Error in Grown List

1A 00 Parameter List Length Error

1B 00 Synchronous Data Transfer Error

1C 00 Defect List Not Found

1C 01 Primary Defect List Not Found

1C 02 Grown Defect List Not Found

1C 83 Seagate Unique diagnostic code

1D 00 Miscompare During Verify Operatio