jueves, 16 de mayo de 2013

Tutorial: Convertir un cable bus PATA para usarlo con la Raspberry Pi


Raspberry es uno de los proyectos más interesantes de los últimos años en materia de electrónica/informática/educación. Mucho se ha hablado en Internet sobre ella, y voy a suponer que todo el que lea esto conoce la plataforma.

Una de las cosas que hacen maravillosa a esta pequeña placa son sus pines GPIO (General Purpose Input/Output) que permiten utilizar la Raspberry como si de una placa microcontroladora se tratase, recordando a proyectos como Arduino, de manera que podemos recibir y enviar datos por ellos para interactuar con hardware externo como sensores, motores, LEDs...

Pines GPIO de la Raspberry


Hay multitud de tutoriales sobre cómo programar la Raspberry para usarlos, como este. No es de lo que voy a hablar aquí.

Es probable que tengamos en casa una placa de prototipado como esta:


Y, claro está, queremos usarla con nuestra flamante Raspberry. Pero no tenemos en casa cablecillos hembra para conectarlos a los pines GPIO, que son macho. ¿Qué hacemos? Podemos ir a comprarlos, o...

Más de uno se habrá encontrado por casa con un cable bus P-ATA de alguna placa base antigua. Me refiero a estos cables:



Y habrá pensado... Esto se parece mucho a lo que necesito para la Raspberry. Le hago un agujero con el berbiquí en el pin 20, que no está (ver foto de la derecha) y ya está.

PUES NO. Estos cables están interconectados por dentro de una manera concreta, de forma que varios de sus pines (los destinados a tierra para su función PATA original) están cortocircuitados. Más información aquí. No basta con hacer el agujero en el pin 20. Si hacemos el agujero y conectamos uno de estos cables a la Raspberry sin más, uniremos varios pines que no deberían estarlo y nos la podemos CARGAR y quemar. Mucho ojo.

En resumen lo que vamos a hacer es "abrir" los cables y eliminar esa interconexión entre dichos pines, de forma que nos quede un simple conjunto de cables hembra-hembra.


Materiales: 


Berbiquí pequeño

Pinzas 
Cable Bus PATA
Raspberry Pi rev. 1 o rev. 2


Pasos:


  1. Quitamos la pestaña de plástico que protege uno de los 3 cabezales del cable. Con meter la uña por un lado se quita fácilmente, y si no podemos ayudarnos de un pequeño destornillador,
        pero siempre con cuidado de no romperla.

  2. Separamos el cabezal del cable propiamente dicho. Veremos que simplemente está metido a presión y que no es difícil. Empezamos desde un lado y vamos tirando despacio.

  3. Una vez sacado, veremos que por dentro tiene 3 filas de pines. La fila del medio es tierra, y está conectada a varios de los pines de las otras filas, y por tanto es la que nos molesta. Cogemos las pinzas y sacamos la fila del medio, tirando desde un lado.



  4. Ya tenemos el cabezal "modificado". Ahora simplemente lo reintroducimos en su sitio en el cable. Con cuidado, mirando los agujeros que habían quedado anteriormente. Los pines están en zig-zag, con lo que no hay riesgo de que lo pongamos del revés.

  5. Volvemos a poner la pestaña protectora de plástico que habíamos quitado en el paso 1. No hace falta que ahora quede el cable sujeto con ella, como estaba en un inicio.

  6. Repetimos los pasos 1-5 en los otros 2 cabezales.
Bien, hasta aquí la modificación del cable. Los cabezales que vamos a utilizar son los dos de los extremos, ya que al cabezal central le falta de conectar internamente uno de los pines (el 28).

En uno de ellos (da igual) usamos el berbiquí para hacer un agujero en el hueco que falta (pin 20) y que así pueda conectarse a los pines macho de la Raspberry. El pin que coincida con el hueco en la Raspberry no podremos usarlo, claro, pero no importa porque coincidirá con un pin de tierra y tenemos otros.



Ahora debemos observar el pinout de la Raspberry:

Pinout del GPIO de la Raspberry  rev.1 y rev.2

Según ese esquema, el pin 9 es GND (tierra), en ambas revisiones de la placa. Dicho pin será el que usemos como referencia para conectar nuestro cable, ya que es en el que conectaremos el agujero hecho con el berbiquí.

Es la única manera posible de conectar el bus y que el hueco coincida con un pin de tierra, y esto es porque el pin 34 del bus está desconectado en uno de los cabezales laterales (el que iría a la placa base en caso de usarlo en un PC), y de esta manera hacemos que no nos coincida con ninguno de los pines de la Raspberry.

De esa manera, al final, nos quedaría esta correspondencia de pines en el cable, con respecto a los de la Raspberry:

Y el cable conectado, así:

Ahora ya podemos tirar cablecitos macho-macho desde el cable a nuestra placa de prototipado para hacer un poco el friki y diseñar proyectos.

Espero que a alguien le sea útil. No sé yo si merece la pena hacer todo esto en vez de comprar unos cuantos cables hembra-hembra pequeños o un bus específico, como este, pero allá cada uno. Yo es que me lo paso bien haciendo estas cosas. En fin, un saludo.