Ajustes efecto Ambilight con Raspberry Pi

Una vez resuelto el problema de conectar una tira de leds WS2801 a una raspebrry pi , a pesar de que se enciendan mas o menos de acorde con la imagen nos gustaría que fuera mas preciso y realista


En un post anterior   vimos como  emular un sistema “ambiligt”  usando únicamente una Raspberry Pi 2  o 3  equipada con una distribución compatible ( Openelec)   y el software de control de  leds Hyperion, con el que podemos conseguir todo hecho  gracias a la distribución Lightberry. 
Además de controlar los leds, la combinación de la Raspberry Pi junto con Kodi constituye un excelente Media Center capaz de reproducir todo tipo de contenidos de audio, vídeo e imagen, de reproducir nuestra colección multimedia almacenada en el PC o en un disco externo, e incluso de reproducir directamente contenidos on-line si se posee  las  subscripción en el hogar  y por supuesto cuenta con la conexión  de suficiente ancho de banda como por ejemplo con ftth.

 La propuesta se completa  con una económica  capturadora  de vídeo  que permitirá  que la emulación no solo funcione con el contenido multimedia que reproducimos desde la Raspberry Pi  , también  responderá a la señal de video externa que le introduciremos  procedente de una fuente externa de video como por ejemplo puede ser la señal de video procedente de un descodificador de Imagenio .

 

Por desgracia a veces la respuesta del Hypercon que  produce en la tira de leds ws2801 no se corresponde  con la imagen capturada , señal que el el fichero obtenido por el asistente (hypercon.config.son ) deberíamos mejorarlo ¿pero cómo?
Pues gracias al programa en java  HyperCon   podemos indicar  la posición exacta de nuestros leds en el caso de que la configuración realizada desde el menu de Hyperion Config Creator   no haya  ofrecido un resultado esperado .

Este software permite entre otras cosas establecer el número de leds que hay que controlar, la posición del primer led, la orientación, el chipset, etc…permitiendo un ajuste muy preciso del comportamiento de cada led de forma individual

Antes de seguir, quiero aclarar para que HyperCon.jar funcione, es necesario tener instalada la ultima version de  Java ,asi que si no la tiene  instalada puede descargarlo aquí

Recordamos que con el menu basico de  Hyperion Config Creator   podemos  definir la instalación de nuestra  Lightberry en nuestra TV   definiendo simplemente 5 parámetros:
  • Tipo de tira de leds: en nuestro casi   podemos elegir  Lightberry HD for Rasperry pi (ws2801)
  • Numero de leds horizontales ( deben ser idéntico numero de leds  en ambos lados)
  • Numero de leds  verticales   ( deben ser idéntico numero de leds  en ambos lados)
  • Donde comienza el primer led (Right/button corner and goes up)
  • Confirmación  de  que tenemos un capturadora de TV conectada

Puede ocurrir que aunque  veamos el arco iris con la configuración obtenida  no se correspondan los colores de los leds con los de la imagen , indicio de que debemos ajustar la configuración manualmente  de forma mas  precisa  por medio del archivo hyperion.config.json  generado por el asistente  de un modo mas exhaustivo usando  el programa en java  HyperCon  o bien de forma manual.

Obviammente para ejecutar dicha aplicacion, como se ha mencionado ,debemos tener instalado en nuestro equipo java

Una vez descomprimido el  pquete de Hypercon , simplemente ejecutaremos el archivo HyperCon_Sssj.jar  ( este fichero estará por ejemplo  en la ruta C:\Users\xx\Downloads\hypercon-master\hypercon-master\debug\)

hypercon

Una vez lanzado el hypercon veremos el interfaz  gráfica con una configuración por defecto que debemos personalizar   con respecto a nuestra instalación.

Debe recodar donde puso el primer led (el que está al lado del conector hembra con los jumpwires).

pantalla

En este ejemplo personal ,el primer led   ha quedado en la esquina inferior derecha cuando se mira la TV de frente ( o a la izquierda abajo si ve por atras), así que el recorrido de los leds va desde la esquina inferior  derecha hasta la izquierda (sentido horario).

Configuramos de este modo:

  •  Direction: clockwise
  •  Led top corner: false
  •  Led bottom corner: false
  •  Horizontal #: 28
  •  Vertical #: 14
  •  Bottom Gap: 0
  •  1st Led offset: -42

En nuestro caso tiene que salir un Led count = 84 (o el número de leds que haya instalado).

Si en su configuración  empezó  por la otra esquina, cambie el desplegable  direction.

En el caso del ejemplo  no se han situado leds en las esquinas, así que hay que especificar  top/bottom a false.

En bottom gap hay que poner el mismo numero de leds que en la parte superior, así lo puede dejar “vacío”.

Muy importante : en  el desplegable  1st Led offset hay que ir aumentando o disminuyendo hasta que el led número 0 quede en la esquina inicial (en este ejemplo en la esquina inferior derecha).

pantalla.png

Una vez configurado según los leds que tenga, vaya a la pestaña External y en el apartado Effects Engine Directory  escriba lo siguiente: /storage/hyperion/effects lo cual  hará que hyperion encuentre el directorio de los efectos.

Asimismo puede ajustar el tiempo en ms que permanezca el efecto al arrancar  en Length ( por defetco 9000ms)

rain

Una vez configurado haz clic en el botón Create Hyperion Configuration para crear el fichero de configuración hyperion.config.json que hay que copiar  en la Raspberry PI en el directorio /storage/.config     (   no confundir  con  la ruta /storage/hyperion/configuration/)

hyperion .

Una vez copiado el fichero  hyperion.config.json en storage/.config reinicie la RPI y si todo ha ido bien deberías ver un efecto de arcoiris.

Configuracion inicial

La configuración del dispositivo contiene los siguientes campos:

  •  ‘name’: El nombre de usuario del dispositivo (sólo se utiliza para fines de visualización)
  •  ‘type’: El tipo del dispositivo o leds (los tipos conocidos por ahora son ‘ws2801’, ‘ldp8806’, ‘ ‘lpd6803’, ‘sedu’, ‘adalight’, ‘lightpack’, ‘test’ y ‘none’)
  • output : La especificación de salida depende del dispositivo seleccionado. Esto puede ser, por ejemplo, el especificador de dispositivo, número de serie del dispositivo o el nombre del archivo de salida
  • rate’: El baudrate de la salida al dispositivo
  • colorOrder’: El orden de los bytes de color (‘rgb’, ‘rbg’, ‘bgr’, etc.).Es muy  importante destacar que si no ajustamos este valor  se pueden cambiar el borde de los colores .Por ejemplo muchas tiran son del t tipo BGR, lo cual significa que si dejamos marcado por defecto en RGB  cambiará en todas las visualizaciones el rojo por el azul y biceversa

Ejemplo de configuración  de la sección  device correspondiente al post anterior  :

“device”: {
“colorOrder”: “bgr”,
“rate”: 500000,
“type”: “ws2801”,
“name”: “MyPi”,
“output”: “/dev/spidev0.0”
},

Color

Podemos manipular la  configuración de manipulación de color utilizada para ajustar los colores de salida a un entorno específico.
La configuración contiene una lista de transformaciones de color. Cada transformación contiene  los  siguientes campos:

  •  ‘id’: El identificador único de la transformación de color (p. Ej. ‘Device_1’)
  • ‘leds’: Los índices (o índices) de los leds a los que se aplica esta transformación de color  (por ejemplo, ‘0-5, 9, 11, 12-17’). Los índices son basados ​​en cero.
  •  ‘hsv’: La manipulación en el dominio de colores Valor-Saturación-Valor con lo siguiente  parámetros de ajuste:
    •  ‘saturationGain’ El ajuste de ganancia de la saturación
    • ‘valueGain’ El ajuste de ganancia del valor
  • ‘rojo’ / ‘verde’ / ‘azul’: La manipulación en el dominio de color Rojo-Verde-Azul con los  siguientes parámetros de sintonización para cada canal:
    •  ‘umbral’ El valor de entrada mínimo requerido para que el canal esté encendido
      (más cero)
    •  ‘gamma’ El factor de corrección de la curva gamma
    •  ‘blacklevel’ El valor más bajo posible (cuando el canal es negro)
    •  ‘whitelevel’ El valor más alto posible (cuando el canal es blanco)

Al lado de la lista con transformaciones de color también hay una opción de suavizado.
‘Suavizado’: Suavizado de los colores en el dominio del tiempo con la siguiente sintonización  parámetros:

  • ‘type’ El tipo de algoritmo de suavizado (‘linear’ o ‘none’)
  •  ‘time_ms’ La constante de tiempo para el algoritmo de suavizado en milisegundos
  •  ‘updateFrequency’ La frecuencia de actualización de los leds en Hz

Ejemplo de configuración  de la seccion color  correspondiente al post anterior  

“color”: {
“transform”: [
{
“blue”: {
“threshold”: 0.050000000000000003,
“blacklevel”: 0.0,
“whitelevel”: 0.84999999999999998,
“gamma”: 2.0
},
“leds”: “0-81”,
“hsv”: {
“saturationGain”: 1.0,
“valueGain”: 1.0
},
“green”: {
“threshold”: 0.050000000000000003,
“blacklevel”: 0.0,
“whitelevel”: 0.84999999999999998,
“gamma”: 2.0
},
“id”: “leds”,
“red”: {
“threshold”: 0.050000000000000003,
“blacklevel”: 0.0,
“whitelevel”: 1.0,
“gamma”: 2.0
}
},
{
“blue”: {
“threshold”: 0.050000000000000003,
“blacklevel”: 0,
“whitelevel”: 0,
“gamma”: 2.0
},
“leds”: “82-149”,
“hsv”: {
“saturationGain”: 0,
“valueGain”: 0
},
“green”: {
“threshold”: 0.050000000000000003,
“blacklevel”: 0,
“whitelevel”: 0,
“gamma”: 2.0
},
“id”: “ledsOff”,
“red”: {
“threshold”: 0.050000000000000003,
“blacklevel”: 0,
“whitelevel”: 0,
“gamma”: 2.2000000000000002
}
}
],

Leds

La configuración para cada led individual. Contiene la especificación del área  promediado de una imagen de entrada para cada led para determinar su color. Cada elemento de la lista  contiene los siguientes campos:

  •  index: El índice del led. Esto determina su ubicación en la cadena de leds; cero
    Siendo el primer led.
  •  hscan: La parte fraccional de la imagen a lo largo de la horizontal utilizada para el promedio  (mínimo y máximo inclusive)
  •  vscan: La parte fraccional de la imagen a lo largo de la vertical utilizada para el promedio  (mínimo y máximo inclusive)
  •  ‘updateFrequency’ La frecuencia de actualización de los leds en Hz


“leds” :
[
{
“index” : 0,
“hscan” : { “minimum” : 0.0000, “maximum” : 0.0500 },
“vscan” : { “minimum” : 0.0000, “maximum” : 0.0800 }
},
{
“index” : 1,
“hscan” : { “minimum” : 0.0000, “maximum” : 0.0357 },
“vscan” : { “minimum” : 0.0000, “maximum” : 0.0800 }
},

…………………..

{
“index” : 87,
“hscan” : { “minimum” : 0.0000, “maximum” : 0.0500 },
“vscan” : { “minimum” : 0.0000, “maximum” : 0.0714 }
}
],

Configuracion Bordes

La configuración de borde negro, contiene los siguientes elementos:

  •  enable: true si el detector debe ser activado
  •  Umbral: valor por debajo del cual un píxel se considera negro (valor entre 0,0 y 1,0)
    “Blackborderdetector”:

Ejemplo de configuración  de la seccion blackborderdetector correspondiente al post anterior  

“blackborderdetector”: {
“threshold”: 0.10000000000000001,
“enable”: true
},

EFECTOS

La configuración del motor de efectos, contiene los siguientes elementos:

  • paths: Una matriz con ubicaciones absolutas de directorios con efectos
  • bootsequence: El efecto seleccionado como ‘secuencia de arranque’. Es importante cambiar a su valor en OpenElec  “/storage/hyperion/effects”

Ejemplo de configuración sección  effects correspondiente al post anterior  :

“effects”: {
“paths”: [
“/storage/hyperion/effects”
]
},

CAPTURADORA

La configuración del captador de tramas, contiene los siguientes elementos:

  •  width: El ancho de los marcos grabados [pixels]
  •  height: La altura de los marcos grabados [pixels]
  • frequency_Hz: La frecuencia de la toma de marco [Hz]

La configuración de la conexión XBMC utilizada para habilitar y deshabilitar el captador de tramas. Contiene los siguientes campos:

  •  xbmcAddress: La dirección IP del host XBMC
  •  xbmcTcpPort: El puerto TCP del servidor XBMC
  • grabVideo: Flag  que indica que el captador de fotogramas está activado (true) durante la reproducción de vídeo
  •  grabPictures: Flag que indica que el captador de fotogramas está activado (true) durante la presentación de imágenes
  •  grabAudio: Flag que indica que el captador de fotogramas está activado (true) durante la reproducción de audio
  •  grabMenu: Flag que indica que el captador de fotogramas está activado (true) en el menú XBMC
  •  grabScreensaver: Flag que indica que el captador de fotogramas está activado (true) cuando XBMC está en el salvapantallas
  •  enable3DDetection: Indicador que indica que el captador de fotogramas debe cambiar a un modulo compatible con 3D si se está reproduciendo un video en 3D

Ejemplo de configuración sección  effects correspondiente al post anterior  :

 “framegrabber”: {
“width”: 64,
“frequency_Hz”: 10.0,
“height”: 64
},
“xbmcVideoChecker”: {
“grabVideo”: true,
“grabPictures”: true,
“xbmcTcpPort”: 9090,
“grabAudio”: true,
“grabMenu”: false,
“enable3DDetection”: true,
“xbmcAddress”: “127.0.0.1”,
“grabScreensaver”: true

NOTAS

Si no quiere reiniciar lar RPI cada vez que modifique el fichero de configuración hyperion.config.json, puede reiniciar sólo el servicio con los siguientes comandos:

killall hyperiond
/storage/hyperion/bin/hyperiond.sh /storage/.config/hyperion.config.json /dev/null 2>&1 &

Hay que añadir la siguiente línea dtparam=spi=on al archivo config.txt  editando el fichero o bien a través con los siguientes comandos:

mount -o remount,rw /flash
nano /flash/config.txt (se abrirá el archivo, añadimos la línea y guardamos con Ctrl+X)

reboot

Pruebas

Para comprobar el correcto funcionamiento del sistema para Android existe una app que te permite controlar los leds estableciendo un color o aplicando efectos bastante vistosos. La puede descargar aquí

hype

Otra forma de probar es ejecutando el siguiente comando que hará que todos los leds se iluminen en rojo durante 5 segundos, puedes probar varios colores, green, blue entre otros.

/storage/hyperion/bin/hyperion-remote.sh –priority 50 –color red –duration 5000

O este otro que mostrará un efecto de arcoiris

/storage/hyperion/bin/hyperion-remote.sh  –effect “Rainbow swirl fast” –duration 3000

Por ultuio en youtube puede encontrar vídeos de test para probar que los colores se corresponden con la imagen.

Construyase su propio sistema ambilight casero (1 de 2)

En este post explicaremos los pasos para crear el efecto ambilight en una TV que no disponga de esta facilidad por medio de unas sencillas tiras de leds RGB


Si siempre quiso expandir su TV  mas allá de la pantalla  mediante luces de colores brillantes que  acompañan al contenido que se esta visualizado imitando el famoso efetcto ambilight ..  ¿por qué no hacerlo por su cuenta adaptando un sistema que lo emule en su propio TV ? Pues hoy en día ,es posible  gracias  a la potencia  y precio  de una Raspberry Pi (que soporta un centro de medios ) y un controlador LED  que  incorpore  la interfaz de bus SPI .

Ademas gracias al uso de tiras de SMD LED con chips WS2801 se simplifica aun mas el montaje gracias a la cinta adhesiva en la parte posterior de la tira pues es mucho mas simple de instalar comparando este sistema  con otros sistemas basados en  leds RGB  individuales  que van con  cables fisicos uniendo led a led

 

ELECCIÓN DE LEDS

Hay varios modelos de leds RGB direccionables  , pudiendoloe encontrar en formato tira auto-adhesiva o en formato “luces de navidad”. Cada modelo tiene sus ventajas e inconvenientes. La tira de leds es muchísimo mas  fácil,limpia ,rápida y profesional para  montar en una TV  pues llevan un pegamento autoadhesivo que hacen muy sencillo y compacto su montaje . El único problema que tienen es que se deben  soldar con 4 hilos en cada una de las 4  esquinas  o adquirir 3 conectores para hacer la conexión ( hablamos de 3  pues en la primera esquina es donde se introducen los cables que ya vienen así de fabrica así que ya tenemos sólo 3) .

Debido al asunto de las esquinas, justo en éstas ,algunas personas opinan que el colocar una distribución de leds en tiras puede que  no sea tan homogéneas  como el formato de tiras de navidad  , aunque obviamente hay un cierto grado de margen para colocarlos ,pues  podemos medir ambas paralelas ,cortar las tiras y luego colocarlas perfectamente centradas, y ademas  un argumento que claramente lo contradice es que el formato de leds individuales si no se fijan con precisión exquisita nunca tendrá la linealidad de los leds fijados en una tira de led cuya separación es inamovible.

 

Existen  también  distribuciones de leds tipo” luces de navidad”  donde  la única ventaja es poder distribuir más o menos leds en un mismo espacio ,pudiendo dirigir la luz, pero con el  grave inconveniente es que el montaje es mucho mas laborioso y menos compacto .Ademas en este caso no nos guiamos por metros sino por  número de leds a montar siendo  variable(cuantos más leds montemos mejor). Por ejemplo para una TV de 40” se podrían poner 50 leds (como cada 25 leds se necesita 1 Amperio, se necesitaría  una fuente aparte  de 2 Amperios )..

leds

Respecto al montaje con tiras autoadhesivas de leds, este es  mucho mas simple como vamos a ver  ,pues ademas de ser mucho mas sencillo el cableado ( se reduce a conectar las esquinas) , el resultado final peude ser mucho mas limpio   y  “profesional” que un montaje con leds individuales

En cuanto a la hoja de especificaciones, una  tira 5 V LED consume aprox. 7,68 vatios por metro o lo que es lo mismo : 1,5 A. Para calcular el consumo total de energía, es necesario medir la cantidad de LEDsque  podemos poner en la parte posterior del televisor. Por ejemplo para un TV de  55 pulgadas , se necesitan  3,8 m de la tira LED SMD  . El consumo de energía total para el ejemplo seria por tanto  3,8 m tira de LED x 1,5 A 1,0 A =5,7Amp

Afortunadamente, la Raspberry  Pi requiere también 5V,asi que sumando la potencia consumida por esta ( <1 amp)  seria  capaz de encender la tira y el Pi con la misma fuente de alimentación de 5V, pero eso si alimentando ambas partes desde dos conexiones diferentes : es decir la tira de leds directamente desde la fuente  y la raspberry con su conexión aparte (para ello no se olvide de pedir un adaptador de enchufe de la corriente continua para una fácil conectividad de al menos 7 A 35 W / – 5V fuente de alimentación).

Antes de seguir una advertencia: elija un montaje  basado en leds individuales o se decida o por las practicas tiras de leds,  asegúrese siempre que  la que adquiere  use  el chip WS2801, pues todo el sw actual que existe actualmente usa justamente ese protocolo

 Montaje tira de leds

 

Si decidimos montar una tira de leds,  una vez calculada la longitud necesaria ,lo primero es cortar la tira en 4 piezas que respondan a la dimensión de su TV. Para una fácil sustitución de una tira de LED rota o bien porque  mueve la instalación a otro televisor, lo mas sencillo es usar  conectores en todo los extremos como en la imagen.

Las tiras de LED WS2801 siempre tienen cuatro conectores .Ademas suelen ir indicados en la propia serigrafia, asi que típicamente son estas las patillas de salida:

  • 5V
  • GND
  • SD
  • CLK

 

Tenga cuidado, no torsionando  las  tiras  de leds  y por supuesto si necesita cortarlas cortelas  exactamente  por la linea serigrafiada en cada bloque de led+CI  .También hay una flecha en la tira, que marca la entrada / salida. Asegúrese de que usted es capaz de conectar las tiras de entrada a salida con los conectores de cable flexible o bien .

Es más fácil soldar los conectores en la placa  flexible SMD si se pone un poco de soldadura para cada una de las cuatro contactos  con antelación. Una vez solados los 4 cablecillos , se puede proteger  con tubo autoretractil (para una mayor flexibilidad use calor para encoger el  tubo)

Es fácil de montar las tiras porque elegimos componentes de montaje superficial y ademas porque  sólo tiene que utilizar la cinta adhesiva y pegarlas  a los 4 lados del TV. Es esencial que se inicie el montaje de la parte inferior derecha, visto desde la parte posterior del televisor con la flecha apuntando en la tira a la derecha.

 

Más tarde, usted establecerá una conexión desde el GPIO desde el RPI directamente a esta entrada de la banda. Y luego seguir adelante hacia la izquierda, conectando la salida de la primera banda a la entrada de la segunda tira y así sucesivamente hasta llegar a la parte inferior izquierda. La salida de la última tira se deja vacía, por lo que las tiras no están conectados en un bucle.Segun la tira que adquiera incluso puede 

El cableado  de la tira  hacia la raspberry Pi se muestra en el siguiente diagrama creado por Philip Burgess

Tenga en cuenta, el diagrama que se muestra, es para la Revisión Rpi 1.0( podría cambiar ligeramente con revisiones posteriores) .

Asegúrese de que los conectores de 5V / GND de la fila de entrada + y los conectores de alimentación Raspbery  Pi se conectan directamente al Adaptador de enchufe de alimentación de CC (DC Jack) si es que se va a alimentar todo el conjunto desde un única fuente .

Conectar WS2801 de Frambuesa Pi Modelo B

Es importante destacar que con este montaje no hay necesidad de alimentar  por el puerto micro USB la Raspberry Pi,por lo que si usa este sistema   no se debe  alimentar  la RP desde el conector de alimentación

En el conector hembra situado al lado del primer led, verás 2 cables sueltos (rojo y azul), coja esos 2 cables y conéctelos al conector DC hembra. Recuerde que el negativo es el azul y el positivo es el rojo:

Image

En el conector hembra le quedarán 3 conexiones por hacer: cable blanco, azul y verde. Coja tres cables de color blanco, azul y verde y pínchelos en su color correspondiente. Esos 3 cables irán al puerto GPIO de su Raspberry:

  • El de color azul es “tierra” (ground), en la raspberry2 . Como thay varios “ground”, utilize el que quiera (por ejemplo él el pin 09).
  • El cable  blanco va en el pin MOSI (21)
  • El verde en el CLOCK (23).

 

Abajo dejamos un mapa del puerto GPIO, la posición de los pines y su nombre.

gpio

 

Enchufe su transformador de corriente de 5V y 2A  (!pueden ser más Amperios, pero no menos!) y encienda la Raspberry! Es posible que algunos leds se enciendan y se apaguen, es normal. También es posible que ningún led se encienda, no se preocupe. !Vayamos ahora a configurar el software…!

SOFTWARE: Hyperion o Boblight

Bien, ya tenemos terminada la parte más complicada. Toca instalar ahora el software que nos controlará los leds,para lo cual actualmente tenemos 2 opciones; utilizar Boblight o Hyperion. A efectos visuales, ambos son iguales y de hecho pueden generar el mismo efecto, los mismo colores etc… pero Hyperion es muchísimo mejor que Boblight, razones:

  •  Hyperion se ha construido pensando en las limitaciones de CPU y RAM de Raspberry
  • Boblight está diseñado a modo cliente-servidor, consume más CPU. Hyperion es x15 más rápido
  • Hyperion levanta un puerto JSON que permite ser manipulado desde el exterior (por ejemplo puede controlar los leds con una App para SmartPhone)
  • Boblight funciona a modo de addon sobre Kodi por lo qeu necesita Kodi para funcionar.
  • Hyperion funciona como servicio, corriendo independientemente por lo que no está limitado a Kodi unicamente
  • Hyperion da soporte ambilight a programas externos como RetroPie o Moonlight

Dadas las grandes ventajas  pues vayamos a por Hyperion el cual es una implementación de código abierto Ambilight que se ejecuta en muchas plataformas.Las principales características de Hyperion son:

  • Baja carga de la CPU. Para una cadena de 50 leds llevado al uso de la CPU será típicamente por debajo del 2% en un Pi no overclockeado.
  • Interfaz JSON que permite una fácil integración en las secuencias de comandos.
  • Una utilidad de línea de comandos permite la comprobación fácil y configuración de las transformaciones de color (configuración de transformación no se conservan durante un reinicio en el momento …).
  • Canales de prioridad no se acoplan a un determinado proveedor de datos llevado lo que significa que un proveedor puede enviar datos dirigidos y salir sin la necesidad de mantener una conexión con Hyperion. Esto es ideal para una aplicación remota (como nuestra aplicación de Android).
  • Inclute HyperCon,una herramienta que ayuda a generar un archivo de configuración de Hyperion. La herramienta también recordará la configuración de la ejecución anterior.
  • Aplicacion Remota Android de control para ajustar un color estático.
  • Kodi ortográfico que comprueba el estado de la reproducción y el protector de pantalla de Kodi y decide si o no para capturar la pantalla. El corrector también detecta si Kodi se está reproduciendo contenido de vídeo 3D.
  • Detector de borde negro
  • JSON / Proto transportista para enviar la imagen actual a una segunda instancia de Hyperion
  • Un motor de secuencias de comandos efecto.
  • Boblight servidor de interfaz para permitir el uso de clientes escritas para Boblight.
  • Arquitectura genérica de software que  apoyo facilmente a nuevos dispositivos y tambien nuevos algoritmos e.
  • Un montón de hardware es compatible con Hyperion, como PhilipsHue, AtmoOrb y otros dispositivos agradables!

 

Pasemos a ver como instalar este sw, por lo que lo primero que tiene que hacer es habilitar la interfaz SPI de su Raspberry, para los cual  edite el fichero config.txt y añade al final el siguiente texto

dtparam=spi=on

Para algunos modelos de  Raspberry  puede  que no sea necesario,pero en todocaso si lo edita,reinice la Raspberry para que cargue el SPI correctamente.

Activado el SPI lo siguiente  que haremos  seria la instalación de este sw de Hyperion

Éstos  comandos son  para instalar Hyperion sobre OpenELEC:

curl -L –output install_hyperion.sh –get [url]https://raw.githubusercontent.com/tvdzwan/hyperion/master/bin/install_hyperion.sh[/url]
chmod +x install_hyperion.sh
sh ./install_hyperion.sh

Para instalar Hyperion sobre Raspbian Jessie usaremos estos  otros comandos:

sudo apt-get update
sudo apt-get install libqtcore4 libqtgui4 libqt4-network libusb-1.0-0 ca-certificates
wget -N [url]https://raw.github.com/tvdzwan/hyperion/master/bin/install_hyperion.sh[/url]
chmod +x install_hyperion.sh
sudo sh ./install_hyperion.sh

Si queremos que se auto ejecute al arrancar  en lugar del bloque anterior podemos hacer la misma instalación  pero siguiendo estos pasos:

En primer lugar para preparar la instalación seguiremos estos pasos:

// Create new folder in the pi user home
mkdir hyperion

cd hyperion

// Download hyperion installation script
wget -N https://raw.githubusercontent.com/tvdzwan/hyperion/master/bin/install_hyperion.sh
// Make the install script executable
sudo chmod +x install_hyperion.sh
// Make sure boblight is not running in the background
sudo /sbin/initctl stop boblight

Y ahora añadimos Hyperiorn para que su arranque sea  automático.

// Install all necessary packages for hyperion
sudo apt-get update && sudo apt-get install libqtcore4 libqtgui4 libqt4-network libusb-1.0-0 libprotobuf7 ca-certificates
// Execute the hyperion installation script
sudo sh ./install_hyperion.sh
// Hyperion should be running now, stop it again
sudo initctl stop hyperion

Tras unos segundos Hyperion quedará instalado, los leds deberían encenderse con un bonito efecto arcoíris, acto seguido deberían encenderse para reproducir los colores actuales de su TV (ya sea un video, Kodi, un juego, etc…).

Toca  ahora  configurar Hyperion para “decirle” que tenemos 50, 54 o 100 leds y en que posición están, función que haremos gracias el  software Hipercon que por su extensión lo veremos en un próximo post

 

Fuente aqui