» Reparar St3500320AS (firmware SD15)

Algunos productos de Seagate, incluyendo algunos discos duros Barracuda 7200.11, tienen un defecto en su firmware. En determinadas circunstancias, los datos del disco quedan inaccesibles al encender el ordenador. Puedes comprobar si tu disco está afectado desde el siguiente enlace http://seagate.custkb.com/seagate/crm/selfservice/search.jsp?DocId=207931. Según Seagate, una vez que se ha producido el error y no se puede acceder al disco, no se puede recuperar la información sin la intervención de Seagate. Dicen también que los datos del disco no se ven afectados y que pueden recuperarse una vez se ha solucionado el problema del disco. También dicen que el problema está causado por el firmware, junto con el proceso de test durante la fabricación.

La causa del problema según Seagate es la siguiente:

This condition was introduced by a firmware issue that sets the drive event log to an invalid location causing the drive to become inaccessible.

The firmware issue is that the end boundary of the event log circular buffer (320) was set incorrectly. During Event Log initialization, the boundary condition that defines the end of the Event Log is off by one. During power up, if the Event Log counter is at entry 320, or a multiple of (320 + x*256), and if a particular data pattern (dependent on the type of tester used during the drive manufacturing test process) had been present in the reserved-area system tracks when the drive's reserved-area file system was created during manufacturing, firmware will increment the Event Log pointer past the end of the event log data structure. This error is detected and results in an "Assert Failure", which causes the drive to hang as a failsafe measure. When the drive enters failsafe further update s to the counter become impossible and the condition will remain through subsequent power cycles. The problem only arises if a power cycle initialization occurs when the Event Log is at 320 or some multiple of 256 thereafter. Once a drive is in this state, there is no path to resolve/recover existing failed drives without Seagate technical intervention.

For a drive to be susceptible to this issue, it must have both the firmware that contains the issue and have been tested through the specific manufacturing process.

Pues bueno, a pesar de lo que dice el último párrafo, mi disco estaba afectado por este problema y de un día para otro me encontré sin los datos. Desde Seagate recomiendan actualizar el firmware, pero eso sólo sirve antes de que se produzca el problema, después no hay nada que hacer. Además, la primera versión del firmware que corregía el problema tenía otro fallo que dejó inutilizados algunos discos después de cambiar su firmware.

Bueno, en realidad sí que hay algo que se pueda hacer. Buscando por Internet encontré información de gente que había conseguido reparar el disco. Lo que había que hacer es conectar a través del puerto serie del disco y enviar una serie de comandos para sacar al disco del estado de bloqueo en el que se encontraba. Para ello se necesita un adaptador RS232 a TTL para conectar el ordenador al puerto serie del disco duro. Estos adaptadores los venden hechos, se basan en el chip MAX232 o MAX3232. Hay que conectar la línea de Tx, Rx y GND del adaptador al disco y enviar los comandos adecuados.

No llegué a saber si Seagate se haría cargo de la reparación, pero tampoco me gustaba la idea de enviar mi disco "vete tú a saber donde" y confiar en la profesionalidad de Seagate para que me lo devolvieran íntegro. Contacté con algunas empresas de recuperación de datos y me dijeron que desde 300 € podrían recuperar mis datos. Como el proceso no era demasiado complicado, preferí hacerlo yo mismo.

Todo esto lo averiguó un grupo de gente que lo publicó para que todos pudiéramos reparar nuestros discos. Mi aportación es el método que usé para conectar los cables al disco duro. A falta de un conector a medida, lo que hice fue utilizar un viejo conector de alimentación de una disquetera, aprovechando los terminales metálicos del conector junto con sus cables. Primero con algún instrumento pintuagudo saqué los conectores metálicos de la funda de plástico. Con ayuda de unas pinzas cerré un poco los terminales para que encajasen bien en los pines del disco duro. Con tubo termoretractil se evitan posibles cortos entre los tres terminales, pues quedan muy próximos.

El proceso para reparar el disco lo podéis encontrar aquí: http://www.msfn.org/board/index.php?showtopic=128807.

Yo seguí esos pasos y pude "resucitar" el disco :-)