Como surgió la idea

La idea de montar mi propio sistema Ambilight, surgió cuando asistí a un Taller de Arduino que impartía CyliconValley. Siempre me gustó todo lo relacionado con DIY (Do It Yourself), y durante el primer taller, se me encendió la bombilla y pensé: ¿dónde puedo comprar lo necesario para montarme un sistema de luces detrás de mi TV? Así que abrí un navegador, y ahí comenzó toda la aventura. A continuación, comentaré lo necesario en hardware, software y algunos pequeños diagramas que os ayudarán a montar vuestro propio sistema ambilight casero. Todos los componentes, tanto hardware como software que indico en el post, son los que yo he utilizado, que no quita que puedas utilizar otros.

 

¿Que necesito?

No necesitas mucho:

- Raspberry Pi con Raspbmc (RPi). Comprado en RaspiPC.

- Tira de 50 LEDs (modelo WS2801). Comprado en Ebay.

- Adaptador de corriente de 5V a 2A (para 25 leds con 1A es suficiente). Comprado en una tienda de electrónica.

- Cables jumper (usé los que tenía del Arduino). Para conectar la RPi a un extremo de los LEDs necesitarás 3 cables hembra-hembra, y para el otro extremo 2 cables macho-macho para conectarlos a la alimentación (estos últimos los soldé).

- Adaptadores Macho y Hembra para conectar los LEDs al adaptador de corriente. Comprado en una tienda de electrónica son mucho más baratos, el link solo es para que veais exactamente los que tengo. Estos son para soldar, pero lo puedes encontrar para atornillar los cables, como estos.

 

Conectamos la RPi con los LEDs

Antes de empezar con la instalación deberás tener conectados todos los cables en su sitio, así que para que no te rompas la cabeza, se muestro un diagrama:

 

Dependiendo de tu tira de LEDs, pueden variar los colores y el número de cables, para más información visita esta web.

 

 

Instalación

Primero, he de decir que instalé Boblight, pero no conseguí nada, bueno si, poner todos los leds de un solo color, pero ese no era el objetivo. Seguí buscando y apareció un nombre “Hyperion” y me lancé a probarlo, sobre todo porque a diferencia de otros servicios, este consume menos CPU. A continuación pondré paso a paso lo que fui ejecutando.

Para poder seguir los pasos, necesitarás un terminal SSH, por ejemplo: PuTTy.

Lo primero es tener actualizada la RPi con la última versión.

# sudo apt-get update

Para poder bajarnos el código de GitHub más adelante, necesitamos instalar unas librerias de certificados:

# sudo apt-get install libqtcore4 libqtgui4 libqt4-network libusb-1.0-0 libprotobuf7 ca-certificates

Si tienes instalado Boblight, debe detener el servicio, Boblight e Hyperion, se llevan mal, para ello para el servicio, sino sáltate esta línea:

# sudo /sbin/initctl stop boblight

Vete al siguiente directorio para descargar el código:

# cd /home/pi

Ahora nos bajamos de GitHub el código:

# wget -N https://raw.github.com/tvdzwan/hyperion/master/bin/install_hyperion.sh

y lo instalamos:

# sudo sh ./install_hyperion.sh

Para probar si se ha instalado bien, puede hacerlo con esto:

# hyperion-remote –priority 50 –color red –duration 5000

(donde se indica el color ‘red’, puede indicar un valor hexadecimal RRGGBB).

Y listo, puedes poner una película y ya se encenderán los LEDs. Si los colores no encajan con la posición de la imagen, sencillamente, es porque el fichero de configuración:

Path: /etc/hyperion.confing.json

es el que viene por defecto, para adaptar la posición de los Leds a tus necesidades puedes crearte un nuevo fichero con esta aplicación, HyperCon. Es un fichero *.jar. Para usuario de windows, debes ejecutar:

# java HyperCon.jar

mostrará la siguiente ventana:

 

Puesto que el fichero que genera es un poco grande, indico algunos datos de mi fichero de configuración:

  • Output: /dev/spidev0.0
  • LED Type: WS2801
  • Baudrate: 250.000
  • RGB Byte Order: RGB
  • Direction: Clockwise (sentido horario viendo la parte delantera de la TV).
  • Led in Top Corners: true
  • Led in Bottom Corners: true
  • Horizontal: 15
  • Vertical: 8
  • Bottom Gap: 0
  • 1st LED offset: -9 (mi primer Led empieza, en la esquina inferior izquierda)

Las variables de la sección Image Process, por defecto.

Ya creado el fichero, deberás reemplazarlo por el existente, pero antes debes parar el servicio de hyperion:

# sudo /sbin/initctl stop hyperion

Reemplazamos el fichero creado:

# sudo cp /home/pi/mihyperion.config.json /etc/hyperion.config.json

Y volvemos a arrancar el servicio:

# sudo /sbin/initctl start hyperion

Y reinicias la RPi:

# sudo reboot

Aquí os dejo un par videos para testear:

Video 1:

https://www.youtube.com/watch?v=sr_vL2anfXA

Video 2:

https://www.youtube.com/watch?v=7rpto3bZz6g

Y listo para poner una película!!

Aprovechando el post, si quieres usar tu tira de Leds con Arduino, necesitarás esta librería de Adafruit, trae dos ejemplos para que pruebes.

Y recuerda, tu vista te lo agradecerá!!

Aquí os dejo el resultado:

Para más información aquí os dejo, la guía que yo usé: Hyperion Wiki.