Is it possible to create individual power settings for each hard drive?

I have a number of different drives that I use for different purposes but I only use two of them frequently. I would like for the others to enter sleep mode when not in use, but never my main two.

Is there any way to edit power saving settings for individual drives?


Yes, it is possible to use individual idle times for each hard drive. You need to set the shortest idle time that should be used via the advanced power settings GUI. Then set individual longer idle times for each hard disk instance via registry, by setting the MinimumIdleTimeoutInMS key. This registry key sets the lower limit for the idle timer of the respective disk instance. So setting a value higher than the value used in the advanced power settings GUI will effectively keep the disk turned on for a longer time as it is configured in the GUI.

Example: You have three disks. Two of them should turn off after 20 minutes, and the third one after 3 hours:

  1. Go to advanced power settings
  2. Navigate to "Hard disk\Turn off hard disk after"
  3. Set it to 20 minutes
  4. Run regedit.exe
  5. Navigate to "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Enum\SCSI\DEVICEID \INSTANCE\DeviceParameters\Storport\" for the third harddisk.
    • DEVICEID is a unique identifier for the disk model, e.g. “Disk&Ven_Seagate&Prod_ST750LX003-1AC15”
    • INSTANCE is a unique identifier for the specific disk, should multiple disks of the same model be deployed, e.g. “ 4&2a8c9e62&0&000000”
  6. Add the following key:
    • Name: MinimumIdleTimeoutInMS
    • Type: REG_DWORD
  7. Specify a value of 10800000 to set the min. idle timer to 3 hours. (3*60*60*1000)

Reference: https://support.microsoft.com/en-us/kb/241679


Unfortunately you cannot control drive spin-up and spin-down individually in Windows.

The drive power saving features are an all-or-nothing setting that affects all drives.

When Windows enumerates the system drives (which is a common procedure) it will spin up all the drives to ensure they are available.

One way to avoid this particular reason the drives spin up is to unmount the drives from Windows when you're not going to be using them. This can be accomplished by removing the assigned drive letter(s) from all partitions on a physical drive.

See Windows Help: Mount or dismount a drive (windows 7 instructions):

  1. Open Computer Management by clicking the Start button, clicking Control Panel, clicking System and Security, clicking Administrative Tools, and then double-clicking Computer Management.

  2. On the left, under Storage, click Disk Management.

  3. Right-click the mounted drive that you want to remove, and then click Change Drive Letter and Paths.

  4. Click Remove, and then click Yes.

For some command-line/scripting alternatives perhaps check out these SU questions:

  • Mount and dismount hard drive through a script/software
  • Change a drive letter from Command Prompt or batch script in Windows 8?