Servidor central de películas para una o más tablets con la raspberry pi zero mediante wifi

La siguiente situación es conocida por muchos: vamos a hacer un viaje largo en coche que dura horas, pero los niños no aguantan y al poco rato de haber comenzado ya empiezan a preguntar cuanto queda o si hemos llegado ya. Para hacerles más ameno el viaje se les ponen películas para que vayan entretenidos una buena parte del viaje.

El objetivo de este artículo es reutilizar las tablets android e ipad (también funciona con los móviles) que tenemos por casa para que reproduzcan los vídeos que hay almacenados en una raspberry pi zero mediante wifi. Así los niños estarán entretenidos en el coche, en un restaurante, en la sala de espera espera del médico, etc., además cada uno podrá ver una película distinta y no tendremos que realizar ninguna inversión grande para lograrlo más allá de una tarjeta SD y una raspberry pi zero w.

Lo primero es descargarse la última versión del sistema operativo Raspbian Lite desde la web oficial.

Después hay que grabarla en una tarjeta SD (recomiendo una con class 10). Aquí se explica cómo hacerlo desde varios sistemas operativos.

Esta creará dos particiones. En la que es FAT32 y está etiquetada como boot hay que:

  • Crear un fichero vacío llamado ssh o ssh.txt para habilitar la conexión ssh a la raspberry pi.
  • Crear otro fichero llamado wpa_supplicant.conf e introducir en este lo siguiente (cambiando los valores ssid y psk por los de la red wifi correspondiente):

Ahora hay que introducir la tarjeta SD en la raspberry pi y alimentarla mediante un cargador usb de al menos 500mA.

Si todo va bien se podrá conectar a la raspberry mediante ssh a la IP que le ha dado el router.

Para asegurarse que instalaremos las últimas versiones del software hay que hacer una actualización de los repositorios:

Instalar hostapd (para que la raspberry haga de punto de acceso), dnsmasq (para que pueda dar direcciones IP), samba (para compartir ficheros) y lighttpd (para poder apagar la raspberry desde el navegador):

Para que los dispositivos se conecten a una red wifi creada por las raspberry hay que configurar el hostpad, para ello crear con el usuario root el fichero /etc/hostapd/hostapd.conf con el siguiente contenido (cambiando los valores ssid y wpa_passphrase por los de la red wifi que vamos a crear y el valor channel por el *canal de la red wifi del router):

*Cuando estamos en casa, para que funcionen correctamente en la raspberry tanto la red wifi creada como la red wifi que hemos configurado al principio para conectarse, hay que configurar el mismo canal wifi porque la raspberry no permite trabajar con varios canales a la vez.

Editar con el usuario root el fichero /etc/default/hostapd y añadir el siguiente contenido:

Después, cada vez que arranque la raspberry hay que ejecutar un script para activar correctamente la red wifi creada, para ello crear con el usuario root el fichero /usr/local/bin/hostapdstart con el siguiente contenido:

y editar con el usuario root el fichero /etc/rc.local y poner antes de la linea que tiene exit 0 el siguiente contenido:

A continuación hay que configurar el dnsmasq para que de IPs a los dispositivos que se conecten a la raspberry en la subred 192.168.50.0/24, para ello editar con el usuario root el fichero /etc/dnsmasq.conf y añadir al final del fichero el siguiente contenido:

Después hay que configurar la raspberry para que se conecte a nuestro router (otra vez como al principio), para ello editar con el usuario root el fichero /etc/network/interfaces y añadir al final el siguiente contenido:

Para compartir los ficheros se tiene que configurar samba. Primero ejecutar:

Después añadir con el usuario root al final del fichero /etc/samba/smb.conf el siguiente contenido:

En la carpeta /home/pi/share es donde se deben almacenar los vídeos que luego se quieran reproducir. Puedes enchufar un disco usb a la rasberry para copiar los vídeos; descargarlos de una NAS, de una página web, etc.; instalar un cliente de torrent o lo que se te ocurra.

Para apagar la raspberry fácilmente desde el navegador, hay que dar permisos de sudo a lighttpd, por tanto ejecutar:

Y añadir al final el siguiente contenido:

Después activar el módulo cgi para lighttpd:

Sustituir con el usuaro root el fichero /etc/lighttpd/conf-enabled/10-cgi.conf con el siguiente contenido:

Crear con el usuario root el fichero /var/www/html/index.html con el siguiente contenido:

Crear con el usuario root el fichero /var/www/html/apaga.sh con el siguiente contenido:

Como último paso en la raspberry, ejecutar:

Para que no haga falta esperar conexión a la red, seleccionar 3-Boot Options/B2 Wait for Network at Boot/NO y para tener la máxima memoria posible 7 Advanced Options/A3 Memory Split, poner 16 y pulsar OK. Seleccionar Finish y decir si a reiniciar la raspberry.

Finalmente instalar la aplicación VLC de videolan en los dispositivos, después configurarlos para que se conecten a la red wifi de la raspberry, arrancar el VLC, seleccionar la opción Red local, elegir RASPBERRYPI, escoger la carpeta Peliculas y pulsar sobre la película que se quiera reproducir.

En el coche, la rasberry se puede alimentar con un cargador de mechero a USB, en otro lugares se puede alimentar mediante una powerbank.

Para apagar la raspberry, sólo hay que abrir un navegador en uno de los dispositivos y acceder a la dirección http://192.168.50.1

Por último agradecer a este mensaje en los foros de la raspberry donde se explica cómo hacer funcionar como punto de acceso a la vez que cliente.

Espero que os sea tan útil como a mi para amenizar la espera a los niños o incluso utilizarlo tu sólo cuando vas en transporte público o estás en un hotel.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *