Monday, April 18, 2011

Western Digital WD MyBook Premium HID 1394 Firewire external drive problems

When we relocated, I parted with a number of old office DVD's.  I have owned a few external Western Digital harddrives and it seems that the DVD for my current MyBook went the way of "all the things".

Since that time my UPS failed after repeated brown-outs here up the Saint John River near the hydropower station.  One victim recently was the WD MyBook.

Like most corporations, I remain on Windows XP.  One of the drawbacks of XP is its ability to handle Firewire.  Then there is the firmware in the WD enclosure.

The problem was simple: XP refused to recognize the drive, and if it did , it would give a code 10 error for "device cannot start".  It would usually take over an hour to get the drive up.  A cold reboot in safe mode and then a cold shutdown followed by a normal restart would sometimes result in my being able - after several attempts - to get the device to spinup.

On one occasion, using the hardware device manager to enable and then again disable 1394 networking resulted in the happy result.  On other occasions, an uninstall and reinstall.  Sometimes the Windows driver would suffice, sometimes the WD driver and sometimes the device would be an anonymous disk drive and reported as a HID device with a problem.

But there is hope.  The WD spindown utility seems to work ( I can now even let XP go into SLEEP mode and the drive spins up as we awaken.)

Here is what has been working (lately.)  I restart and then launch the Process Explorer ( from Microsoft's web "Power Toys" after ensuring that I have a clean shutdown and restart of XP (one cold cycle through Safe mode + Networking and one warm cycle as a normal user doing the cycle start/logon/restart. )  If XP will not shutdown cleanly, all bets are off.  Here goes:

1) kill the explorer process with Process Explorer
2) start explorer  from within PE
3) use Process Explorer to kill itself (we don't want PE as the parent of explorer)
4) restart Process Explorer from Windows Explorer desktop
5) attach the drive
6) start the spindown utility ( it may report only a generic drive, but no matter.)

Thereafter, spindown the drive before sleep or powerdown or as you like.

You may try letting XP do the spindown, but painful experience has taught me to do it explicitly.  My suspicions lie with the "Button Light" firmware which puts itself up as a 1394 HID device, but that's just my gut feel when the icing is there but the cake is missing ...

Now, for my own sanity, the drive is set for quick removal, not delayed-write, but just in case, I run a little Rebol script at low priority - that script writes to the drive every 9.5 minutes.  It is started in a cmd shell and then PE is used to kill that shell.  I then set the Rebol process to be full screen ( I have a few uses for Rebol during the day and am less likely to close this one's window inadvertantly.)  The downside is that I have to remember to kill it when I do want the device to spindown.  Unwanted spindown is such a headache with these WD drives and the spindown utility lacks the WD "Button" utility's command line option to adjust the interval.  But the latter is just too annoying and useless ...

I should add two items:  with device manager I have disabled the annoying WD button as an HID device and with msconfig I have blocked it from being in the XP startup.

It is possible to have the correct drive noticed and it is possible to run with the default Microsoft XP SP3 disk driver but I am doing best just now with the WD driver  – and a new external drive (not WD) is on the way via UPS.  But this is Fredericton, NB, so that will be another story ....

No comments: