[TUTO] Tout savoir sur le logiciel de configuration Ambilight HyperCon

 

 

Le but de ce tuto est de vous montrer comment utiliser, dans les moindres détails, le logiciel Ambilight HyperCon dans le but de créer un fichier de configuration Hypérion correspondant à son installation.

 

J'ai déjà abordé son utilisation dans mes autres Tutos mais je pense qu'il en mérite un à part entière.

 

Pour ceux qui ne connaisse pas HyperCon, sachez que c'est un logiciel polyvalent. Il permet entre autre d'installer Hypérion sur son MicroPc, de créer des fichiers de configuration, de les transférer en SSH, d'affiner le réglage des LEDS pour ceux qui ont des problèmes de couleurs ou de blanc...

 

 

Pour celui-ci j'ai utilisé :

  • Un raspberry Pi B2 comme base de travail
  • Une bande de 181 LEDs de SK9822 ( APA102 ) pour ma config
  • Un VideoGrabber Fushicai USBTV007 pour la gestion du Multi-Sources
  • La version 1.03.1 d'HyperCon

 

 

Préalable

 

Tout d'abord il nous faut :

 

Merci d'aller au terme du Tuto puis revenir sur certains passage si besoins, car si vous essayez de reproduire certaines manipulations, notamment sur les passages traitant de l'intervention sur les LEDs, sans le fichier de configuration en place, cela ne peut fonctionner.

 

 

Première prise en main

 

Commençons par ouvrir notre application HyperCon.Jar. S'affiche devant nous une fenêtre divisé en 2 parties, une à gauche qui comprend plusieurs onglets de paramétrages et celle de droite représentant notre écran TV.

Lorsque l'on commencera à effectuer certaines modifications sur la partie gauche de l'interface, on verra instantanément des changements dans cette partie.

 

 

 

1. Onglet SSH

 

La raison pour laquelle je commence par cet onglet est que nous aurons besoin d’être connecté pour facilité la configuration de notre installation. Nous y reviendrons dessus en fin de Tuto pour les dernières interventions.

 

Tout d'abord cliquons sur cet onglet et voyons les options qui s'offre à nous. On peut voir qu'il se divise en 3 parties :

 

Une 1ère, SSH - Connection qui regroupe les informations réseau pour se connecter à son Raspberry comme :

  • Le type de Système utilisé
  • L'adresse IP et le port
  • Le nom d’utilisateur et le mot de passe
  • Un bouton de connexion et un d'information

Une 2nde, SSH - Manage Hyperion from HyperCon. Les divers boutons permettent l'installation ou désinstallation d’Hypérion, de gérer son état et d'avoir accès au journal d’exécution.

 

Une dernière, SSH - Colorpicker, permet de faire joujou sur le bandeau de LEDs en modifiant les couleurs. Enfin joujou pas tant que ça vu que cocher la case Expertview  permettra d'agir directement sur la valeur du RGB et de pouvoir les affiner ( si nécessaire ) dans l'onglet Process.

Pour un changement en temps réel, nous cocherons la case Auto-Update.

 

Copie écran de ma configuration :

Pour résumer mes manipulations :

  • J'ai choisi Openelec / LE comme système
  • Entré 192.168.1.252 comme adresse IP et n'ai pas modifié le Port
  • Renseigné root et libreelec comme Nom d'utilisateur et Mot de passe ( si vous utilisez OpenELEC, vous entrerez bien entendu openelec )
  • Puis cliqué sur Connect pour établir la connexion ( une fois établi, les boutons dans les parties du dessous sont devenus accessibles )
  • Cliqué sur Show Traffic pour ouvrir une fenêtre d'information 
  • Cliqué sur Install/Upda. Hyperion pour lancer l'installation d’Hypérion sur mon Raspberry et vérifier l’état d'avancement de son installation dans la fenêtre d'information ( une demande de confirmation d'installation s'affichera et vous informera que ça prendra du temps ). Si vous ne voyez rien après quelques instants, c'est normal, ne paniquez pas.
  • Puis coché la case Auto-Update pour activer le changement des couleurs en temps réel.

Copie écran de la fenêtre d'information suite à l'installation et aperçu du mode Expertview avec les valeurs modifiés ( 255 par défaut ) :

 

Nous reviendrons en fin de Tuto pour transférer notre fichier de configuration une fois terminé. Passons à notre onglet suivant, Hardware

 

 

 

2. Onglet Hardware

 

Dans cet onglet sont réunis les options principales de notre configuration. Cet onglet est lui même divisé en 4 parties.

 

Une 1ere, Device, regroupe toutes les informations concernant le matériel utilisé dans notre système Ambilight comme :

  • le nom de notre config,
  • le type de LEDs ou accessoires utilisés ( divers modèles de bande de LEDs , Philips HUE, Kit Ambilight... ),
  • le type et vitesse de transmission ( GPIO, UDP, USB... )
  • l' ordre des couleurs selon le type de LEDs utilisé( RGB, BGR, RGB ....)

 

Une 2nde, Construction, nous permet de créer virtuellement la disposition de nos LEDs se trouvant derrière la TV en déterminant :

  • le présence ou non de LEDs dans les angles
  • Le sens dans lequel nous avons orienté nos LEDs derrière l’écran ( dans le sens des aiguilles d'une montre ou le contraire )
  • La disposition des LEDs à l'horizontal et sur les cotés
  • Si il y a l'absence de LEDs au niveau du Pied ( Bottom Gap )
  • Ou se situe la première LED dans notre installation

 

Une 3eme, Image Process, sert à paramétrer la surface d'image qu’Hypérion devra analyser pour retransmettre les couleurs comme :

  • La largeur des bandes d'analyses de l'image ( Horizontal et Vertical Depth )
  • Si les zones d'analyses doivent être décalé du bord de l’écran ( Horizontal et Vertical gap )
  • Si la zone de détection par LED chevauche celle de ses voisines ( Overlap )

 

Et enfin une dernière, BlackBorder Detection, qui permet d'activer et configurer le niveau de détection des bandes noirs.

 

Vous l'aurez compris, cet onglet est le pilier dans la création de notre fichier de configuration. Voici un exemple de configuration pour mon installation :

 

Pour résumé mes modifications par rapport à mon installation:

  • J'ai entré RPI_B2_SK9822_181_SPI comme nom de config ( connecté au GPIO de mon Raspberry d'ou le spidev0.0 en Output )
  • J'ai sélectionné APA102 comme type de LEDs
  • Sélectionné BGR comme ordre de couleurs
  • Je n'ai aucune LEDS dans les angles donc aucune case à cocher ( utilisation d'angles de connexion de LEDs)
  • Le sens de direction est Counter clockwise ( le sens d'installation des LEDs est l'inverse des aiguilles d'une montre, écran TV face à soi )
  • J'ai installé 57 LEDs sur la partie haute, 34 sur les cotés et 56 sur la partie basse ( d'ou la valeur Bottom Gap à 1 )
  • Ma première LED est positionné au centre sur la partie basse. J'ai incrémenté la valeur pour arriver au bon positionnement ( 63 )
  • J'ai laissé les valeurs Image Process  et Blackborer Detection par défaut mis à part Overlap défini à 50% ( chevauchement à 50%).

 

Si j'avais utilisé un Arduino Nano connecté à mon Raspberry, voici la configuration que j'aurai appliqué :

  • Changer le nom en RPI_B2_SK9822_181_USB
  • Sélectionné le type AdalightAPA102
  • un Output correspondant au nom de notre Arduino connecté en USB soit /dev/ttyUSB0 ( faire un dmesg | grep ttyUSB0 ou ls dev/ttyUSB0 sur son Pi pour vérifier sa présence )
  • Régler la fréquence de transmission à 500 000  ( en ayant programmé mon Arduino avec cette fréquence dans le Sketch .ino )

 

 

Passons maintenant au prochain onglet Process

 

 

3. Onglet Process

 

Dans cet Onglet on retrouve 2 parties :

  • Smoothing qui permet d'agir sur la vitesse de transition dans les changements de couleurs
  • Transform pour calibrer les couleurs par rapport aux images affiché sur l’écran.

Si vous n'avez pas de problème de latence ou de couleurs qui ne corresponde pas exactement à celle de votre écran, vous pouvez laisser les valeurs par défaut.

 

Par contre si vous constaté un ralentissement dans la transition des couleurs, vous pouvez agir sur la valeur Time [ms]. ( Réduire la valeur de moitié semble être un bon début ).

 

Ensuite si vos couleurs ne corresponde pas exactement à celle de votre écran, il est possible de jouer sur plusieurs valeurs ( niveau de blanc, gamma, température...) pour effectuer une correction sur les couleurs primaires ( R G B ) .

 

En début de Tuto nous nous sommes connecté en temps SSH afin d'effectuer des opérations sur notre Raspberry ( installation d'Hypérion ). Nous avions abordé le fait de pouvoir affiner le réglage de nos LEDs en activant le mode Expertview.

 

Cette option est disponible dans cet onglet et nous permet d'agir sur plus de paramètres, comme je l'ai mentionner quelques lignes plus haut.

Le fait de cocher la case Send Continous active la possibilité de transmettre, en temps réel, les modifications que l'on apporte sur ces valeurs. 

 

Comme on peut le voir, pour cet onglet Process, j'ai laissé les paramètres par défaut ( j'ai juste coché la case Send Continous ) :

sur le fenêtre d'information on voit bien les transmissions des valeurs correspondant aux modifications des Whitelevel pour le test.

 

 

Passons à notre 4eme onglet Grabber.

 

 

4. Onglet Grabber

 

Cet onglet est comme l'onglet Hardware, déterminant surtout si vous faite appel à un VideoGrabber dans votre installation.

Il permet de configurer les dispositifs d'acquisition des images ( interne ou externe ) en vues d’être analyser pour une conversion en couleurs.

Cet onglet est divisé en 2 parties :

  • Internal Frame Grabber qui correspond en fait à l'acquisition des images fournit par Kodi
  • GrabberVL2 qui, si il elle est coché dans le cadre d'une utilisation Ambilight Multi sources, permet d'activer la prise en charge d'un VideoGrabber connecté en USB et de configurer les paramètres d'acquisition.

Si vous allez n'utiliser votre installation Ambilight seulement que pour Kodi, vous pouvez vous descendre directement à l'onglet suivant.

Pour les autres nous allons passer directement à la seconde partie, vu que la première doit être activé et que nous n'allons rien modifier.

 

Si vous envisager de mettre en place un système Ambilight Multi sources, la présence d'un VideoGrabber est inévitable. Voyons en détails les valeurs que nous pouvons modifier :

  • Device correspondant au nom que porte votre dispositif sur le système. Dans la grande majorité des cas /dev/video0
  • Input pour sélectionner l'entrée utilisé. Egalement dans la grande majorité des cas 0
  • Video Standard pour choisir la norme à utilisé ( PAL pour notre region )
  • Widht et Height pour définir la taille d’acquisition de l'image
  • Frame et Size Decimation pour diminuer la résolution de l'image 
  • Priority channel pour déterminer la priorité d'un dispositif sur un autre ( le traitement interne est prioritaire, valeur 890 contre 900 )
  • 3D mode
  • Crop Left/Right/Top/Bottom afin de rogner les 4 cotés de l'image pour un positionnement optimal en vue de l'analyse.
  • RED/Green/Blue Threshold pour agir sur le niveau de détection de ces 3 couleurs.

Voici une copie écran de la configuration de base avec une récupération d'une impression écran:

Si vous faites un clic droit sur la zone représentant votre écran, vous aurez accès a un menu contextuel permettant d'obtenir une impression écran de son VideoGrabber ( Take grabber Screenshot ) et de l'afficher à la place du tourbillon.

 

 

Sur mon image on peut constater un défaut de configuration. Si l'on regarde attentivement les bords autour de l'image, on remarquera la présence de bandes noirs de quelques millimètres sur chacun d'eux. 

 

Pour y remédier je vais agir sur les valeurs Crop de chaque bords ( utiliser une image en pause pour facilité la modification ):

à chaque modification faire une nouvelle impression écran pour constater le résultat.

 

On voit toute de suite la différence. Voici mes manipulations. J'ai incrémenté la valeur de  :

  • Crop Left à 8
  • Crop Right à 9
  • Crop Top à 3
  • Crop Bottom à 5

Le reste de la configuration reste inchangé. Ces manipulations permettent à la fois de régler son VideoGrabber mais également de voir la qualité de récupération des images et quoi de mieux qu'une série Indienne pour un maximum de couleurs à l'écran.

 

Nous touchons au but et arrivons à notre dernier onglet External.

 

 

5. Onglet External

 

Cet onglet va nous permettre de régler les options propre au fonctionnement d’Hypérion, comme la couleur de la séquence d'initialisation, les ports et/ou s'il doit transmettre des informations à d'autres dispositifs...Il est lui même divisé en 4 parties :

 

Une 1ère, Kodi Checker, qui si activé, fera en sorte de détecter l’état de Kodi et activera ou désactivera votre Ambilight en conséquence. Si vous utilisez votre Ambilight constamment, inutile d'activer cette option.

 

Une 2nde, Json Proto Boblight Server sert à définir sur quel port notre programme fonctionne et éventuellement l'activation de la communication avec un serveur Boblight. Comme pour la 1ère partie, inutile de modifier ces valeurs.

 

Une 3ème, Booteffect / Static Color permet de définir les effets de couleurs ou une couleur en particulier lors du démarrage d’Hypérion qui se matérialisera sur notre bande de LEDs. Cette option est intéressante car elle nous permet de savoir si notre programme s'est exécuté ou pas. Libre à vous de modifier les effets et la durée de celle-ci. ( options Effect et Duration ).

 

Enfin la dernière, Proto/Json Forward, si activé, sert à a configurer les adresses des autres dispositifs ou accessoires sur lesquels notre instance d’Hypérion doit transmettre des informations ( autre installation Ambilight, Hue Like, Multi-Zones...voir mes autres Tutos si besoins ). Comme pour les 2 premières, par besoin d'activer cette option dans la plupart des installations.

 

Copie écran de ma configuration sans aucune modification apporté :

 

 

Voila nous arrivons au terme de notre Tuto. Il nous reste plus qu'a enregistrer notre configuration et la copier sur notre Rapsberry.

Pour cela nous allons utilisez l'onglet SSH, comme je vous l'avez mentionné en haut de Tuto.

 

 

Sauvegarde, Génération du fichier de configuration et Copie à distance 

 

Rendez-vous dans l'onglet SSH. Normalement nous devrions toujours être connecté ( boutons non grisés ), sinon se reconnecter.

 

Ensuite, dans un premier temps, vu que nos interventions sont terminés, sauvegardons les modifications que nous avons apporter à HyperCon en cliquant sur Save.

 

Attention !!! ce fichier n'est pas un fichier de configuration.  Il pourra servir à charger toutes les modifications que nous avons effectuer depuis le commencement du Tuto. Impossibilité de charger un fichier .json à HyperCon, seul le .dat le permet. ll faudra cliquer sur Load et sélectionner notre fichier puis relancer HyperCon pour appliquer les modifications.

 

Entré un nom puis valider ( j'ai entré le même nom que ma config soit RPI_B2_SK9822_181_SPI  pour pouvoir la retrouver facilement ).

 

Cliquer ensuite sur Create Hypérion Config et laisser le nom par défaut : hyperion.config.json

( Copie de mon fichier RPI_B2_SK9822_181_SPI.dat et hyperion.config.json )

 

Nous venons de générer notre fichier de configuration pour notre installation. La dernière étape est la copie à distance. Pour cela :

  • Cliquer sur le bouton Load Config Path
  • Sélectionner le fichier correspondant à votre configuration, donc hyperion.config.json
  • Puis cliquer sur Send Config.
  • Ne reste plus qu'a cliquer sur Stop puis Start pour relancer l'instance d’Hypérion et voir si nos LEDs s'allume correctement.

Impression écran du résultat des dernières manipulations :

 

 

Voila vous savez tout sur HyperCon ( que nous ne somme pas ou plus  <;-)  ) et pouvez à votre tour le manipuler dans les moindres détails.

 

 

Bon mod à tous !!!

 

Commentaires : 9 (Discussion fermée)
  • #1

    Jonathan (vendredi, 17 mars 2017 14:24)

    Salut ,

    Je n'arrive pas à faire fonctionner mes led ws2813 , j'ai connecter le gnd et le 5v a l'alimentation (5v 10A)
    Le BI sur le GND
    Le DI sur le pin 19 ( gpio RPI3 )

    Je lance Hypercon , installation , connections ok mais rien ne ce passe au niveau de mes leds alors que d'après le log les commandes sont bien envoyer , je ne sais pas si bon branchement est correct ou si je sélectionne la bonne configuration niveau hardware dans hypercon ,


  • #2

    YouS (vendredi, 17 mars 2017 18:21)

    Dans HyperCon il faut que tu sélectionne WS281X-SPI pour faire fonctionner des Ws2813.

    Ensuite pour les branchements il faut que tu suive le tuto :

    https://ambimod.jimdo.com/2017/01/22/tuto-connecter-directement-sa-bande-de-leds-pwm-3-fil-sur-les-ports-gpio-de-son-raspberry-pour-faire-de-l-ambilight/

    Meme si la WS2813 à 4 fil en réalité c'est comme si elle en avait que 3.

    J’espère que ça ira...

  • #3

    Jonathan (samedi, 18 mars 2017 01:35)

    Merci , en bricolant un peu ca fonctionne mais des problèmes persiste ,
    Si je met une image toute blanche pour la calibration , j'ai la partie gauche de mon écran ( je parle des leds) qui éclaire rouge et à droite blanche , quand je lance un film sur certain plan c'est pas mal sur d'autre ça fait girlande de Noël et clignotement ... je pense qu'il reste des choses à configurer mais je ne c'est pas quoi , j'ai appliquer ton tuto pour la configuarion d'hyperion

  • #4

    YouS (samedi, 18 mars 2017 13:07)

    J'ai aussi eu des clignotements quand je n'avais pas connecté le GND donc voit si tes connexions sont OK.

    Essaye aussi de connecter le bleu et le vert ensemble sur ta broche data. Y en a qui ont fait fonctionné leurs bandes comme ça.

    Si encore j'avais ce type de LEDs en ma possession j'aurai pu tester de mon côté mais c'est pas le cas désolé.

  • #5

    Jonathan (samedi, 18 mars 2017 23:57)

    Merci , j'ai depuis trouver le "problème"
    Ce matin , le DI Et BI sont inverser , j'ai tester par hasard l'inversion sur le port gpio 18 et tout est rentré dans l'ordre , ca fonctionne correctement , reste un problème j'ai le blanc qui tire sur le rouge en fin de bande , j'ai alimenter la bande que par un côté, j'ai vu sur divers tuto que souvent on l'alimente en début et fin de bande , j'ai lu aussi que le blanc est ce qui demandais le plus de courant , d'où ma déduction , je fais ça demain et reviendrais vers toi pour te dire , merci en tout cas je suis content d'avoir un truc fonctionnel , sinon pour les drivers il faut prendre "ws291x" (ws281x rpi1 rpi2 rpi3) dans hypercon sinon ça ne fonctionne pas,bonne fin de weekend et merci encore

  • #6

    YouS (mercredi, 22 mars 2017 00:14)

    Ok merci pour le retour. Si jamais on me demande je pourrai leur donner ta piste pour les faire fonctionner.

    Une led a 3 couleurs donc l intensité nécessaire par led pour du blanc = intensité nécessaire pour une couleur primaire Rouge Vert ou Bleu x 3 ( car pour faire du blanc il faut les 3 couleurs actives ).

    La conso est max 20mA par couleur donc 60 mA par led pour du blanc.

    Les nouvelles générations ont besoin de moins d'intensité aussi donc on arrive plus a du 50 mA voir moins je pense.

    J'avais le même problème que toi mais c était plutôt jaune que rouge en fin de bandeau.

    Tu touche bientôt au but <;-)

  • #7

    Pimmetje (mercredi, 22 mars 2017 05:11)

    J'ai la même config que toi et suis vraiment pas satisfait des ws2801. Les blancs sont bleus et impossible de régler ça sans dérégler les autres couleurs. J'ai commandé des apa102 http://www.ledlightinghut.com/apa102-digital-led-strip.html sensé être plus fidèles dans les couleurs. Dès réception et installation je te dis s'il y a une amélioration.

  • #8

    Cyprien (vendredi, 12 mai 2017 16:47)

    Bonjour,

    Quel et l'intérêt de mettre l'overlap a 50% ?
    Ils ont changé pas mal de chose depuis hyperconf 1.0 je suis un peu perdu ;)

    Merci d'avance

  • #9

    YouS (vendredi, 12 mai 2017 16:53)

    Salut,

    L'overlap permet une meilleur harmonie dans la transition des couleurs, chaque zone sera superposé à 50% sur sa voisine...

    Overlap [%]: For a smoother color transition you could overlap the leds area with each other.

    Il conseil de mettre 20 si on veux l'utiliser mais je prefere mettre 50.

    HINT: The default values are good, you could just add some overlap (20) if you like