Revista 100% Verde

Ambilight para nuestro PC

Por Soloelectronicos @soloelectronico
Ambilight es una tecnología diseñada para mejorar la experiencia visual analizando las señales entrantes y produciendo una luz lateral ambiental adecuada al contenido que se está visualizando en la pantalla un resultado bastante atractivo , el cual además de la sensación de estar viendo una pantalla aun mayor. Hasta hace muy poco este efecto solo se podía conseguir si comprábamos un TV que contara con ese sistema y no había otra opción, pero recientemente con la aparición de placas con suficiente capacidad computacional, se puede emular gracias al uso por ejemplo de una Raspberry Pi . Aun mas sencillo y facil es hacerlo a través una placa Arduino UNO (o incluso Arduino nano), un ordenador,y una tira de para iluminar una televisión de 47 pulgadas..!Y todo sin tener que soldar nada!.

Antes de empezar con el montaje , la tira de leds RGB direccionable es muy importante que este basada en el chip ws2801 (LEDs WS2801) pues el menos no nos dará ningún tipo de problemas usando una Placa Arduino, siendo ademas la mas utilizada para este tipo de montajes.

Existen tiras basadas en el chips WS2801 en formato "luces de navidad",pero lo mas habitual es adquirirla en forma de cinta autoadhesiva.

Ambilight para nuestro PC

Un ejemplo de tira es esta que puede comprarse en Amazon por menos de 27€

Ambilight para nuestro PC

Una peculiaridad de esta tiras ,es que se pueden cortar según la longitud que se requieran , así como además que también es posible ampliarlas gracias a los conectores que llevan en cada extremo, pudiendo unirse entre ellas hasta donde se necesite.

Asimismo, para alimentar dicha tira también necesitaremos aparte una fuente de alimentación dimensionada para el números de leds que vayamos a adquirir , como puede ser una fuente de 5v y 2A (para 50 leds)

La tira de leds por simplicidad la conectaremos a una placa Arduino UNO , el cual puede adquirirse en Amazon por menos de 10€

Arduino UNO comparado a la versión anterior, usa el Chip alternativo Atmega 16U2 8U2, lo que quiere decir una tasa más alta de transferencia y memoria.Ademas esta versión cuenta con la interfaz SDA y SCL .

Los datos de LED y las líneas de reloj los conectaremos a la salida SPI de Arduino,es decir los datos SPI salen del pin digital 11 y el reloj es el pin digital 13.

Los LED deben ser alimentados externamente fuera de la linea de +5V de Arduino 5V, pues podrían estropear el regulador de este . La masa o tierra, por el contrario, si debe ser conectada a la masa de Arduino.

Normalmente las tiras de leds WS01 ,suelen tiene 6 cables : tres de ellos lo conectaremos los pines (11,13 Y GND) del Arduino, y los otros dos conectaremos a la fuente de 5V.

La forma de conectarlos todo esto es según el siguiente esquema :

Ambilight para nuestro PC
  • El cable VERDE proveniente del pin SD de la tira de leds al pin 11 del Arduino Uno.
  • El cable ROJO proveniente del pin CK de al tira de leds al pin 13 del Arduino Uno.
  • El cable NEGRO proveniente del pin GND de la tira de leds al pin GND del Arduino Uno.
  • El cable AZUL proveniente del pin +5V de al tira de leds lo dejaremos sin conectar
  • El cable Rojo grueso en paralelo con el azul proveniente de la tira de leds a la conexión +5v de la fuente auxiliar
  • El cable NEGRO en paralelo con el negro proveniente del pin GND de la tira de leds al GND de la fuente auxiliar

Conectamos pues la tira de leds por un lado a una fuente de 5V /2amp . y por el otro a Arduino , por uno de los extremos y las otras 2 o 3 tiras con los adaptadores macho hembra adecuados a continuación siguiendo la flecha de las tiras haciendo un rectángulo que rodeara nuestro monitor o TV . Evidentemente en uno de los extremos de inicio es donde haremos las conexiones y todas la demás se harán por medio de los conectares .

Hemos de tener cuidado ya que uno de los extremos de la tira de luces es pues para conectar la primea tira al arduino y a la fuente :de esta forma, en cada extremo quedan sueltos los cables opuestos (normalmente el cable rojo es el positivo y el azul el negativo.) que conectaremos también entre si para dar alimentación a los leds ( aunque los conectores también den energía ya que llevan las 4 conexiones incluida los 5v y GND)

Para gobernar , la tira de leds la conectaremos a un Arduino que ademas hará de "puente" entre el ordenador host y la tira basado en WS2801 . Los datos de LED se transmiten, y no se almacenan en búfer, lo que significa que si hay mas código en Arduino podrían generar demoras debido a la RAM limitada del Arduino,pero no obstante e El protocolo de cierre WS2801, basado en retardo, podría desencadenarse inadvertidamente si el bus USB o la CPU está desbordada con otras tareas. Este código almacena datos entrantes en serie e introduce pausas intencionadas si hay una amenaza del buffer lleno prematuro. El costo de esta complejidad es algo que reduce el rendimiento, pero la ganancia es muy buena evitando la mayoría de los fallos visuales incluso aunque finalmente una función de carga en el bus USB y host CPU, quede fuera de control. l algoritmo ejerce cierto esfuerzo para evitar las pérdidas de buffer

SOFTWARE EN EL ARDUINO

Si no lo tenemos, descargaremos el software de arduino ( Página oficial de arduino) y lo instalamos.

Conectamos el arduino uno a nuestro pc con el cable usb. Si pide los drivers, se pueden encontrarlo en la carpeta arduino-1.0.4\drivers.

Descargaremos esta biblioteca: fastled biblioteca descarga, la cual importaremos al Arduino IDE.

Ahora toca cargar el sketch para lo cual descaremos el código Adalight para las luces aqui

Descomprimireos el archivo y añadimos los archivos que acabamos de descargar en la carptea Mis documentos/ y ng

Arrancaremos el software de arduino y configuramos en el ide la placa Arduino en Herramientas ->Placa Arduino Uno ( o la placa que tengamos) sin olvidar el puerto de comunicaciones

Iremos a File> Sketchbook> Arduino> Adalight y uan vez cargado el sketch debemos ajustar el numero de leds (88 en nuestro casoo) que tengamos en la instalación así como la velocidad máxima (500000 )

Ambilight para nuestro PC

#define NUM_LEDS 88 // Max LED count
#define LED_PIN 11 // arduino output pin - probably not required for WS2801
#define GROUND_PIN 10 // probably not required for WS2801
#define BRIGHTNESS 255 // maximum brightness
#define SPEED 500000 // virtual serial port speed, must be the same in boblight_config

Ahora ya podemos compilar el software( botón primero que pone un v de verificar).

Ambilight para nuestro PC

Si no ha habido errores ahora podemos subir el sw pulsando el botón de Upload( flechita a la derecha en el software de Arduino.

Al contrario de lo que sucede con el sketch LedlIght donde se iluminan las luces de 3 colores rojo, verde y azul si todo ha ido bien, si tenemos conectadas los leds al arduino y a la fuente externa, cuando carguemos este código dentro del Arduino solo lucirá el primer led de la cadena lo cual significará que estamos en buen camino.

El código dentro de Arduino es no volátil, así que no se borrará aunque desconecte la tarjeta.

Ambilight para nuestro PC

Una vez descargado , durante la instalación se puede seleccionar la opción de instalación completa ,marcando ademas la opción de descarga e instalación de playclaw.

Empezamos la configuración, pulsamos sobre el botón de mas ajustes :

Ambilight para nuestro PC
Ambilight para nuestro PC

En la parte inferior ,como vemos seleccionaremos como Device Adalight , elegiremos el puerto de comunicaciones ( el mismo al que este conectado el Arduino) y en el numero de zonas, coloremos el numero de leds total que tengamos instalados ( en el ejemplo 88).

Asimismo no olvidar orden de colores,lo cual podemos obtener fijando un color mediante el selector de Mode: Static Background ,pinchando en el color ( aparecerá la paleta),pinchando en el check de Use baclight y seleccionando en el combo order of colors la opción adecuada hasta que el color de los leds sea similar al de paleta ( en mi caso es BGR)

En este programa no olvidar en salvar cada cambio en "Save Setting" pues si no lo hacemos perderemos cualquier cambio que hagamos

Con las nuevas opciones ya podemos avanzar en la configuración de nuestra instalación para lo cual seleccionaremos en Mode : Screen capture

Ambilight para nuestro PC

Ambilight para nuestro PC

Acto seguido configuramos la ubicación de los leds, pulsando sobre SHOW AREAS OF CAPTURE y sobre el asistente de configuración,elegimos si queremos una instalación de 3 lados o 4. También es importante la cantidad de leds que tenemos en cada lado de la TV especialmente horizontal o verticalmente.
Marcamos asimismo el orden de los leds, de izq->der o de der->izq.
Con esto ultimo ya tenemos nuestro software listo para funcionar

Ambilight para nuestro PC
.
Este programa además tiene unas opciones muy interesantes, en esta pantalla:

Ambilight para nuestro PC

Podemos configurar muchos parámetros de cada led, aplicar correcciones de color y gamma ,brillo ,etc

También podemos activar un servidor web para controlar el software desde el teléfono

El siguiente paso es instalar el add-on para el XBMC.Para ello Lo descompriremo y lo ponemos en la ruta:"Users/Username/AppData/Roaming/XBMC/addons"

Ahora en el apartado de add-on ( en el menú de la izquierda ) se puede configurar un poco el comportamiento, aquí cada cual que lo puede personalizar a su gusto.

Ambilight para nuestro PC

Una solución para que funcione a pantalla completa es usando el software playclaw.
Para ello, se pueden es crear 2 perfiles dentro de ambibox, uno para el escritorio y otro para XBMC.
En este ultimo el sistema de captura que elijo es playclaw de modo que cuando se inicie un video en XBMC dará la opción de elegir que perfil cargar, de modo que se puede elegir el perfil XBMC y asi cuando se salga de XBMC se puede vplber al perfil de escritorio.
Por supuesto se debe tener corriendo el software playclaw para que esto funcione.

Ambilight para nuestro PC

Por ultimo hay un modo que haya las delicias de los que les guste la música : el modo Color music , el cual permite modular las luces en función de lo que se este escuchando por el canal de sonido principal.

Obviamente si queremos que las luces acompañen a la imagen de video de la pantalla principal el modo de captura de pantalla elegido sera [Software] Screen capture y el Método Windows 8 ( aunque tengamos Windows 10 instalado en nuestro equipo)

Para terminar dejamos dos test de vídeo , que a pantalla completa, nos pueden servir para testear si nuestro sistema responde correctamente.


Volver a la Portada de Logo Paperblog