Only SCSI disks receive automatic self-tests; NVMe SSDs don't show most SMART attributes


Active Member
In the Main section, there is an entry for Self-Test Failure for disks under the SCSI category, but not for SATA or NVMe drives. The "[Backup+ Desk] Self-Test Failure" sensor value only appears in the Sensors section when the disk is listed under the SCSI section (in the case of the ST5000DM000, both the SATA and SCSI sections). Disks that are only listed under SATA, such as a WD6003FZBX in a StarTech enclosure, do not have self-test results in the Main or Sensors sections. It would be ideal if all types of disks should receive automatic self-tests.

Second, if an SSD uses the NVMe interface, there is only a short list of mostly Yes/No attributes, while HDDs and SATA SSDs have the full long list of SMART attributes. It's not that NVMe SSDs don't report these attributes, as some other tools are able to display the comprehensive list of objective SMART attributes regardless of the SSD being NVMe. An example of the SMART attributes provided for an NVMe SSD (HFM512GD3JX016N), which has been confirmed with other tools to report the standard attributes, is:
  • Available Spare Below Threshold [subjective]
  • Temperature Exceeded Critical Threshold [subjective]
  • Device Reliability Degraded [subjective]
  • Media In Read Only Mode
  • Volatile Memory Backup Device Failed
NVMe drives don't report attributes like ATA drives do via SMART, moreover many SMART attributes are not standardized. Some tools create "fake" SMART values from NVMe status so that it looks as if NVMe would report the same sort of SMART attributes.
It does look like more tools than I realize don't report the full attributes. I will try booting into Linux to see if it is the same over there. One thing that is missing from HWiNFO is Available Spare, which Disk Drill provides the actual number for.
Are the self-tests on SCSI disks actually performed, or is it just reading the result of the most recent test?

Self-test logs from smartctl show that HWiNFO displays the result of the most recent self-test, and does not actually performing any. The result displayed is likely the most recent one. If an extended self-test fails and there is a short self-test that completes successfully afterwards, the most recent one will not have errors. A fairly simple solution is to display two entries, one for the most recent extended self-test and one for the most recent short self-test.