Ensambla tu Rack de Raspberry Pi
Crea prototipos de Alexa Voice Service de forma rápida y elegante.
A medida que mis proyectos basados en la placa Raspberry Pi crecen, el número de placas que tengo suele incrementar también. Mientras las Raspberry se acumulan, el espacio en el escritorio se reduce y la gestión de los periféricos que conectamos a las placas se complica.
En la actualidad mi configuración de prototipos consiste en tres placas Raspberry Pi, una de la versión 3B+ (1GB de Ram) y dos de la generación más reciente 4B (4GB de Ram cada placa). Con este número aún reducido de tarjetas, la organización de mi escritorio se me empezaba a escapar de las manos. Este artículo se enfoca en describir de forma simple la solución que he encontrado para mí, y que creo puede ser útil para otros usuarios que ven su laboratorio de Raspberry acercarse cada vez más al caos y la complejidad de gestión.
La eficiencia como meta
Existen dos problemas fundamentales con un laboratorio en el cual crecen la cantidad de placas con las que creamos prototipos:
- El espacio que ocupan las tarjetas con sus respectivas fuentes de poder (y cajas en algunos de los casos).
- La cantidad de dispositivos de entrada/salida que conectamos a cada una de las placas para su gestión (ej. monitores, ratones, teclados, micrófonos, altavoces, etc.)
Organización de las tarjetas
Para resolver el primer problema me he decidido por la organización en un rack o caja de acrílico para tarjetas Raspberry Pi. Existen varios modelos que hacen el trabajo perfectamente, pero yo he querido mantener los costos bajos y he terminado eligiendo un cajetín que podemos conseguir en Amazon por poco menos de 20€. Este rack es compatible con tarjetas modelo 3 o 4 y puede abarcar hasta 4 tarjetas a la vez.
Solo abrir la caja que contiene las piezas para ensamblar el rack puede resultar un poco intimidante por la cantidad de elementos que contiene. Nada más en disipadores de calor tenemos casi 30 piezas.
Dentro de la caja tenemos a disposición un pequeño manual de instrucciones (énfasis en “pequeño”) para guiarnos en el proceso de ensamblaje. De la misma forma es posible conseguir en YouTube algunos vídeos de otros usuarios documentando el proceso de montaje paso a paso con cajas similares.
Con destornillador y placas listas, no queda más que ponerse manos a la obra. El primer paso es colocar en cada una de las tarjetas los disipadores de calor correspondientes a cada modelo. El proceso es bastante simple aunque hay que tomar en cuenta que varía para cada modelo de placa. En el siguiente diagrama se pueden ver los detalles para ambos modelos.
Como he mencionado antes, mi laboratorio consiste actualmente de tres tarjetas, dos del modelo más reciente (4B | año 2019) y una placa un poco más antigua (3B+ | año 2017) que podemos ver en la siguiente imagen ya con los disipadores en su lugar.
El siguiente paso consiste en identificar la placa de acrílico que corresponde la base inferior del rack y ensamblar el primer nivel con la tarjeta elegida. En mi caso he decidido dejar para este primer nivel la tarjeta más antigua del grupo, pero da exactamente igual.
Es importante mencionar que otra de las ventajas de este cajón es que ofrece la posibilidad de proporcionar ventilación a cada una de las placas. Esto es algo que no provee por defecto (y creo que ni siquiera contempla el espacio en su diseño) la caja oficial de la Raspberry Pi. En el modelo 3B+ no es un mayor problema ya que se calienta muy poco, pero el modelo 4B incrementa su temperatura rápidamente una vez se pone en marcha.
La posición de los pines del ventilador importan, y aunque en el manual de instrucciones se indica que debemos utilizar los pines 1 (rojo) y 3 (negro) de la primera fila, es cierto que también podemos implementar una configuración alternativa de pines para graduar la velocidad a la que giran los ventiladores.
La configuración sugerida en el manual me ha resultado bastante ruidosa (muy subjetivo esto) y quizás mas apta para épocas de verano. En mi caso he optado por una configuración de menores revoluciones y menor ruido: pin 1 (rojo) de la segunda fila y 3 (negro) de la primera fila.
Una vez completado el primer nivel, ya todo el misterio de este rompecabezas se ha revelado y es solo cuestión de repetir el proceso hasta que hayamos ensamblado todas las tarjetas que tengamos a mano.
Gestión de periféricos
El segundo problema tiene igualmente más de una forma de resolverlo y depende de distintos factores. Lo que resulta casi universal es que necesitaremos un dispositivo de salida de vídeo (monitor), un dispositivo salida de salida de audio (altavoces), entrada de audio (micrófono) y periféricos de control (ratón y teclado). Si lo tenemos por casa todo nos vale sin problemas. Yo he podido reutilizar alguna cosa y también he tenido que adquirir algún elemento adicional.
Para lograr tener una configuración completamente independiente y portable de mi laboratorio, me he decantado por los siguientes dispositivos:
- Monitor portátil (UCMDA 15.6 Pulgadas HDMI-Full HD 1080LED): al momento de escribir este artículo ya el modelo exacto de mi monitor no se encuentra disponible en Amazon, pero existen un sin fin de opciones similares en precio (yo pagué poco menos de 180€) y características. Si el rack consiste exclusivamente de Raspberry Pi 4, hay que tener en cuenta que necesitaríamos una salida Micro HDMI o en su defecto un adaptador.
- Combo teclado y ratón inalámbricos con nano receptor USB plug and play (Logitech MK470): lo más importante para mí a la hora de elegir ratón y teclado ha sido la posibilidad de controlar ambos dispositivos con un solo nano receptor USB. Es increíble lo fácil y rápido que es cambiar de mandos con el nano receptor. A su vez, el modelo de Logitech es bastante compacto y carece de cables, lo que contribuye a la meta general de maximizar el espacio y mantener el orden del espacio de trabajo por unos 45€.
- Micrófono USB (SIENOC USB 2.0): un mini micrófono USB en Amazon se puede conseguir por unos 6€ aproximadamente. La gran ventaja del mini micrófono es, una vez más, la portabilidad del prototipo.
- Altavoces (Creative A80): aunque inclusive unos auriculares de cable son más que suficiente para realizar las pruebas, idealmente podremos contar con algún tipo de altavoz equipado con conector de 3.5mm para obtener una mejor experiencia de usuario. Los míos son de hace unos 9 años y no tengo ni idea de cuánto me costaron en su momento. Creo que los compré en el desaparecido Saturn.
Cambiar de una tarjeta a otra es tan simple como mover de lugar dos nano receptores USB (teclado, ratón y micrófono) y un conector de vídeo (HDMI para la Raspberry Pi 3B+ o Micro HDMI para la 4B). En mi caso, todas las tarjetas se encuentran conectadas a sus fuentes de poder constantemente pero en el caso de los modelos iguales (la Raspberry Pi 3B+ se conecta vía microUSB y las 4B vía USB C) es posible reutilizar la fuente de poder.
El laboratorio portátil completo y ensamblado ocupa un tercio del espacio total de mi escritorio. Tomando en cuenta que estamos hablando de 3 ordenadores independientes, creo que no es solo una solución insuperable sino que solo continúa mejorando con el tiempo. Recordemos que integrar tarjetas adicionales implicaría que la caja acrílica continúe creciendo hacia arriba y sin ocupar un centímetro adicional en nuestro escritorio. ¡Insuperable!
¿Realmente necesitamos tanto cacharro?
Es cierto que una vez puestas las tarjetas en marcha, la gestión se puede simplificar de gran manera con servicios de sesión remota como SSH y VNC, sin embargo yo me encuentro una y otra vez necesitando de un teclado y un ratón para poder realizar diversas gestiones de control. Especialmente cuando hago el formato de una de las tarjetas para realizar la instalación en limpio de un entorno nuevo.
Dicho esto, una vez las tarjetas se encuentran listas para operar, la mayor parte de mi tiempo se pasa en el Terminal de mi ordenador principal.
Conclusión
El rack de acrílico para las Raspberry Pi es una solución ideal para todos los que buscamos maximizar el espacio de trabajo y minimizar los periféricos de gestión. El costo del rack es realmente bajo, el uso de periféricos de gestión (que muchas veces tenemos rodando por casa) incrementa la versatilidad de la configuración y el ensamblaje del laboratorio es realmente divertido. Sin duda una opción atractiva para los que creamos prototipos de dispositivos con placas de Raspberry Pi.
Hablando de Prototipos
Mi día a día se enfoca en la creación y prueba de prototipos basados en el Servicio de Voz de Alexa. Para aquellos que tienen curiosidad de cómo se crean dispositivos similares a los de la familia de Amazon Echo, Sonos, Bose, y muchos otros, solo basta con explorar los repositorios de GitHub de Alexa y ponerse manos a la obra con un ordenador o con placas como la Raspberry.
¿Tienes algún proyecto en mente para desarrollar con el Alexa Voice Service? ¿Quieres saber por dónde empezar? Déjame saber en los comentarios.
Gracias por leer,
Juan.
Diseñando para la Voz es una iniciativa personal de Juan González Ponce que trae contenido relacionado al mundo del desarrollo de Alexa Skills para el servicio de Amazon, en Castellano, con la finalidad de compartir ideas y lecciones aprendidas en el camino.