miércoles, 19 de diciembre de 2012

Raspberry Pi en LU7HZ (Continuación...)

Primeros tiroteos con la Raspberry Pi recientemente llegada.
Lo primero que hay que conseguirse es una SD de al menos 2 GBytes, preferentemente de 4 GBytes y de ser posible de 8 GBytes.
Es esencial para generar el file system con el que operará.
Para poblar la tarjeta SD hay que bajarse del sitio de Raspberry Pi alguna de las distribuciones, en mi caso elegí la denominada Wheezy.
Se trata de distribuciones Debian con distintas opciones de compilación y configuración, el mejor compromiso daría la impresión que la dá esta. Seguí las instrucciones e hice la generación por medio del programa Win32-DiskImager. Al principio puse la tarjeta SD en el slot que tiene mi laptop al efecto, curioso pero el Win32-DiskImager no la reconocía... Luego utilicé un conversor SD a USB y ahi la reconoció sin problemas.
Luego hay que seguir las instrucciones para generar la imagen (que no es una mera copia) en la tarjeta SD de forma que está termine conteniendo un filesystem "booteable".
Un teclado y mouse USB, junto con un televisor que soporte HDMI es lo que se necesita, además de la tarjeta SD, para traer por primera vez a la vida a la placa. Se necesita además darle alimentación; y para eso utilicé una fuente de telefono celular capaz de entregar 5V a 1A de continua, también probé con un conversor 220Vca-USB que son bastante comunes ahora mas un cable USB/mini-USB. Ambos anduvieron igualmente bien.
En mi caso solo un televisor en la casa tiene HDMI, ninguno de los monitores de PC que hay lo tiene. Por otra parte un conversor VGA-HDMI vale mas que la placa misma asi que está fuera de la conversación.
Sin embargo, luego del primer boot es posible configurar en la forma mas básica la placa con pasos esenciales como establecer el reloj y la zona de tiempo (esencial para una variedad de procesos administrativos del Linux). Otras actividades importantes en esta primera configuración es comandar que se formateara el resto de la tarjeta SD para incorporar al filesystem (tal como queda luego de la imagen solo 2 GBytes son poblados y quedan visibles). También el asignar la password al usuario default (pi), que no opera como usuario root; cosa que hay que tener en cuenta porque para hacer la mayor parte de las tareas administrativas hay que abrir una terminal root o prefijar todos los comandos como argumentos del comando  "sudo".
En estas condiciones la Raspberry Pi "levanta" (bootea) sin inconvenientes y es posible activar su interfaz gráfica con el comando "startx". En modo gráfico se la nota un poquito pastosa, y determinados comandos claramente llevan al procesador al 100% (lo que se ve en un pequeño indicador del bar). Si alguien se anima a este proceso sin demasiados conocimientos de Linux es importante recordar que el riesgo de dañar la placa con todos estos procedimientos es nulo y que lo peor que puede pasar es que haya que grabar la imagen en la tarjeta SD y empezar todo de vuelta.
El siguiente paso fue dotar a la placa de conectividad de red; para ello utilicé un "dongle" WiFi USB miniatura TPLink WN-723N. No hay un término adecuado equivalente a "dongle" en español desde que nos quitaran por la fuerza el uso del término "pituto", largamente utilizado en un resonante crimen y arruinado en su utilidad para denominar objetos como este; no queda otro remedio que claudicar al término en inglés. Como sea, es cómodo, pequeño y de bajo perfil (aunque supongo que cualquier otro mas o menos moderno debe andar bien también). NO tiene demasiada potencia y por lo tanto tiene que colocarse relativamente próximo al router WiFi (en mi caso unos 6 o 7 metros, en otra habitación). Si bien reconoció correctamente al dongle no conectó con el router, tuve que hacerlo manualmente via la interfaz gráfica; luego aprendió a hacerlo sola en cada reboot. Por ahora tengo una configuración que asigna el número IP dinámicamente por DHCP, pero eso seguramente lo voy a tener que cambiar pronto para asignarle una dirección IP fija.
Uno de los problemas que tiene la distribución es que trae dos Web browser, ambos tan elementales que a duras penas se los puede utilizar. Por ejemplo ninguno de los dos me permitía revisar mi correo en Hotmail por no soportar JavaScript, y loggearme en Yahoo por no soportar "cookies" y asi sucesivamente. Alcanzan para abrir algun archivo HTML con instrucciones y poco mas.
Intenté bajar Google Chrome pero no existe una versión para la Raspberry Pi; sin embargo existe una distribución llamada "Chromium" que está compilada desde los sources de Chrome especialmente para la Pi, y puede ser instalado con el gestor de herramientas Debian (apt-get o dpkg); altamente recomendable hacerlo y además rapidamente.
Cuando quedó andando empecé a considerar el espinoso y ciertamente de corto plazo hecho que estaba trabajando con la placa pegado al TV, en el living, usando una silla como mesa y una silla mas pequeña como silla. Ciertamente una situación con pocas perspectivas de poderse prolongar demasiado.
Por otra parte llevarme el TV a otra parte de la casa para continuar con las pruebas entontró una firme y decidida negativa de toda la familia. La placa tiene una salida de video VGA, concedo que no la probé aún, pero mis expectativas que sea util como soporte de video para el uso común son bajas por problemas de resolución.
Aprovecho que la placa tiene soporte instalado para XWindows (X11) asi que instalé en una máquina Windows 7 (y luego en varias otras con Win 7, Vista y XP) el paquete open source Xming, las instrucciones de instalación son básicamente seguir las instrucciones con una importante salvedad, al instalar hay que decir que NO instale soporte SSH (y eso DIFIERE del default). El soporte SSH a instalar es Putty, que en mi caso lo tengo instalado en todas las máquinas puesto que es mi emulador Telnet/SSH/Raw preferido.
Una vez instalado el Xming hay que abrir una sesión SSH configurando Connection/SSH/X11 con el check en permitir forward X11 ("Enable X11 forwarding") y "localhost:0" en el destino ("X display location"). Luego abrir una sesión SSH con el usuario pi y la password que se haya elegido.
En ese momento lo que se tiene es un "prompt" de shell, para activar el entorno gráfico la tentación es indicar "startx" pero eso es un error porque no se trata del entorno gráfico sino del servidor gráfico y la instrucción es solamente válida con conexión local. Hay que habilitar el entorno gráfico con "lxsession" y .. voila! .. el entorno gráfico de la Pi en cualquier parte. Bueno, ... en cualquier parte que haya una PC, lo que en cierta manera anula el propósito de la placa en primer lugar; asi que me persuadí que es una situación temporaria mientras la configuro completamente (cosa que llevará unos dias) y consigo un monitor con HDMI.
Pero con X11 uno puede poner la placa entonces, ya si mouse ni teclado y sin conexión a ningún TV en virtualmente cualquier parte donde exista un toma de CA donde conectar la fuente y que quede razonablemente cerca del router Wifi. En mi caso para proteger la placa la puse dentro de una vieja jabonera plástica donada para la causa por María (sospecho que el hecho de ser el ultimo obstaculo para removerme del paso y liberar el televisor aceleró el regalo).
Una vez configurado de esta forma y pudiendola acceder libremente tendré que recorrer el lento camino de ir configurando todos los servicios correctamente (IP fija. firewall, samba, servidor FTP, etc) y posteriormente empezar a instalar aplicaciones. En primera impresión me dá la idea que la interfaz gráfica no es especialmente agil, asi que tendré que evaluar mi idea si eso es viable por ejemplo para un logger de concurso; pero por ahora solo son impresiones.
La breve interacción que he tenido con la máquina me confirma algo que sospechaba, es un concepto revolucionario y está destinada a ser la Sinclair ZX81 de esta parte del siglo XXI; estoy seguro que mucha gente que jamás hubiera pensado que utilizaría este tipo de dispositivos tendrá su primer contacto a partir de esta placa y que los posibles usos encontrados por la imaginación de sus dueños superará larga y ampliamente cualquier idea que pudieran tener sus creadores al concebirla. No me preocupa especialmente el tema de performance porque estoy trabajando sobre la máquina tal como "booteo" inicialmente, con nula optimización de nada, creo que hay mucho que extraerle aún en términos de performance. Seguramente las aplicaciones de radio requeriran por otra parte una conexión local física y no operar el entorno gráfico a traves de la red, por muy local que sea el ancho de banda está un orden de magnitud o dos por debajo de lo  que implicaría usar localmente teclado+mouse+monitor HDMI.

2 comentarios:

  1. instalaste una maquina virtual de windows o como?

    ResponderEliminar
  2. No, no hay maquinas virtuales de Windows involucradas. El Wheezy funciona en la placa de Raspberry Pi y ambos paquetes (Xmig y Putty) tienen versiones para Windows. En alguna prueba anterior, antes que me llegara la placa RBPI habia cargado un Wheezy bajo una emulación de una RBPI bajo QEMU pero solo fue una prueba de concepto y la forma de probar algunos paquetes que pensaba usar. Slds Pedro/LU7HZ

    ResponderEliminar

Buscar este blog

Páginas vistas en total