Wednesday, 11 August 2010

Upgrading ReadyNas Duo

The time had come to upgrade the hard drives in my NAS. 500 GB in a RAID configuration is not much space these days. I looked around for a good 2TB drive with good eco credentials and quietness.

I finally plumped for a couple of Western Digital WD20EADS Caviar Green hard drives.

Drives not recognized


I place the new drive into the NAS but the WD20EADS was not recognized. I felt deflated; maybe I had bought two very expensive paperweights. A check on the ReadyNas DUO forums informed me that I should upgrade to a newer version of Radiator 4.17

Apparently these drives are not recognized by Radiator 4.16. I've installed the new firmware and voilĂ  my new drive was then recognized. Unfortunately, I noticed another problem.

Ever increasing LCC count

Although these drives are eco-friendly there not very amiable with Unix-like systems. Seems that these drives are too clever for their own good. To be more green, these drives park their heads if there is no disk activity after 8 seconds. But Unix will usually frequently write to a disk on a periodic basis, which means the heads will continually be parked and unparked. This increase Load cycle count, LCC unnecessarily. This is important as there is an upper limit to the LCC count, say 300,000 after which the drive will shutdown due to it thinking there is a drive error. You'll then be unable to access your data and will have to send the drive back to Western Digital for replacement under warranty. Not good :(.

To get around this there is a WD utility, wdidle3, which allows the changing of the parking frequency or to disable it all together. This is a DOS application so it needs to be run from a boot disk. You can't run it from Windows 7 x64 either as it's a 16 bit application. What I did was plugged in the drives into my PC and created a USB disk to boot into DOS after which I could run wdidle3.

I followed these instructions:
  1. Download FDOEMCD.builder.zip from http://www.fdos.org/bootdisks/.
  2. Add wdidle3.exe to CDROOT folder. (wdidle3.exe)
  3. Execute MAKEISO.BAT to create new FDOEM.ISO CD image file.
  4. Burn FDOEM.ISO to CD or usb stick. It will boot to DOS and allows wdidle3 to run.
  5. Disable wdidle3 timer on all discs (wdidle3 /D) or increased the park time to max time of 5 minutes (wdidle3 /S300).
More in depth Instructions found here: http://forum.synology.com/enu/viewtopic.php?f=124&t=20907

I set the park time to 5 minutes rather than disable it. This reduces the risk of platter errors should the drives be knocked. If you disable, the heads will always be in contact with the platters so if you inadvertently knock your hard drive you could damage it.

Another thing is that your drive may not be recognized from DOS. This is probably a BIOS issue. Check that your hard drive controllers are not using AHCPI. Change them to use IDE for wdidle3 update and revert them to AHCPI afterwards. It shouldn't take long for wdidle3 to find your SATA drive. If it longer than 10 seconds, then check the BIOS.

Since I've made these changes my LCC count has hardly risen. To put it into context, without wdidle3, my LCC increased to around 1000 in just 1 hour which means my drive would have been bricked in less than a fortnight. But now everything's hunky-dory.

Western Digital needs to get their act together. They really shouldn't be selling these drives without warning consumers that you may have problems on non-desktop computers. You live and learn.