Windows – How to forcibly disable (spin down) an internal Hard Drive (Windows 10 v1903)

boothard drivewindows

I have my OS on an SSD and use my HDD (Toshiba P300) to store some data which I rarely access. I dislike the noise generated by the hard drive, so I'd like to disable it and be able to only enable it whenever I can.
No, Windows Power Options are not the solution. Windows will wake up the drive randomly for no reason, even with disabled indexing and all handles/processes closed, as expected of this great operating system. I tried:

  • Setting HDD to Offline in Disk Management (doesn't actually seem to do anything at all)
  • Disabling HDD using Devcon / Device Manager (doesn't actually spin it down, just makes it unrecognizable by software and OS)
  • Putting HDD in Standby using Smartcl / Hdparm / HDDScan (Windows keeps waking it up for no reason)
  • Multiple combinations of all of the above
    What worked before updating to Windows v1903 (from v1607) was using RevoSleep, but since the update it doesn't work at all – the drive isn't recognizable but will keep spinning despite the software running. I even looked into disabling the port in BIOS itself, but that doesn't seem to be an option on my MSI B450 motherboard.

Ideally I need something that lets me put the drive in standby AND make it so it's not recognizable by the OS. Disabling the drive using Devcon/Device Manager wakes it up, after which it's inaccessible by software used to put it in standby in first place. Seems like all options expect physically disconnecting the drive do not seem to work any more. Yes I am aware of Hot Swap Drawers and I know that more start/stop cycles will wear down the drive more than letting it run, I don't care.

Best Answer

I will answer how I managed to find a solution. Note that it doesn't have to work for you, it does on my Windows v1903 machine with Toshiba P300 hard drive.

  1. Download Windows v1607 .iso (https://tb.rg-adguard.net/public.php)
  2. Extract "SATA AHCI Controller" and "DiskDrive" drivers from the v1607 Windows
  3. Install the old drivers, I assume they work for any version above v1607.
  4. Use software called HotSwap! to spin down the drive (it does that after ~5s). So far, after 3 days of testing, the HDD doesn't seem to spin up by itself. Even when launching software like HWInfo, CPU-Z, or CrystalDiskInfo. The only way to make it active again is by doing "Scan for hardware changes" (you can do that with DevCon Rescan/Device Manager).

I've uploaded the v1607 drivers HERE. In order to install them you need to disable "Signed Driver Enforcement", since for some reason they don't seem to be signed by Microsoft once you export them. If you don't trust a random guy on the internet (and you shouldn't) then do it yourself.

You can export the drivers with just 7zip and the .iso. You'll be looking for 2 folders called "mshdc.inf_amd64_67bad2c7196330b6" and "disk.inf_amd64_1e7038548624f167" located in: Win10_1607_x64.iso\sources\install.wim\1\Windows\System32\DriverStore\FileRepository\


Edit: The solution randomly stopped working after a few days. Seems like I underestimated how awful Windows is.

Related Question