miércoles, 21 de diciembre de 2011

Jugando con el puerto serie de los discos duros (II)


Siguiendo con la entrada que escribí hace unos días vamos a ver  una serie de comandos que podemos ejecutar en la consola a la que conseguimos acceder.


Conexionado adaptador con hd.
Los comandos se distribuyen por una serie de niveles que son los siguiente:

Nivel T - Certification Tests.
Nivel 1 - Memory Control Commands.
Nivel 2 - Drive Level Commands
Nivel 3 - Seeking Commands
Nivel 4 - Servo Tracking Commands
Nivel 7 - Adaptive Control Commands
Nivel 8 - Special Packwriter Commands
Nivel 9 – Drive Level Command (Full-slipping Defect Management Mode)

Además de estos niveles existen 2 más el On-line Commands y Common Commands, para acceder a los niveles tenemos que escribir /NumeroNivel, por ejemplo /3, y ya podemos ejecutar los comandos pertenecientes a ese nivel.

Como poner todos los comandos haría la entrada muy larga voy a poner algunas capturas de pantalla de diversos comandos.
conexion disco duro puerto serie
Ejemplo de ejecución de varios comandos.
Aclarar que toda la información que he puesto la he encontrado en un manual en internet y casi todo estaba en ingles y ruso. He probado muchos de los comandos y algunos no funcionan por lo que si vais descubriendo cosas nuevas las podéis comentar y lo agregaremos a la entrada.

Tenéis la opción de ver el Manual online o de descargarlo.

lunes, 12 de diciembre de 2011

Jugando con el puerto serie de los discos duros (I)

Recientemente he conocido que los discos duros SATA de Seagate/Maxtor traen un puerto serie al que nos podemos conectar y por el que podemos enviar multitud de comandos de diagnóstico y demás.

pinout sata
Pinout puerto serie
Existe un modelo de hd, el Seagate Barracuda 7200.11, que deja de ser reconocido por el sistema sin previo aviso, debido al parecer porqué se llena un buffer de logs interno, y mediante el envío de comandos por dicho  puerto serie podemos volver ha hacer que funcione y  sea reconocido nuevamente por el sistema.

Hay multitud de webs que explican como hacerlo por lo que no voy a profundizar más en el asunto, lo que si quiero ver más detenidamente es cómo conectarnos al hd para poder enviarle comandos y trastear un poco con él.

Necesitamos un conversor de puerto serie RS-232 a TTL, podéis usar uno basado en el chip MAX232 que se puede encontrar en ebay sin problemas o también directamente de usb a TTL, para equipos que no tengan puerto serie, que también se encuentran muy fácilmente.

conversor rs-232 a ttl
Conversor USB a TTL

Para conectar el disco al conversor tenemos que cruzar el pin Rx con el Tx de ambos dispositivos ya que ambos se comportan como DTE y el Gnd directamente entre uno y otro.

Una vez que lo tenemos todo conectado, incluido el conversor al pc, vamos a conectarnos vía PuTTY como ya hemos visto en un anterior post. Antes de seguir comentar que al conectar el conversor al pc este nos lo detectará e instalará automáticamente y si vamos al administrador de dispositivos nos debe de haber aparecido un nuevo puerto COM, en mi caso el COM7.

Para conectarnos con PuTTY utilizamos los siguientes parámetros:
-Speed: 9600
-Data bits: 8
-Stop bits: 1
-Parity: None
-Flow control: None

Todos los discos duros con los que he probado van a 9600 pero puede darse el caso que halla que configurarlos a una speed de 38400, eso nos daremos cuenta cuando nos conectemos que solo veremos caracteres raros.

Los pasos para conectarnos al disco son los siguientes:

1º Conectar el disco al conversor y este al pc.
2º Conectarnos con el Putty al puerto COM que nos aparezca como nuevo.
3º Una vez que estamos conectados con el Putty (tendremos la pantalla en negro) pinchamos la alimentación del disco duro y este arrancará.

Ahora ya estamos conectados al disco y nos debe aparecer algo así:

conexion disco duro puerto serie
Sesión puerto serie hd Seagate
Llegados a este punto pulsamos Ctrl + Z y nos salimos de esta especie de menú de 2 opciones. Ahora es cuando ya podemos interactuar con el disco y enviarle comandos desde los distintos niveles de gestión que tiene. Niveles y comandos que veremos en un próximo post.

Segunda parte del post: Ver

Related Posts Plugin for WordPress, Blogger...