Documentos de Académico
Documentos de Profesional
Documentos de Cultura
El firmware de algunas series de discos Seagate (especialmente la serie Barracuda 7200.11 y algunas
series de Momentus para porttiles) vienen con un defecto que provoca que el disco se congele y deje
de ser detectado por el PC. Para hacer frente a este problema hay diversas guas publicadas en la red,
pero generalmente carecen de precisin en algunos conceptos y, en general, les falta claridad, as que
he decidido redactar esta gua explicando el proceso de forma ms fcil e inteligible.
El problema
Realmente, existen diversos casos distintos en los que el disco deja de funcionar. Entre ellos, los ms
comunes son:
Error LBA 0: En este caso la BIOS detecta el disco pero indica que su capacidad es de 0 bytes.
Error BSY: La BIOS no detecta el disco duro en absoluto, porque ste indica que est ocupado
(BuSY)
Bloqueo del motor u otras averas fsicas. En estos casos la solucin no resolver el problema, pero
el proceso siguiente servir para diagnosticarlo.
La causa
Un disco duro, adems del espacio reservado a datos del usuario, contiene una particin especial
dedicada a informacin de autodiagnstico (SMART) que en situaciones normales se utiliza para
marcar los sectores defectuosos y otros problemas encontrados. Esto sirve para evitar en lo posible
fallos catastrficos, siendo el propio disco duro lo suficientemente inteligente como para evitar perder
datos y/o avisar cuando est a punto de sufrir un problema grave. Pues bien, el firmware que viene con
estos modelos de disco tiene un error que provoca que la particin de SMART se corrompa, dejando el
disco inutilizable. Seagate public en su momento una actualizacin del firmware para estos discos que
evitaba el error. La mala noticia es que esta actualizacin evita que el problema aparezca, pero una vez
que el problema aparece es imposible actualizar el firmware. Por tanto, a no ser que seas un poco
paranoico o que ya conocieras el problema con anterioridad, es muy poco probable que hayas
actualizado el firmware sin encontrarte antes tu disco duro convertido en un bonito pisapapeles. Por
supuesto, cuando el problema aparece los datos no se han perdido, ni muchsimo menos.
La solucin
Dado que el origen del problema est en los datos de la particin SMART, la forma de solucionar el
fallo una vez ha aparecido va a consistir en devolver esta particin a su estado de fbrica. Como el
disco no es accesible, dado que la BIOS no lo reconoce, vamos a utilizar un puerto serie que incorporan
estos modelos, que est ah precisamente para tareas de diagnstico y reparacin de este tipo. Las
conexiones del disco duro tienen ms o menos esta apariencia:
Material necesario
Para realizar esta operacin necesitaremos:
Un puerto USB libre en un PC
Un conversor de USB a UART, como ste:
Tambin nos sirve un mdulo Arduino, del que usaremos los pines GND, TX y RX con el mismo
cometido:
Tres cables de cobre, con terminales que nos permitan conectar el UART al disco. En nuestro caso
hemos usado puntas de prueba (test hooks) como estas:
Procedimiento
1. (Slo si el disco es de 3,5) Desatornillamos la placa PCB del disco para desconectarla por
completo de ste.
Si nos saltamos este paso y el disco tiene el error de BSY, no podremos acceder a la consola de
diagnstico en el paso 7.
2. Conectamos el adaptador UART al puerto serie del disco.Puedes basarte en el cdigo de colores
de las imgenes:
PC-TX ==> HDD-RX
PC-RX ==> HDD-TX
PC-GND ==> HDD-GND
NO es necesario conectar el pin de VCC.
3. Conectamos el adaptador UART al puerto USB.
4. Conectamos la alimentacin SATA al puerto SATA-Power del disco duro.
5. Abrimos putty (tambin puedes usar hyperterminal u otro programa de terminal, siempre que uses
los parmetros adecuados) y nos conectamos al puerto serie correspondiente al adaptador UART,
usando la siguiente configuracin:
Velocidad (Speed): 38400 baudios
Bits de datos (Data bits): 8
Bits de parada (Stop bits): 1
Bits de Paridad (Parity): Ninguno/None
Control de flujo (Flow control): Ninguno/None
6. Accedemos a la consola de diagnstico del disco duro, pulsando Control + Z (en putty). Aparecer
un prompt en la consola:
F3 T>
7. Accedemos al nivel de operacin 2, escribiendo /2. El prompt cambiar.
F3 T> /2
F3 2>
8. Esperamos unos segundos, y detenemos el motor del disco (o le hacemos saber a la PCB que est
detenido, si la tenemos desconectada del disco), envindole la orden Z.
F3 2> Z
Aqu el disco tardar un momento y devolver un resultado. Si devuelve un error, es posible que
hayamos ido demasiado deprisa. Vuelve a emprezar y espera ms tiempo antes de enviar la orden de
parada del motor.
9. (Slo si hemos desconectado la PCB en el paso 1) Con cuidado de que no se desconecte ningn
cable, volvemos a conectar la placa PCB al disco duro. Para ello, la colocamos en su sitio y la