[SOLVED] HDD repair help needed

Page 5 - Seeking answers? Join the Tom's Hardware community: where nearly two million members share solutions and discuss the latest tech.

mirdza83

Honorable
May 12, 2019
73
0
10,530
I'm trying to fix a dead hard drive (WD2500AAJS) that won't spin up.
I checked the PCB for shorts and i couldn't find any also the board doesn't have any physical damage. So i suspected that maybe the motor is dead.
I bought another drive with the same model number and identical PCB to perform a platter swap. I couldn't swap the bios/firmware because it's incorporated in the IC.
I moved the plater and PCB from my old drive to the new one but the drive still won't spin up.
At this point, I'm pretty sure that the old PCB is not working properly.
I checked the voltages across the board of both PCB's and they are identical.
I suspect that maybe the spindle controller is bad but I'm not sure.

Any help, please..

View: https://imgur.com/a/LCVtunK
 
Last edited:
Solution
Maybe I can copy the original ROM from patient PCB and write it on the donor PCB or move the platter in patient housing with the donor PCB and patient original ROM

That's sad news. Clicking and spinning down is usually a symptom of a failure to read the servo information. Like you say, you have nothing to lose by trying the original, unmodified patient ROM. If that fails, you could try the unmodified donor ROM, but I don't know how it will go.
You don't appear to understand. The centre of the track that is recorded on the platter must coincide with the centre of the spindle. When you disturb the platter, you create some eccentricity.
Oh.. you mean the track is more like an ellipse than a circle. Right... That is one more reason to try and return the platter in original housing then
 
Some drives (eg Samsung) can recalibrate the runout parameters at every spin-up. Others seem to rely on stored calibration data.

If the wobble ("runout") is not too serious, the drive can anticipate it and compensate for it by injecting a sinusoidal position error signal into the servo control loop. This signal beats in tune with the wobble, thereby cancelling it out. Some enterprise HDDs have two additional shock sensors (rotational vibration sensors) devoted to detecting sinusoidal disturbances. These can be caused by vibration in a heavily populated server rack.
 
  • Like
Reactions: mirdza83
From the HDDScan article

"When heads flying above track in the middle of a platter, centers of reading and writing head will be above the center of the same track and drive can read and write on the same track without moving heads. But if, for example, heads move toward OD(outer diameter), centers of reading and writing heads will not be above the same track, one of the heads will be far offtrack (sometimes several tracks aside). Such a difference between centers of reading and writing heads is called MR Offset. MR Offset is not a constant it varies from track to track; it also can be negative (for ID) and positive (for OD). MR Offset depends on a track location and track width. Another parameter is called PLO Delay or Read-Write Delay. It shows difference between Read Gate and Write Gate appearances. On different tracks PLO Delay will be different for Write Gate. As we know each head has unique parameters and MR Offset and PLO Delay also will be unique for each head. Drive stores averaged MR Offset and PLO Delay for each head at least for each zone in special tables called Adaptive tables or just Adaptives (adaptives also include some other critical parameters). Adaptives may be stored of the platters in special area called System Area or SA. System Area contains part of drive's firmware. And here is a dilemma: drive basically cannot read and write w/o adaptives but to get adaptives drive supposed to read SA first, what to do? Here is the solution: SA is formatted with predetermined TPI and BPI in a known place of platters and that allows drive to read SA w/o adaptives. Most of modern drives write SA in the middle of platters, so the drive would have ability to write SA w/o adaptives. But for data area drive has to calculate DACs for reading and writing procedures separately, with MR Offset included. If adaptives are lost the a drive may become totally helpless and data may be lost forever. Some drives put part of adaptives into flash and that makes PCB unique for each drive."
 
Last edited:
Well, i made some progress but now probably everything Is lost...

I returned the platter in patient drive and reprogrammed the PCB with modified ROM.

I started the PC, skipped windows disk checking tool and the drive was finally recognized in windows. I could access it and i actually saw all my folders ( you should have seen the look on my face :) ) But.... i couldn't copy anything...

So i restarted the PC and now i let chkdsk do its thing. After that i could only see a drive letter with a prompt to format the drive. The windows disk management tool list the drive with 250gb of free space.

I suspect that chkdisk erased all the data or stored somewhere information about bad sectors. I reprogrammed the ROM again but the drive behaves the same.

I am runing now a disk recovery software. It was able to find some files but its stuck at 20%. The drive is VERY slow.
This is probably because of the contaminations inside.
If i have only reprogramed the ROM at the first place this will be now a perfectly working drive.
Well... Lesson learned
 
Last edited:
I don't understand why the drive didn't work with the patient's original unmodified ROM. :-? You only needed to modify the ROM when the platter was in the donor drive. That's because the physical characteristics of the preamp and heads in the target drive are different.

CHKDSK was a bad choice. Microsoft's tools care more about preserving the consistency of the file system than they do about preserving your data. This means that CHKDSK will sacrifice your data to recover the file system. A better approach would have been to apply the "slow responding fix" (via a HDDSuperTool script), and then clone the the drive using HDDSuperClone. You can still do this, but you will need a data recovery tool to recover your files.

DMDE (US$20) and RAISE (US$25) are two of the cheapest data recovery tools. The free version of DMDE will recover up to 4000 files from any one folder.

Edit:

I believe HDDSuperClone automatically applies the "slow responding" fix. This prevents the drive from bogging down in error recovery.
 
I don't understand why the drive didn't work with the patient's original unmodified ROM. :-? You only needed to modify the ROM when the platter was in the donor drive. That's because the physical characteristics of the preamp and heads in the target drive are different.
In the post before my last one, I copied part of the HDDscan article.
If I understand it correctly. The heads have unique parameters about MR Offset and PLO Delay and that information is stored in adaptive table on SA. So this tells me that the platter will only work with patients headsa and in a patient body (for this drive). This is all new to me and probably I'm wrong 😕

I believe HDDSuperClone automatically applies the "slow responding" fix. This prevents the drive from bogging down in error recovery.
I will try that but if it don't apply the fix automatically I'm not sure how to do that. I couldn't find information on how to use the Supertool. And i suck in linux.
PS. I was able to run HDD Super clone live cd but i gave up and used windows for ROM reprogramming.
 
The drive was "working" in patient body with modified rom. And now it is working with the unmodified rom. I returned the unmodifed rom after chkdsk.
It didnt worked in the donor body no matter what ROM i used.
 
Some drives store the calibration data in ROM, others store it in the SA. Those that store it in the SA will usually place the SA in the middle of the platter where the MR offset is negligible. Otherwise, if the SA is at the innermost or outermost tracks, then the calibration data is in ROM. Note that these "adaptives" only need to enable the firmware to reach the SA. After that, the firmware can retrieve the calibration data for the user area from the SA.
 
But the calibration data, no matter where it is, is for that specific combo (body, heads and platter), right? When the platter is in the another(donor) body it uses different heads. Im thinking that every drive is phisically different (talking about nanometers or microns) and that is why it needs the calibration in the first place. This is getting very confusing. Im trying to use my logic but...
 
Last edited:
I started the cloning procedure with HDDSuperClone but after 3gb of data it stops with an error message that the source drive is not responding. I heard the heads clicking unusual before this happened. As a matter of fact both of my drives stopped responding. Patient and a drive a was cloning to. That drive is good, no problems at all.
Even after reset the drives were not recognized in bios. I had to power off and on the PC and now they work as before.
This is my other PC, not the main one.

Maybe there is some option in HDDSuperCLone that i can turn on to skip errors more aggressively... if that is the problem at all.

I found some info about increasing the threshold from 1k to 8-12k or cloning in reverse. I will try that now, sorry
 
Last edited: