Data recovery and disk repair questions and discussions related to old-fashioned SATA, SAS, SCSI, IDE, MFM hard drives - any type of storage device that has moving parts
Post a reply

Missing VCM current sense resistor - servo calibration?

September 17th, 2009, 6:08

In the following photo of a Seagate HDD I notice that there is a missing VCM current sense resistor (1R00) to the right of the SMOOTH chip:

http://files.hddguru.com/getimg.php?ima ... _Sata.jpg&

AFAICT the typical configuration for other Seagate HDDs requires four 1 ohm resistors in parallel, resulting in an equivalent resistance of 0.25 ohm. FWIW, the datasheet for the L7250 SMOOTH chip shows 0.27 ohm in the application circuit.

Is resistor selection part of the calibration procedure at the factory, and should we check donor PCBs for matching resistances?

I am particularly intrigued by the following SMART failure in a 500GB Seagate HDD:

http://img508.imageshack.us/img508/8939/hdtuneox0.jpg
http://img255.imageshack.us/img255/9105/hdtune2um0.jpg

The drive has a cooked Seek Error Rate value that has dropped below the threshold. AFAICT, the error rate is about 1 error in every 20 seeks. The average access time is 50msec. The cooked value of the Raw Read Error Rate is 114, indicating that there is no problem with reading. This would also suggest that the drive is reading the embedded servo information without any trouble.

I wonder if one or more of the resistors are missing, thereby reducing the VCM current and slowing down the servo.

I had also considered that there may have been a problem with the +12V supply in light of the 2 spin retries, but I would think that the drive's MCU would not attempt to spin up if the supply was too low.

Re: Missing VCM current sense resistor - servo calibration?

September 18th, 2009, 3:14

... "SLOWING DOWN THE SERVO" :shock:

Suggestion : if you can't have first-hand information how stuff work, forget the realm of all bullshit (AKA the internet) and DIY electronics...

Re: Missing VCM current sense resistor - servo calibration?

September 18th, 2009, 4:07

Hi,

As far as i know, the spindle's current measurement is needed only in the initial spinup.
The following RPM stabilisation is from the servo informations.

By the smart and scan log, i think most likeli your drive have one or more weak head, and/or damaged zone in the surface, and this is what generates this error value.

Btw, if your HDA is not opened, the drive should be in warranty period, so why not RMA it instead of investigating about issing resistors? :mrgreen:

Additionally, there is some oxide in the preamp's connector, wich can make similar problems....

Janos

Re: Missing VCM current sense resistor - servo calibration?

September 18th, 2009, 9:41

My question was in regard to a VCM servo, ie Voice Coil Motor, not the spindle motor. Hence the reference to Seek Error Rate in the SMART report. In any case, the spindle motor current would be continuously monitored so that the drive could initiate protective action in the event of a failure. "RPM stabilisation" is achieved by monitoring the back EMF of the motor windings. The embedded "servo information" provides the data clock.

Here is a datasheet for the ST Microelectronics L7250 SMOOTH VCM and spindle motor controller:

http://wandrew.regruppa.ru/PCInfo/TechDoc/L7250(Smooth).pdf

On page 21 it states that "the system is phase locked to the motor by sensing one BEMF zero crossing on one winding, once per electrical cycle. A window is opened up in that winding, and it is tri-stated to allow sensing of the zero crossing."

If one head were weak, or one zone damaged, then one would expect to see read errors. However, the SMART read error rate attribute is showing a cooked value of 114 which is excellent. Furthermore, if a zone were damaged, then the access time would spike at that point, yet the following graph is fairly linear across the entire surface:

http://img255.imageshack.us/img255/9105/hdtune2um0.jpg

BTW, the drive is not mine, and I expect that it was RMA'ed a year ago. In any case you have missed the point of my post. It is not only about "_issing resistors", it is about understanding how things work, and whether changing boards is really as straightforward as it appears. Judging by the response to my post, it is clear that nobody has noticed the difference, and moreover nobody understands the difference when it is pointed out to them.

A common manufacturing technique is to include several resistors in parallel and to trim the output of the circuit by removing one or more of these resistors. This is referred to as "select on test" and avoids the use of relatively expensive and potentially unreliable trimpots.

In the manufacture of DVD players, for example, a manufacturer will use the one decoder board with several brands of DVD loader. Each loader requires different drive levels for the tray motor, spin motor, and sled motor. These may be programmed by resistors, or accounted for in a software module.

In the present case it could be that the HD was manufactured with two alternative VCM actuators. The SMOOTH chip detects the voltage across the current sense resistor -- it does not detect the current directly. Increasing the resistance (by removing a resistor) would result in a reduction in the voice coil current which would in turn slow down the actuator. This behaviour is consistent with the slower access times reported by HD Tune. In fact, I believe AAM slows down the voice coil to reduce seek noise, although to a much lesser extent.

As for "bullshit" and "DIY", this whole business of data recovery is essentially DIY, or does BlackST have access to insider manuals that the rest of don't? I may be ignorant (at the moment), but I'm not stupid. Likewise, someone who is knowledgeable (by having access to "first-hand information") may not necessarily be intelligent.

Take a look at HD Tune's SMART report. Notice how many attributes are described as "unknown". That's the nature of this business. In fact HD Tune's author does not appear to be aware that raw SMART data are actually 48-bit numbers, not 32 bits. In particular, Seagate's raw Seek Error Rate attribute stores the number of seeks in the lower 32 bits and the number of seek errors in the uppermost 16 bits. But this is DIY information that I have determined for myself, without reference to insider literature, so maybe it is of no value to BlackST.

In any case, I have made the information available here:

http://en.wikipedia.org/wiki/Talk:S.M.A ... _attribute
http://en.wikipedia.org/wiki/Talk:S.M.A ... Error_Rate

Anyway I didn't come here to beg for scraps from the master's table. I came to learn and to contribute in any way that I can. I'm over 50 years old and my experience is in the on-site chip level repair of minicomputers and peripherals. I have seen and repaired many servo systems, including those in tape transports, storage module disc drives, plotters, and printers. I have even hacked firmware to alter acceleration profiles in pen plotters. I operated my own third party maintenance and repair business, and have done a lot of reverse engineering, improvisation, and lateral thinking. FWIW, I also have an electrical engineering degree, but I confess that the only good thing about having a degree is that I don't have to worry about not having one.

Re: Missing VCM current sense resistor - servo calibration?

September 18th, 2009, 10:05

Long post, short answer : you don't need anything. Apply what you know, if doesn't work, you need some extra info. I can't help because simply it would bite me back.
Having at hand the specs of L7250 and having some "on-hand" experience, it doesn't help you fixing the drive without knowing exactly how some stuff work.
"UNKNOWN" values on SMART are simply vendor specific attributes that differ from brand to brand and eventually between drive families, there are specific tests, reserved (vendor specific). Of course this kind of info is reserved (this doesn't mean that someone hasn't already spread it).
And L7250 does what the MCU tells it to do.
Hint : sometimes people concentrate on weird problems when the real defect / cause is simpler and elsewhere.
Hint #2 : if you have time, a GHz-capable DDA with differential probe and capture analysis software, compare some frames from the read channel from a working and non-working or borderline disk. You will see that.... etc. etc. etc.
And possibly check at the same time with scope what L7250 does.
Let the other people know about it (I have seen it by myself a long time ago).

Re: Missing VCM current sense resistor - servo calibration?

September 19th, 2009, 18:26

I didn't come here looking for condescending, patronising chest beating. I came here in search of answers from people who supposedly understand the technology. If your only suggestion is to "leave it to us, we know what we're doing", then please don't bother replying. I made a career out of changing $1 chips when the opposition were replacing $10K PCBs. I've recovered data from undocumented minicomputer file systems by writing my own 30-word assembly language routines. I've performed head alignments on stacks of 20 heads using only a customer's software disc pack, a $99 alignment tool, a torque screwdriver, and another 30-word assembly language routine which I'd also written. I've chased cat's eyes and dibits with a 20MHz oscilloscope. Believe me, I've done my time in the industry. Understandably, technology has moved ahead in leaps and bounds, but I'm no novice. I just need a refresher course, albeit a *very* substantial one.

Allow me to rephrase my original question in direct, simple terms. Do some PCBs have 3 VCM current sense resistors, and others 4? If so, is this another "adaptive" that has to be taken into account when swapping boards?

Is the same PCB sometimes used for an entire model family? If so, then the lower profile drives with single platters and lighter head stacks may require less VCM current than their higher profile, multi-platter siblings. This could explain the resistor difference.

As for your suggestion that a single weak head may be responsible for the 50msec access times measured by HD Tune, let's assume that the good heads produce normal seek results, in which case their access times would be 16 msec, say. The Seagate model is an ST3500320AS. The "2" suggests that it has 2 platters, and most probably 4 heads. Therefore the total access time of all four heads would be given by ...

(3 x 16) + X = (4 x 50)

... where X is the access time of the bad head.

So X = 152 msec. This equates to a full stroke seek time of about 300 ms. I'm no guru, but I would think that this figure would be implausible. Of course the explanation may be very simple -- it could be that the VCM actuator bearing is tight, but I would think that this would make close on-track control extremely difficult.

Another clue to the behaviour of the faulty HD is its power on time of only 61 hours. Quite possibly this is a QC problem. Typical manufacturing errors would include installation of incorrect parts, eg wrong resistor values.

As for measuring the output of the read heads, is the output from the preamp before or after the AGC?

Re: Missing VCM current sense resistor - servo calibration?

October 30th, 2012, 2:09

Your supply is below +12V that's why your having a problem with your seagate HDD try checking it's output voltage and see if the power is +12V or not.
Post a reply