Cómo configurar una red WiFi desde el terminal

A raiz de un comentario, he decidido poner esta entrada para explicaros cómo configurar una red WLAN desde el terminal sin tener que depender de que la distribución pertinente lo reconozca y configure automáticamente. El proceso es muy sencillo.

Ejecutamos el comando lsusb antes y después de conectar el dongle WiFi. Como veis el sistema reconoce el dispositivo USB como WLAN Adapter pero obviamente no lo inicializa y no tenemos red. Esto último podemos comprobarlo ejecutando el comando ifconfig o haciendo un ping a una dirección cualquiera.

Lo primero es comprobar si detectamos nuestra red WiFi, y esto lo hacemos mediante el comando iwlist wlan0 scan | grep ESSID

Ahora que ya hemos comprobado que vemos nuestra red habrá que configurar los parámetros, los cuales configuraremos ejecutando sudo nano /etc/network/interfaces
Os cuento brevemente los parámetros que he escrito:

  • auto wlan0 Esto sirve para que la interfaz se inicie automáticamente al arrancar el sistema.
  • iface wlan0 inet dhcp Esto es para obtener una dirección IP automática mediante DHCP.
  • wpa-ssid  Este es el nombre SSID de vuestra red WiFi.
  • wpa-psk  Y esta es la contraseña de la WiFi.

También hay que comentar (escribir un # delante) cualquier linea que pudiera existir previamente en el fichero donde aparezca wlan0 o wpa-roams. Guardamos el fichero con CTRL X y ejecutamos el comando sudo ifup wlan0 para poner la WiFi a funcionar.

Como veis ahora al ejecutar el comando ifconfig nos muestra una dirección IP en la interfaz wlan0 (en mi caso 192.168.0.241), que es la WiFi. Si volvemos a hacer un ping esta vez sí que recibimos respuesta.

Y al haber indicado los parámetros de configuración en el fichero de interfaces éstos seguirán allí la próxima vez que reiniciéis vuestra Raspberry.

Emulación de juegos usando RetroPie

Continuando con mis pruebas de emuladores para nuestra querida Raspberry hoy toca probar RetroPie, del que tanto se habla y tanto bueno se dice. Podéis descargar la última versión desde este enlace. Yo en mi caso he preferido probar una versión supuestamente estable, así que he bajado la RetroPie SD-card image for Raspberry Pi 1 Version 2.6.

Después de grabar la imagen de RetroPie a mi tarjeta SD la he metido en mi Raspberry (Raspberry 1 modelo B+) y al arrancar no pasaba de una bonita pantalla en negro ¿el motivo? uso un convertidor HDMI – VGA para poder conectar mi monitor. Así que si vosotros también lo usáis seguramente ya conozcáis la solución: editar el fichero config.txt que se encuentra en la partición BOOT de la tarjeta SD. Como veis la solución funciona y puedo entrar a ejecutar RetroPie sin problemas.

El menú es bastante sencillo a la vez que elegante, y que la imagen de fondo cambie dependiendo del sistema que tengamos seleccionado es un detalle bastante curioso. Como punto negativo diré que una vez dentro de los emuladores el menú es bastante feo con una interfaz tipo lista en color gris. Recién instalado, RetroPie viene con unas versiones de Doom, Duke Nukem 3D, Quake y Quake 3 Arena, todos ellos en el emulador llamado Ports y aquí podéis ver un video del Quake 3.

Como he dicho utilizo un adaptador VGA y por defecto RetroPie intenta sacar el sonido por HDMI por lo que de primeras no oía nada. Lo he podido solucionar rápidamente ejecutando el comando sudo raspi-config luego seleccionando la opción Advanced Options y finalmente Audio donde seleccionaremos Force 3.5mm (‘headphone’) jack Ahora para probar las roms he copiado directamente unas de NES en un pendrive con formato FAT32. Lo curioso es que al meter el pendrive en él se crean una serie de subdirectorios por cada uno de los sistemas que puede emular, pero aunque tenía las roms en el pendrive no se copian a su carpeta correspondiente ni se pueden ejecutar desde él. En mi caso he tenido que mover a mano los ficheros .nes hasta la carpeta /home/pi/RetroPie/roms/nes y luego volver a arrancar el programa.


Como veis RetroPie ve que existen juegos en la carpeta de NES y entonces su menú aparece con las correspondientes ROMs. Y no me diréis que no se mueve nada bien el Contra ¿eh?

Tened en cuenta que por defecto RetroPie no expande el sistema para que ocupe toda la tarjeta SD, por lo que si vais a empezar a meter ROMS en ella es recomiendo ejecutar sudo raspi-config y luego seleccionar la primera opción Expand Filesystem o de otro modo os quedáis rápidamente sin espacio.

Una última característica que me quedaba por comentar es el llamado SCRAPPER que sirve para que (teniendo RetroPie conectado a internet) se descarguen las carátulas e información sobre nuestros juegos, lo que le da un aspecto mucho más chulo a todo el conjunto. La búsqueda la hace por el nombre del fichero, pero si alguno no coincide nos deja editar el título. Aquí podéis ver cómo queda el menú de NES después de haber ejecutado el scrapper.


Como conclusión diré he tenido que grabar la imagen tres veces porque el sistema se corrompe y no funciona bien o no arranca, lo que obviamente no me gusta nada. Luego está ee tema de las ROMs que tampoco me acaba de convencer ya que hay otras distribuciones en las que puedes jugar directamente desde un pendrive sin complicaciones. Lo bueno que le veo es lo del scrapper y que el sistema por debajo no deja de ser un Raspbian, con todas las ventajas que ello ofrece.

Instalando y configurando XBian

A raiz de un comentario con un problema con las instrucciones para instalar y configurar XBian (podéis leer el artículo aquí) de hace ahora casi dos años, he decidido reescribir todo el proceso ya que en este tiempo puede que hayan cambiado muchas cosas. Vamos a ver…

Lo primero de todo es bajar la última imagen de XBian que podemos encontrar en este enlace: http://www.xbian.org/getxbian/

Yo he mi caso he utilizado el método para Mac donde te descargas un pequeño instalador que se encarga de descargar la última imagen e instalarla en la tarjeta SD. He de decir que he tenido que realizar el proceso dos veces porque la primera vez no debió de copiarlo/descargarlo bien ya que al encender la Raspberry el sistema solamente se quedaba con el piloto en rojo y no hacía nada más.


Aquí podéis ver la imagen de inicio. He de decir que como tengo conectado el monitor con un adaptador HDMI-VGA la resolución que ha detectado el sistema no es nada buena, pero después de ir a los ajustes del sistema y seleccionar 1024×768 la cosa ya cambia. 

Ahora voy a probar a reproducir un video HD a ver qué tal va. Este es el ya famoso Big Buck Bunny a una resolución 1920×1080.

Como podeis ver el video se mueve estupendamente y eso que está siendo leído directamente desde un usb, no está copiado en la tarjeta SD. He probado también a adelantar el video 30 segundos un par de veces y no se resiente nada, todo va muy fluido.

Después he conectado mi dongle WiFi y lo he configurado sin ningún problema a través del menú Sistema, así que he podido buscar y descargar actualizaciones. La verdad es que solo he podido descargar un par de actualizaciones porque una de ellas ha provocado un kernel panic que ha hecho que el sistema se colgara y no he podido volver a arrancarlo. Me he quedado sin probar la última de las cosas que quería probar, y es precisamente la que me hizo abandonar XBian en un principio, y no es otra que la función de descarga de subtítulos.

La impresión final que me he llevado es que el sistema se mueve muy fluido incluso en el modelo B+, pero si una actualización puede mandar todo al traste entonces (todavía) no estoy listo para volver a XBian.

Cómo bajar subtítulos automáticamente con subliminal

Tal como os comenté en la última entrada, hoy voy a hablaros de subliminal, un programa que nos permite bajar los subtítulos de nuestras series o películas favoritas desde la línea de comandos. Lo más interesante es que al poder ejecutarse desde la terminal podremos automatizar el proceso de búsqueda y descarga de subtítulos para que cuando termine de descargarse un video se descarguen automáticamente los subtítulos de éste.

subliminal está alojado en github en la dirección https://github.com/Diaoul/subliminal y gracias al último artículo que podéis leer aquí podéis aprender a instalarlo sin problemas.

Una vez instalado subliminal su funcionamiento es muy sencillo. Su sintaxis mínima es subliminal -l <idioma> -d <ruta_destino> <ruta_origen>

Eso quiere decir que si por ejemplo queremos bajar los subtítulos en español de un fichero el comando a ejecutar sería subliminal -l ES -d /ruta_de_destino /ruta_de_origen/fichero

Como veis es importante que el fichero en cuestión conserve toda esa “basurilla” que se suele añadir al hacer el ripeo y que mucha gente elimina para que el fichero quede más bonito. Subliminal utiliza dicha información para localizar el fichero de subtítulo que esté sincronizado con nuestra versión, así que si hasta ahora lo estabais eliminando yo os recomiendo no hacerlo.

Existe otra opción a la hora de ejecutar subliminal (-p) para indicarle un proveedor de subtítulos específico entre los cinco que permite: thesubdb, opensubtitles, addic7ed, podnapisi, tvsubtitles3. Yo en mi caso no lo suelo indicar porque así buscará en todos los sitios y será más fácil encontrar el subtítulo adecuado.

Cómo instalar un programa alojado en GitHub

Hace unos días encontré un artículo que hablaba de un programa muy interesante (del cual hablaré en otra entrada) y me decidí a probarlo. Lo interesante es que dicho programa está alojado en GitHub. Yo no tenía experiencia previa con GitHub, lo que me llevó a escribir este artículo por si vosotros tampoco y puede seros de utilidad.

¿Qué es GitHub? GitHub es un sitio para gestión de proyectos donde los desarrolladores pueden colgar su código, el cual estará accesible para toda la comunidad a no ser que hayan creado una cuenta de pago. Lo bueno de GitHub es que da pie a que otros desarrolladores vean, comenten y ayuden a mejorar el código.

Ahora imaginad que encontrais un programa cuyo código está alojado en GitHub y queréis instalarlo en vuestra Raspberry Pi ¿cómo se hace? obviamente no podemos utilizar apt-get porque el software no estará en los repositorios oficiales, pero aquí os detallo cómo hacerlo.

  1. Lo primero que tenemos que hacer es instalar git mediante el comando sudo apt-get install git
  2. Ahora nos creamos una carpeta en nuestro /home llamada git donde almacenaremos todos los proyectos que bajemos: mkdir ~/git
  3. Después nos vamos a la carpeta que hemos creado con el comando cd ~/git
  4. Es este punto tenemos que descargar (o clonar) el proyecto. Imaginad que queremos clonar un proyecto cualquiera, nos vamos la página de GitHub, lo buscamos y copiamos su URL. Por ejemplo https://github.com/annoyatron255/Game
  5. Ejecutamos el comando de clonado git clone en el terminal con la URL que hemos copiado pero sustituyendo http por git, siendo en mi caso git clone git://github.com/annoyatron255/Game
  6. Esto nos creará una carpeta con el nombre del proyecto que hemos clonado. Cambiamos a dicha carpeta con el comando cd
  7. Y aquí ya depende de cada proyecto. En mi caso al hacer un ls veo que existe un fichero makefile por lo que tengo que ejecutar el comando make para instalarlo ya que es probablemente un programa en C++. Si tuvierais un fichero .py entonces tendrías que usar python.

En la próxima entrada pondremos todo esto en práctica para instalar subliminal, un software la mar de interesante que nos ayudará a bajar los subtítulos de nuestras series favoritas automáticamente. No os lo perdáis.

Modificar las fechas con Touch

Como seguramente sabréis, XBMC (ahora Kodi) permite ordenar las películas de diferentes formas, por ejemplo título, puntuación o fecha. A mi me gusta esta última porque así puedo saber cuales son las películas más recientes. El problema es que Kodi utiliza la fecha de modificación del archivo en lugar de buscar la fecha de estreno utilizando alguna web o servicio.

Pero hay una forma de solventarlo manualmente utilizando el comando touch. Este comando permite hacer varias cosas (como crear un fichero vacío) y una de ellas es modificar la fecha de modificación a nuestro gusto. Es tan fácil como escribir touch -t seguido de la fecha y el nombre del fichero. La fecha tiene que estar en formato YYYYMMDDHHmm donde YYYY es el año, MM es el mes, DD es el día y HHmm son las horas y los minutos.

Por ejemplo, imaginad que hemos incorporado a nuestra biblioteca la película Ahí os Quedáis. Nos vamos a IMDB (por ejemplo) y vemos que la fecha de estreno en España fue el 3 de octubre de 2014. Así pues, en el terminal escribimos touch -t 201410030000 <pelicula> Yo siempre utilizo 0000 para la hora y los minutos porque para las películas es un dato irrelevante.

Lo malo es que Kodi no actualiza estos cambios aunque forcemos una actualización, por lo que si ya la habíamos incorporado a la librería primero tendremos que borrarla y luego volver a añadirla. ¡OJO! no vayáis a borrar el fichero, solo la entrada en la librería.  

Como podéis ver la fecha que muestra Kodi ya es la fecha de estreno, por lo que de este modo podemos tener nuestra colección correctamente ordenada.

Emulación de juegos usando Lakka

Hoy voy a probar una nueva distribución para la Raspberry Pi enfocada en la emulación de videoconsolas y ordenadores antiguos. Se llama Lakka y las capturas de pantalla que he visto me han llamado mucho la atención por su aspecto muy parecido al menú que podemos encontrar en la PS3.

Lo primero es bajar Lakka desde este enlace: http://www.lakka.tv/get/ Tiene una web muy bien montada porque te da a elegir el sistema de tu ordenador y en qué dispositivo lo quieres instalar, y dependiendo de lo que elijas te da a descargar una imagen u otra y además te enseña cómo grabarlo en la tarjeta SD si no sabes.

Una vez copiada la imagen descargada en la tarjeta SD procedo a arrancar. Aquí os dejo un video del primer arranque.

Como veis el menú sí que es muy parecido al que podemos encontrar en una PS3, donde en la barra superior aparecen todos los emuladores disponibles. Dicho menú se mueve con los cursores y los botones son la x y la z.

Me pongo a cotillear en la web cómo meter las ROM y veo que comentan que la WiFi aún no funciona y nos recomiendan conectar la Raspberry por cable ethernet a nuestro ordenador, pero yo me aventuro y me copio la ROM del Super Mario World en un USB y lo conecto en el hub a ver si funciona.

Podéis ver cómo Lakka reconoce perfectamente que es una imagen de Super Nintendo y la coloca bajo su emulador correspondiente, lo que es muy práctico. No lo podéis oír porque uso auriculares con la Raspberry, pero el sonido funciona perfectamente.

Ahora voy a probar el mando de la PS3 porque he leído que es compatible, así que lo conecto mediante USB y arranco de nuevo.

Perfecto. El mando es reconocido a la primera y puedo moverme por los menús con él. Además, al final del video puede apreciarse que si pulsamos el botón home del mando nos lleva al menú, donde podemos guardar la partida así como tomar una captura de pantalla.

Conclusión: Tendría que hacer más pruebas con juegos de otras plataformas, pero Lakka no me ha decepcionado. Creo que aún es una versión beta porque hay cosas que aun no funcionan en los menús y tampoco he descubierto como apagarlo, así que he tenido que estar cortando la corriente, lo que no es nada bueno para el sistema. Si queréis montaros una consola para jugar jueguecillos de los antiguos en vuestro salón, no lo dudéis.