[TUTO] Mettre en place une installation Ambilight Multi-Sources HDMI avec un Pi Zero (W) sous OpenELEC/LibreELEC et Hyperion

 

Mise à jour : utiliser LibreELEC, il est aussi fluide qu'OpenELEC. En plus de ça, mes soucis avec LIRC sont résolus. Malgré la seconde mise à jour du tuto, migrer si vous le voulez vers LibreELEC ( même si nous n'avons plus besoin de LIRC ).

 

2nde Mise à jour : En ayant relu le Wiki d'hypérion plus attentivement, il est possible d'effectuer une bascule du Video Grabber vers le Frame Grabber en activant la détection de Kodi, utile pour ceux qui passerons par la version Light de l'installation.

 

Donc lors de la génération du fichier de configuration avec HyperCon il faudra en plus du reste :

  • Cocher la case Kodi Checker dans l'onglet External 
  • Laisser les options par defaut sauf decocher la case Pause ( pas obligatoire ) 
  • Si vous avez Kodi qui tourne autre part que sur votre Raspberry, changer l'adresse 127.0.0.1 par celle de la cible ou il sera exécuté.

Petite Explication : On active la détection de lancement vidéo, lecture photos, mise en veille...sous Kodi. C'est le fait de ne pas cocher la case Menu et Pause qui fera la bascule entre le Frame Grabber et le Video Grabber. Tant que vous ne lancerez pas de vidéo avec Kodi, l'Ambilight fonctionnera avec le VideoGrabber.

 

Une fois qu'une vidéo sera en cours de lecture ou même si vous la mettez en Pause, l'Ambilight avec Frame Grabber prendra le dessus et sera actif tant que la vidéo sera à l’écran.

 

A vous de voir si vous voulez désactiver des prises en charge en décochant les autres cases.

 

Ne pas oublier également de passer ou vérifier que la priorité du Frame Grabber est à 890 et celle du Video Grabber à 900.

 

Donc plus besoin d'utiliser la commutation via télécommande, via Script ou encore via une application sur Smartphone.

 

 

Le but de ce tuto sera de mettre en place une installation Ambilight à base de Pi Zero ( W ) sous OpenELEC, avec la possibilité de migrer vers LibreELEC, et Hypérion, avec une gestion du Multi-Sources HDMI.

 

Concernant cette dernière fonction, nous aborderons 2 type d'installations selon 2 procédés :

  • Une première version "Light" en passant par la technique de l'adaptateur prise Péritel connecté directement sur le VideoGrabber
  • Une seconde version "Complète" en ajoutant en plus l'utilisation d'un Switch et Splitter Hdmi ainsi que d'un HDMI2AV.

Je vais reprendre l'installation que j'ai utilisé pour mon Odroid C2. Je vous renvoi vers la lecture de celui-ci pour plus de détails.

 

Pour la version "Light" j'utiliserai mon démodulateur Satellite sous Enigma 2 en connexion direct par câble coaxial sur le VideoGrabber, en utilisant l'adaptateur prise Péritel / 3 CINCH.

 

Pour la version "Complète", j'utiliserai ce même démodulateur mais en connexion HDMI et ajouterai ma Nintendo Switch le tout connectés sur un Switch HDMI 3 ports.

 

J'en ferai de même pour les LEDs en montrant comment configurer ses bandes SPI ( 4 fil ) en plus des bandes PWM ( 3 fil ) que j'utiliserai.

 

Enfin si jamais certains veulent migrer vers LibreELEC, j'aborderai également ce sujet pour leur permettre de passer d'un système à l'autre sans devoir à reprendre la configuration de Zéro.

 

Pour ce Tuto j'ai utilisé :

  • Mon Raspberry Pi Zéro dans son boitier AmBiPiBox
  • L'installation mise en place avec mon Odroid C2 ( voir ici )
  • Un démodulateur satellite et ma Nintendo Switch pour test du Multi-Sources.

 

Voila ce que ça donne en vidéo avec une Nintendo Switch et Mario Kart :


Préalable

 

J'aurai besoin :

  • D'une TV 19"
  • Mon boitier assemblé AmbiPiBox
  • Un Raspberry PI ZERO V1.3 + carte SD ( privilégier des hautes vitesses )
  • Une bande de 75 LEDs WS2812B 
  • Un VideoGrabber
  • Un adaptateur prise Peritél / 3 Cinch avec bouton à glisser INPUT/OUTPUT
  • Un Splitter HDMI, un HDMI2Av et un Switch HDMI ( si la technique de la prise Péritel n'est pas concluante )
  • Pas d'alimentation de bande car alimenté par le port USB de ma télé ( je ne devrais peut être pas vu l’ampérage nécessaire, +- 4A )
  • 4 Connecteurs d'Angles ( car ma bande de LED débute au centre de la TV )
  • Un Chargeur 5v 3A pour mon boitier
  • Un Hub USB 4 ports ( préférable qu'il soit auto-alimenté )
  • Une carte WiFi USB et ou Bluetooth
  • Une télécommande Infrarouge Media Center ( pas obligatoire )

Téléchargements des archives et préparation de la carte MicroSD 

 

Téléchargement des Archives 

 

Il existe de nombreux systèmes pour les Raspberry mais les 2 principaux dans la mise en place d'un Media Center sont OpenELEC / LibreELEC.

 

J'ai utilisé OpenELEC car il semble plus léger que son frère jumeau en utilisation sur le Pi Zero. Je vous laisserez le choix entre les 2 via des fichiers de migration vers un système ou vers l'autre.

 

Il nous faudra donc :

  • L'Archive contenant notre image OpenELEC au format img ( actuellement la v8.0.3 )
  • L'Archive LibreELEC au format .tar pour la migration d'OpenELEC vers LibreELEC ( actuellement v8.0.1 MR )
  • L'Archive OpenELEC au format .tar pour retourner de LibreELEC vers OpenELEC 

Préparation de la carte µSD

 

La première des choses à faire sera de décompresser l'archive OpenELEC-RPi.arm-8.0.3.img.gz que nous venons de télécharger. Pour cela on pourra soit utiliser Winrar soit 7zip. Nous obtenons un fichier OpenELEC-RPi.arm-8.0.3.img. Voici la marche à suivre pour installer ce système sur la carte µSD :

  • Brancher votre clé adaptateur USB/MicroSD ou adaptateur SDCard/MicroSD contenant votre carte sur un des ports USB de votre PC. Elle doit être reconnu et une lettre doit lui être assigné ( Sinon la formater.. )
  • Exécuter le logiciel Win32DiskImager
  • Cliquer sur le petit dossier bleu à droite pour sélectionner une image système .img
  • Naviguer jusqu’au dossier ou se trouve cette image, la sélectionner et cliquer sur Ouvrir
  • Cliquer sur le menu déroulant à coté du dossier bleu pour sélectionner la lettre correspondant à votre carte ( le logiciel la sélectionnera par défaut mais à vérifier quand même, on ne sais jamais si vous en avez plusieurs ou s'il à commis une erreur )
  • Cliquer ensuite sur Write pour lancer la copie. On vous demandera de confirmer la copie donc cliquer sur YES.
  • Un message s'affiche nous indiquant la fin et la réussite de la copie.

Nous n’allons pas encore retirer la carte mémoire de notre ordinateur. Nous allons en profiter pour accéder à la partition de boot et coller quelques lignes de codes dans notre fichier config. Pour cela :

  • Retourner dans votre lecteur correspondant à votre carte mémoire, lecteur E pour moi.
  • Vous devriez voir une liste fichier à l’intérieur de ce lecteur
  • Ouvrir le fichier config.txt dans un éditeur de texte et descendre jusqu'au tableau d'Overclock
  • En dessous de la dernière ligne du tableau, à savoir # mode 'Pi2'                    :   1000 ... copier les lignes ci-dessous :

# Overclock

arm_freq=1000

gpu_freq=500

core_freq=500

sdram_freq=500

 

sdram_schmoo=0x02000020

over_voltage=2

sdram_over_voltage=2

  • Puis descendre tout en bas du fichier et copier ces 2 lignes :

max_usb_current=1

dtoverlay=lirc-rpi

 

Si vous utilisez des bandes SPI ( 4 fil ) rajouter cette ligne en dessous des deux précédentes :

  • dtparam=spi=on

Puis sauvegarder votre fichier pour enregistrer les modifications.

 

Pour Info : Ces lignes permettent au Pi Zero de fonctionner au maximum de ses possibilités et d'activer la gestion des bandes SPI ( 4 fil ) ansi que de l'infrarouge via les broches GPIO. La ligne max_usb_curent permet d'envoyer plus de courant au port USB, notamment pour le VideoGrabber.

Vous pouvez dès à présent retirer votre carte et l'introduire dans votre Raspberry Pi Zero puis l'alimenter pour lancer le système . Passons maintenant à l’étape suivante, la première partie consacré à OpenELEC et à Kodi.

 

Premier pas sur OpenELEC

 

Si tout s'est bien passé vous devriez voir des informations qui défile sur le haut de l'écran, ainsi que l'affichage du logo OpenELEC et pour finir l'arrivée sur l'interface de Kodi qui a lancé l'assistant de configuration de 1er démarrage.

Afin de pouvoir naviguer sous Kodi vous avez le choix entre :

  • Un clavier ou une Souris
  • Une télécommande Infrarouge ( après copie des fichiers dans .config )
  • Votre télécommande TV via l'option CEC.

 Vous devrez ensuite :

  • Sélectionner Next pour passer à la fenêtre suivante
  • Entrer un nom pour notre dispositif, vous pouvez laisser OpenELEC par défaut et sélectionner Next
  • Si vous n'avez pas de carte WiFi sélectionner Next sinon sélectionner votre réseau, entrer votre mot de passe ( Noter l'adresse IP que vous obtenez, on en aura besoin plus tard pour effectuer une connexion à distance, dans mon cas 192.168.1.1 ), puis sélectionner Next
  • Se positionner sur le curseur sous SSH et le faire glisser en le sélectionnant pour activer cette fonction puis sélectionner Next
  • Et enfin sélectionner 2 fois Next  pour terminer la configuration.

Nous arrivons sur cette interface :

 

Configuration d'OpenELEC

 

Nous allons ensuite effectuer quelques réglages rapide. Commençons par la partie propre au fonctionnement d'OpenELEC en :

  • Sélectionnant la roue crantée pour accéder aux réglages puis
  • Pour ceux qui utilisent l'Ethernet sélectionner l'icone System Information afin récupérer l'adresse IP, dans mon cas 192.168.1.1
  • Revenir en Arrière puis Sélectionner l'icone OpenELEC.
  • Positionnez vous sur l'onglet System puis sur Keyboard layout et changer le clavier de US en Azerty
  • Positionnez vous ensuite sur l'onglet Services puis sélectionner Use Samba Password Authentification pour activer cette fonction ( le nom d'utilisateur et le mot passe pour se connecter à distance via samba sera openelec, vous pouvez en changer via ce menu)
  • Si vous avez une carte bluetooth descendre jusqu’à Bluetooth et activer cette fonction
  • Enfin positionnez vous sur Bluetooth pour effectuer un jumelage avec vos périphériques.
  • Revenir sur l’écran d’accueil une fois terminé.

 

Configuration de Kodi à minima

 

Nous venons d’effectuer les réglages principaux d'OpenELEC et allons faire de même pour Kodi en modifiant quelques options. Commençons d'abord par activer l'affichage de toutes les options et de franciser Kodi en :

  • Sélectionner de nouveau la roue crantée puis sélectionner l'icone Interface Settings
  • Descendre jusqu'a Normal en bas à gauche et le sélectionner jusqu’à qu'il affiche Expert
  • Positionnez vous ensuite sur Régional et sélectionner la ligne Language puis
  • Descendre dans la liste et sélectionner French. L'interface passe en français ( l'onglet Habillage est sélectionné suite au changement )
  • Repositionnez vous sur l'onglet Région puis sur Dispositions du clavier
  • Sélectionner English Qwerty pour le de-valider puis descendre et sélectionner la ligne French AZERTY puis valider en sélectionnant OK.
  • Sélectionner la ligne Format régional prédéfinidescendre dans la liste et choisir France puis refaire la même manipulation en sélectionnant la ligne Pays fuseau Horaire
  • Revenir pour finir sur l’écran d'Acceuil.

Peut être avez-vous remarquez la taille des images lorsque vous cliquer dessus. C'est à cause de la résolution d’écran de Kodi que j'ai laissé non configuré ( 640 x 480 ) lorsque j'ai fait mes impressions écrans. Nous allons la changer pour passer en FullHD pour cela :

  • Sélectionner la roue crantée puis l'icone Paramètres du Systeme
  • Sélectionner la ligne Desktop puis changer la en 1920x1080 ou 1280x720 ( si jamais votre télé est limité à 720p )
  • Sélectionner Oui pour confirmer le changement de résolution.

Pour Info : Ceci est la résolution de l'interface et non de lecture. Même si vous avez sélectionné du 720P, vos vidéos FullHD seront lus en 1920x1080. 

Pour ma part je resterai en 1280x720.

Si vous cliquez sur la dernière image vous verrez une nette différence de résolution. ( J'aurai peut être du le faire en début de tuto, désolé /:-( )

 

Si vous choisissez de rester en affichage 720P mais souhaitez lire des vidéos en 1080P, il faudra activer une option :

  • En retournant dans les options Système de Kodi et sélectionner l'icone Paramètre de Lecteur
  • Dans l'onglet Vidéos, descendre sur la partie droite jusqu’à la ligne Ajuster la Fréquence d'actualisation
  • Sélectionner cette ligne pour changer le Non en Toujours.

Lorsque vous lancerez une vidéo 1080P, l'affichage basculera automatiquement vers cette résolution et reviendra vers du 720P une fois la vidéo terminé.

Il se peut que vous constatiez aussi des problèmes de rognage d’écran, que l'image dépasse des bords de la TV. Pour y remédier : 

  • Revenir en Arrière puis Sélectionner l'icone Paramètres d'Habillage
  • Positionnez vous sur Skin puis sur Zoom et passer de 0% à -2-4 ou encore -6%... jusqu’à obtenir un cadrage parfait
  • Vous pouvez changer les couleurs et autres paramètres à partir de cet onglet. Pour ma part je vais changer la couleur en Gold.

Je vous laisse explorer les autres options de Kodi, il y en a tellement à paramétrer qu'il faudrait un tuto spécial rien que pour lui.

 

Si vous le souhaitez, vous pouvez également installer le thème modifié dont je fait référence dans mon précédent tuto sur l'Odroid en choisissant Estuary Kodi  Mod 17 ( car nous utilisons la version 17.1). Vous pouvez tout aussi bien installer le thème que vous voulez, ou alors  des applications, via le dépôt d'extensions, libre à vous.

 

Passons à notre prochaine partie, pour ceux qui veulent l'envisager, la migration d'OpenELEC vers LibreELEC.

 

Migration d'OpenELEC vers LibreELEC ou Mise à jour

 

J'avais abordé en début de tuto la possibilité de migrer d'OpenELEC vers LibreELEC en utilisant l'image au format .tar qu'il faudra copier sur le pi Zero . Sachez qu'il est possible d'effectuer des transferts de fichiers vers le Raspberry de plusieurs manières, en utilisant WinSCp par FTP ou bien Samba par navigation Réseau. Le plus simple étant ce dernier, je l'utiliserai pour effectuer ma copie. 

 

Voici comment. Sur votre Ordinateur :

  • Ouvrir un dossier quelconque puis copier \\ADRESSE_IP_DE_VOTRE_RASPBERRY dans la barre d'adresse soit pour moi \\192.168.1.1
  • On va vous demander un Nom d'utilisateur et un mot de passe, pour les 2 champs saisir openelec ( ou ceux que vous avez choisi plus haut )
  • Retourner sur l'interface de Kodi pour redémarrer le système en sélectionnant le symbole Power puis
  • Sélectionner l'icone et/ou la ligne Redémarrer pour effectuer la mise à jour.

Plusieurs lignes en haut à gauche vous informe de la mise à jour. Le Pi Zero devrait ensuite démarrer sur LibreELEC. Vous pouvez faire de même si une mise à jour venait à paraitre, normalement la OpenELEC***.8.0.4.tar.

Pour ma part je resterai sous OpenELEC pour la suite du tuto.

 

 

Installation d'Hyperion en ligne de commande

 

Nous allons voir maintenant comment installer Hypérion, non pas via le dépôt d’extensions ( comme sur le tuto précédent ) mais plutôt avec l'utilisation du logiciel Putty via une session SSH et en lignes de commande.

 

J'ai choisi cette méthode d'installation car elle nous permet de voir en direct ce qui se passe et d'interagir si quelque chose ne va pas.

Commençons par exécuter notre logiciel. Nous arrivons sur cette interface :

La première des choses que nous ferons sera de passer la couleur de la fenêtre de connexion en blanc pour plus de clarté en :

  • Cliquant sur l'onglet Colours puis en cochant la case Use System colours.

Une fois fait nous allons renseigner les champs, sauver notre configuration et nous connecter en :

  • Cliquant sur Session puis
  • Entrer l'adresse IP dans le champ Host Name ( or IP address ), pour moi 192.168.1.1
  • Entrer dans le champ Saved Sessions un nom pour notre connexion. J'ai entré Pi Zero
  • Cliquer sur Save pour sauvegarder la configuration
  • Double cliquer sur le nom de la connexion fraîchement créer pour établir la connexion.
  • Si tout se passe comme prévu un message de sécurité s'affiche ( 1ère connexion ). Cliquer sur Oui pour valider.

Nous devrions arriver sur une fenêtre de connexion avec écrit login as. Il va falloir :

  • entrer comme nom d'identifiant root puis valider
  • entrer le mot de passe openelec puis valider de nouveau ( le mot de passe n'est pas visible lors de la saisie et le curseur ne bouge pas ).

La connexion devrait s’établir, confirmer par un message système et nous donnant la possibilité de taper des lignes de commandes.


Nous pouvons maintenant installer notre logiciel Hypérion. Pour cela :

  • Copier les 2 lignes de code qui se trouvent ci-dessous

curl -k -L --output install_hyperion.sh --get https://raw.githubusercontent.com/hyperion-project/hyperion/master/bin/install_hyperion.sh

chmod +x install_hyperion.sh && sh ./install_hyperion.sh 

  • Puis de faire un Click droit dans la fenêtre de connexion.

Lorsque vous ferez votre Click droit, la première ligne de code devrait s’exécuter. Appuyer sur Entrée pour exécuter la seconde ligne.

Une fois installé on vous proposera de redémarrer. Entrer la lettre n puis valider car nous avons encore des manipulations à effectuer.

 

Maintenant que tout est configurer et installer, nous pouvons passer à la mise en place de nos LEDs et voir la partie câblage de l'installation.

 

Schémas de montage

 

Pour pouvoir correctement configurer notre logiciel Ambilight HyperCon il va d'abord falloir s'occuper de la partie Hardware notamment le type de bande, le nombre de LEDs ainsi que leur disposition dans l'espace derrière la TV.

 

Nous allons donc voir 2 types d'installations. Une première "Light" afin d'obtenir une installation Ambilight pour son Raspberry et gérant le Multi-Sources via un Adaptateur prise Péritel/Cinch ( par exemple pour la TNT de sa TV ) ou par une connexion direct Cinch. Une seconde "Complète" pour avoir l'Ambilight sur toutes les sources HDMI.

 

Vous pouvez faire de même avec votre TV ou Ampli pour tester la récupération du flux HDMI qu'elle reçoit en entrée. Par contre il se peut que seul la TNT fonctionne, obligeant ainsi de passer par la méthode traditionnelle, soit la version complète.

 

Schéma de montage pour la version "Light"

 

 Voici le schéma de câblage pour la Version Light :

Pour info : Le schéma de droite est une alternative pour ceux qui souhaitent faire fonctionner leur Amblight avec la TNT de leur TV.


Pour résumer mon installation :

( voir plus bas le schéma de câblages des LEDs en 3 ou 4 fil )

  • Les LEDs ( 75 ) sont connectés sur les broches GPIO de mon Pi Zero . Le Data sur la broche N°32 et le GND sur une des broches GROUND
  • Le sens de rotation est l'inverse des aiguilles d'une montre lorsque je fais face à l’écran
  • Elles sont alimentés par le port USB de ma TV  ( Pas bien je sais ;-) )
  • Le Pi Zéro est alimenté par un chargeur 5A 3A
  • Le Hub USB est connecté sur le Pi Zéro
  • Sur le Hub USB est branché le VideoGrabber ( ainsi que ma carte Wifi et Bluetooth car je possède la version non W du Pi Zero)
  • Un câble vidéo Cinch/RCA relie le démodulateur Satellite au VideoGrabber par la prise péritel ( pour récupérer le signal vidéo doublé )
  • Le démodulateur satellite et le Pi Zéro sont connectés en HDMI sur la TV.

Nous venons de voir comment réaliser une installation minimum. Je vous rappelle qu'il est possible que cette méthode ne fonctionne pas sur vos équipements, rendant obligatoire de passer par la mise en place de la version Complète.

 

Schéma de montage pour la version "Complète"

 

 Voici le schéma de câblage pour la Version complète dans laquelle j'ai ajouté le Switch, le Splitter et le HDMI2AV :

Pour Info : Version Alternative sur le schéma de droite pour ceux qui veulent récupérer la TNT de leur TV. ( double connecteur RCA sur HDMI2AV )


Pour résumer mon installation :

  •  Le VideoGrabber n'est plus connecté sur la sortie Coaxial vidéo du démodulateur mais sur un HDMI2AV
  •  Cet HDMI2AV est connecté avec un cable HDMI sur un Splitter HDMI qui lui envoi le flux vidéo doublé
  •  Le Splitter HDMI renvoi le signal doublé sur son autre port HDMI qui est connecté sur l'entrée HDMI de la TV
  •  L'entrée du Splitter HDMI est connecté sur la sortie du Switch HDMI 
  • Les différentes sources soit le Pi Zéro, le Démodulateur Satellite et la Nintendo Switch sont connectés sur les entrées du Switch HDMI.

Ça fait beaucoup de câbles mais bon... Voyons maintenant en détail les schémas de câblage des LEDs en fonction de ce que vous avez.

 

Schéma de câblages pour les 2 différents types de bandes de LEDs

 

Voici 2 schémas de câblages, celui de gauche pour ceux qui utilisent des bandes à 3 fil et celui de droite pour les bandes à 4 fil :


On a donc pour les bandes à 3 fil :

  • Le Data de la bande de LEDs se branche sur la broche 32 ( GPIO 12). ( Vous pouvez utiliser la broche N°12 ou N°33 à la place )
  • Le GND  sur une des nombreuses broches GROUND du Pi Zéro.

Pour les bandes à 4 fil :

  • Le Data se connecte sur la broche 19 ( GPIO10 - MOSI )
  • La Clock sur la broche 23 ( GPIO11 - SCLK)
  • Le GND sur une des broches GROUND du Pi Zero.

Le 5V et le GND qui sont doublés, sont dans mon installation connectés a un Port USB de ma TV. ( pas conseillé je sais, encore un pas bien ). Il faudra plutôt alimenter les bandes de LEDs par un chargeur 5V 8A voir 10A.

 

Il sera également possible d'utiliser un NodeMCU pour une utilisation en Wifi de son installation Ambilight. Je vous renvoi vers la lecture de mon précédent tuto sur l'Odroid C2 pour utiliser cette fonction et l'adapter à cette installation.

 

Voyons maintenant la partie Software en passant à la partie consacré à HyperCon.

 

 

Création du fichier hyperion.config.conf via HyperCON

 

J'ai consacré un tuto complet, que vous trouverez icisur l'utilisation de ce logiciel avec des explications de toutes les fonctions. Vous comprendrez donc que je ne rentre pas dans le détail de chaque actions que j'effectuerai et vous renvoi vers sa lecture pour plus d'informations.

 

Commençons par ouvrir HyperCon.

 

Pour Info : Je n'effectuerai que quelques modifications dans les 3 premiers onglets à savoir Hardware, Process et Grabber. A vous de voir si vous avez besoin de faire des modifications supplémentaires.

 

Onglet Hardware

 

Dans cet onglet j'ai  :

  • Entré un nom de configuration dans le champ Configuration name par exemple Pi Zero_75Leds_WS2812B
  • Choisis WS281X ( RPI1, RPI2, RPI3 ) comme type d'installation.

Pour ceux qui ont des bandes à 4 fil de type APA102/APA102C/SK9822 choisir APA102 et laisser les autres valeurs par défaut ( Output et Baudrate )

  • Entré le nombre de LEDs, soit 75dans le champ Amount LEDs. (  le même nombre qui sera affiché en bas à droite du logiciel )
  • Changé l'ordre des couleurs en GRB
  • Changé la direction en Counter ClockWise (  sens inverse des aiguilles d'une montre face à l’écran )
  • Incrémenté le nombre de LEDs Horizontal jusqu'a 24 
  • Incrémenté le nombre de LEDs Left et Right jusqu'a 14
  • Incrémenté la valeur Bottom Gap jusqu’à 1 ( car je dispose de 24 LEDs sur la partie haute et de 23 LEDs ( 12 + 11 ) sur la partie basse ) 

Pour obtenir la valeur 1st LED offsetmettre la valeur sur 0. La 1ère LED se positionnera en haut à gauche. Localiser ensuite l'emplacement de la 1ère LED physique de votre installation sur la partie droite du logiciel mais surtout le numéro qui lui est associé. Pour moi c'est la 27.

Il faudra alors:

  • Incrémenter la valeur 1st LED Offset jusqu’à 27 pour qu'elle se positionne sur la case 27 et qui deviendra la 1ère LED soit la 0
  • Si vous voulez, incrémenter la valeur d'Overlap jusqu’à 50 pour un traitement plus harmonieux des couleurs. ( 20 est conseillé donc mettez ce que vous voulez en fait )

 

Onglet Process

 

Dans cet onglet pas grand chose à faire. Juste :

  • Incrémenter la valeur Update Freq. [HZ] de 20 à 30. ( La plupart des bandes de LEDs fonctionnent à cette fréquence ).

Si vous constatez de la latence dans le changement de couleurs, vous pouvez diminuer la valeur Time [ms] de 200 à 100 dans un premier temps puis à 50 si vous ne constatez pas d’amélioration.

 

Onglet Grabber

 

Dans cet onglet nous allons rajouter la gestion de la capture externe, soit du Videograbber USB,  en plus de l'interne, Internal Frame grabber.

 

Pour cela nous allons cocher la case Enabled qui se trouve en dessous de Grabber V4L2. De nouvelles options apparaissent.

Je ne rentrerai pas dans les détails de configuration je le rappelle, voir le tuto sur HyperCon.

 

Dans cet onglet j'ai :

  • Incrémenté les 4 valeurs Crop des 4 cotés pour rogner l'image ( afin d'enlever les bandes noirs ) du VideoGrabber que j'ai capturé ( via une connexion SSH effectué au préalable sur le PI Zéro ), à savoir 8,9,3 et 5.
  • Laissé toutes les autres valeurs  par défaut

Je vous met les captures d’écran que j'avais réalisé lors d'un précédent tuto afin que vous voyez la différence entre avant et après rognage.

Il ne nous reste plus qu'a sauvegarder le fichier en cliquant sur Create Hyperion Configuration, et en laissant le nom hyperion.config.json.

 

Si vous voulez sauvegarder les modifications en vue de les charger ultérieurement, cliquez sur Save et entrer le nom que vous voulez. Il ne vous restera plus qu'a effectuer un Load puis à sélectionner votre fichier .dat pour retrouver toutes les modifications que vous avez apportés à HyperCon. ( En sachant que lorsque vous le fermer et relancer, celui-ci s’exécutera dans l’état dans lequel vous l'avez quitter, en prenant en compte les dernières modifications ).

 

Passons à la copie et dernière modification de notre fichier de configuration hypérion.

 

Modification du fichier .conf et copie des fichiers sur le Pi Zéro

  

Il se peut que dans l'utilisation de bande à 3 fil en connexion direct sur le Pi Zéro cela ne fonctionne pas directement. Pour remédier à cette contrariété il va falloir agir directement sur le fichier de configuration en rajoutant quelques lignes de paramètres dans la partie Device.

 

Pour cela :

  • Ouvrir dans un éditeur de texte le fichier hyperion.config.json que nous avons générer avec hyperCon
  • Ajouter une virgule à la fin de la ligne "colorOrder" : "grb" ( grb pour moi )
  • Ajouter ces 4 lignes en dessous de la ligne précédente :

        "gpio"  : 12,

        "dmanum"  : 5,

        "freq"  : 800000,

        "pwmchannel" : 0

 

Sauvegarder votre fichier et voyons ou le copier sur le Pi Zéro.

 

Pour Info : Il faudra indiqué le numéro de GPIO que vous avez choisi, entre les 3 disponibles à savoir le GPIO12, le GPIO13 ou le GPIO18.

Précédemment, lorsque j'ai abordé le chapitre sur la migration via le fichier .tar, nous avons vu comment copier un fichier sur le Pi Zéro en utilisant Samba et allons une nouvelle fois passer par lui pour la copie de notre fichier en :

  • Répétant la procédure de connexion Samba vers le Pi Zéro
  • Entrer dans le dossier ConfigFiles ( correspondant au dossier /storage/.config sur OpenELEC )
  • Copier à l’intérieur de celui-ci le fichier hyperion.config.json

Nous allons profiter de notre connexion Samba pour copier un autre fichier utile pour tester l'installation, à savoir T4A_AmbiLightTest.mp4.

Pour cela :  

  • Revenir en arrière pour retomber sur la liste des dossiers  puis
  • Entrer dans le dossier Vidéos et copier le fichier à l’intérieur de celui-ci.

Nos interventions sur le Pi Zéro sont terminés pour le moment mais nous devrons faire d'autres manipulations un peu plus tard. Il est temps de faire un test de notre installation et voir si elle est fonctionnelle.

 

 

Premier test de l'installation, Soucis Technique et Solutions

 

Test de l'installation

 

Précédemment je vous avais demandé de copier une vidéo de test dans le dossier Vidéos. Nous l'utiliserons pour effectuer notre test. Voici la procédure à effectuer sur OpenELEC pour pouvoir la lire :

  • Redémarrer OpenELEC pour qu'Hypérion puisse appliquer le fichier de configuration que nous venons de copier ( normalement vous devriez voir vos LEDs s’illuminer sous la forme d'un arc-en-ciel lumineux ), puis
  • Sélectionner sur la partie droite Section Fichiers, puis Fichiers et enfin Vidéos
  • Le fichier T4A_AmbiLightTest.mp4 devrait s'y trouver
  • Lancer la lecture de ce fichier pour déjà voir si votre installation fonctionne et si l'ordre des couleurs est correct.

Si tout se passe comme prévu, vos LEDs devrait s'allumer en fonction de ce qui est affiché à l’écran, ce qui est un bon début.

 

Soucis Technique

 

Par contre, pour ceux qui ont essayé de faire fonctionner leur VideoGrabber en connectant une source vidéo ont dut avoir moins de chance de voir leur LEDs s'allumées, même ceux qui ont choisis d'installer une solution complète. Pourquoi ??

 

Car tout est une question de priorité dans le fichier de configuration hyperion.config.json. Petite Explication :

  • Le Framegrabber ( donc le décodage Interne --> pour Kodi ) à une priorité réglé sur 890
  • Le Grabber-v4l2 ( donc le Videograbber USB --> pour sources HDMI ) à quant à lui une priorité de 900.

Hypérion traite les priorités basse en premier c'est à dire dans ce cas le traitement interne. Si vous inverser les valeurs, le traitement externe sera prioritaire. A vous de voir la valeur que vous souhaitez assigné mais sachez qu'il existe toutefois un problème :

  • Si le décodage interne est prioritaire alors le décodage externe ne sera jamais utilisé ( car nous avons besoin d'Openelec pour Hypérion donc il sera toujours actif et ne basculera donc jamais sur le decodage externe )
  • Si le décodage externe est prioritaire alors la bascule sur le décodage interne se fera sous certaines conditions :
  1. En débranchant le câble coaxial du VideoGrabber ou de la source ( contraignant )
  2. En éteignant complètement la source ( car même en veille la bascule sur le décodage interne ne se fait pas, à tester de votre côté )
  3. En utilisant un dispositif pour effectuer la bascule entre 2 configurations Hypérion ( que pour la Version Light, inutile pour la complète ) :
  • Une première intégrant la gestion du Framegrabber
  • une seconde intégrant la gestion du VideoGrabber 

Je m'orienterai vers cette dernière solution pour vous montrer comment passer d'une configuration à l'autre, via une télécommande infrarouge style Media Center et via une application Android. Il est possible de passer par le CEC mais je ne dispose pas de cette fonction donc ne peux vous la proposer. Plus d'infos pour une utilisation via CEC ici.

 

Parenthèse pour ceux qui ont opté pour une installation complète

 

Vous n'aurez pas de soucis à ce niveau là vu que le grabber est connecté directement au HDMI2AV et non pas directement à une source en particulier. Par contre point très important, il vous faudra changer la priorité du grabber-v4l2 dans le fichier de configuration en l'inversant avec celle du framegrabber, et obtenir ainsi un fichier comme sur l'image de gauche :

 

Pour info : Vous pouvez également commenter les lignes de la partie framegrabber ( comme sur l'image de droite ) car nous ne passons plus par lui pour le décodage de l'image, et cela même pour le Pi Zero sous Kodi. Tout se fait par le videoGrabber.

Vous pouvez, si vous le souhaitez, sauter les prochains paragraphes et descendre jusqu’à la dernière partie du tuto.

 

Solutions pour les autres ( Inutile, voir la mise à jour en haut de tuto si vous ne l'avez pas vus. Vous pouvez lire les prochains paragraphes si vous le souhaitez. Sinon, passer directement au paragraphe ( dernier ) traitant de l'installation des Addons

 

Nous allons passer par l'utilisation du script Hypérion Switcher et, pour faire la bascule entre 2 fichiers hyperion, utiliser au choix soit :

  • Une télécommande infrarouge de type média center
  • Un Script SwitchHyperion.sh ( que l'on pourra aussi lancer avec la télécommande )que j'ai écritqu'il faudra lancer via son smartphone, son ordi via Putty ou tout autre dispositif capable d’établir une connexion SSH et d’exécuter des commandes sur le Pi Zero. 

Privilégié plutôt la méthode N°2 utilisant l'application Android. Mais voyons pour l'heure comme mettre en place Hyperion Switcher.

 

 

Installation d'Hyperion Switcher

 

Il faudra dans un premier temps, maintenant que vous étés habitués :

  • Copier le fichier install_hyperion_switcher-0.2.4.sh via samba par exemple dans le dossier Downloads.
  • Établir ensuite une connexion sur le Pi Zéro via Putty ( ne pas fermer la connexion nous en aurons besoin plus tard )
  • Exécuter la commande cd downloads pour arriver dans le dossier ou se trouve le fichier ( d minuscule malgré la copie dans Downloads )
  • Exécuter ensuite la commande sh install_hyperion_switcher-0.2.4.sh
  • Repondre par non donc N à la première question ( pour ne pas réinstaller Hypérion car nous avons déjà installé la dernière version )
  • Répondre par oui donc par J à la seconde ( pour installer Hypérion Config switcher )
  • Repondre N à la 3ème question pour ne pas redémarrer le système

 

Création des 2 fichiers de configuration

 

Une fois l'installation terminé il va falloir modifier le fichier de configuration qui se trouve dans le dossier addons de Kodi. Pour éviter de passer par l’éditeur de texte en ligne de commande ( car le dossier addons n'est pas accessible par samba mais peut l’être après manips... ) il va nous falloir copier le fichier switchHyperionSource.conf dans un dossier accessible par samba ( Downloads par exemple ). Pour cela :

  • Exécuter la commande cp /storage/.kodi/addons/service.hyperion-switcher/switchHyperionSource.conf /storage/downloads

Une copie du fichier se trouve maintenant dans le dossier Downloads donc :

  • Retourner dans le dossier Downloads via Samba puis ouvrir le fichier switchHyperionSource.conf dans un éditeur de texte ( Notepad++ )
  • Localiser la ligne HYPERION_CONFIG="XXXXXX" et HYPERION_JSON="YYYYYY"
  • Remplacer le XXXXXX et YYYYYY avec un nom identifiable, pour moi ça sera 75WS2812B
  • Sauvegarder votre fichier.

 Déplaçons maintenant notre fichier modifié pour remplacer celui d'origine en exécutant cette commande :

  • mv /storage/downloads/switchHyperionSource.conf /storage/.kodi/addons/service.hyperion-switcher/

Notre fichier est maintenant en place. Passons à la modification du fichier hyperion.config.json pour créer 2 fichiers json à savoir :

  • hyperion.config_KODI_75WS2812B.json et 
  • hyperion.config_VIDEOGRABBER_75WS2812B.json

Attention : Vous avez sans doute remarqué 75WS2812B dans le nom des configurations, mot que nous avons ajouté précédemment dans le fichier switchHyperionSource.conf. Il faudra que vos 2 fichiers contiennent le même mot dans leurs noms de fichiers.

 

Le fichier hyperion.config.json se trouve dans le dossier ConfigFiles alors :

  • Via Samba revenir en arrière pour afficher la liste des dossiers puis entrer dans ConfigFiles

On peut remarquer la présence du dossier ambilight qui à était rajouté lors de l'installation de notre programme. On y reviendra tout à l'heure. Pour l'instant :

  • Ouvrir le fichier hyperion.config.json dans Notepad++
  • Cliquer ensuite sur File et Enregistrer une copie puis entrer comme nom de fichier hyperion.config_VIDEOGRABBER_75WS2812B.json 
  • Descendre ensuite jusqu’à la ligne // V4L2 GRABBER CONFIG et localiser la variable Priority. Changer le 890 en 900
  • Descendre de quelques lignes jusqu'a // FRAME GRABBER CONFIG, vous devriez voir la variable Priority. Changer le 900 en 890
  • Cliquer une nouvelle fois sur File puis Enregistrer une copie et entrer cette fois-ci hyperion.config_KODI_75WS2812B.json .

On se retrouve avec 3 fichiers de configuration Hypérion :

  • hyperion.config.json, qui nous servira comme sauvegarde de configuration
  • hyperion.config_VIDEOGRABBER_75WS2812B.json pour quand on utilisera une source externe via le grabber USB
  • hyperion.config_KODI_75WS2812B.json pour quand on utilisera Kodi sur le Pi

Les fichiers sont identiques mais seul la priorité change dans les 2 derniers fichiers ( 890/900 pour l'un et 900/890 pour l'autre ).

 

 

Modification du fichier autostart.sh

 

Maintenant que nos fichiers de configuration sont crées il va falloir modifier le fichier autostart.sh  ( fichier de démarrage ) se trouvant dans le dossier ConfigFiles pour y insérer l'exécution du script correspondant à notre extension à chaque démarrage d'OpenELEC.

 

Lors de son installation, celui-ci à effectuer une copie de votre ancien fichier autostart.sh en le renommant en autostart_backup.sh. Voici donc la marche à suivre pour ajouter le lancement hyperion switcher ( via le fichier /storage/.config/ambilight/autostart.sh ) :

  • Ouvrir le fichier autostart.sh dans Notepad++
  • copier ces lignes à l’intérieur de celui-ci :

cd /storage/.config/ambilight

./autostart.sh

  • Puis sauver votre fichier

Il sera possible, si vous le désirez, d'ajouter le contenu de votre ancien fichier autostart.sh, soit autostart_backup.sh à l’intérieur de ce fichier autostart.sh ( celui dans le dossier ConfigFiles pas ambilight, y'a de quoi s'y perdre ). Comme nous n'avions que le lancement d’Hypérion utilisant le fichier hyperion.config.json, inutile de la rajouter à celui-ci.

 

 Est ce que vous vous rappelez du dossier ambilight dont je faisais référence tout à l'heure ? Et bien celui-ci doit contenir les 2 fichiers de configurations que nous avons créer donc :

  •  Copier ou déplacer les fichiers hyperion.config_KODI...json et hyperion.config_VIDEOGRABBER...json dans le répertoire ambilight

On y retrouve en plus, le fichier autostart.sh ( celui qui contient le code permettant la gestion d'Hyperion et de l'extension Hyperion Config Switcher ) ainsi que 2 fichiers exemples que vous pouvez laisser dans le dossier, cela n'a pas d'importance.

 

Si vous redémarrer OpenELEC, vos LEDs doivent réagir avec Kodi et toujours pas avec votre source. On peut vérifier qu’Hypérion est bien lancé en prenant en compte prioritairement la capture interne et en utilisant le fichier hyperion.config_KODI_75WS2812B.json qui se trouve dans le dossier /storage/.config/ambilight/. Pour cela tapons la commande suivante ps -ef | grep hyperiond :

Voyons maintenant comment basculer de l'un à l'autre avec notre première méthode utilisant une télécommande Infrarouge.

 

 

Méthode N°1 : Utilisation d'une télécommande Infrarouge

 

Plus haut dans le tuto j'ai évoqué la possibilité d'utiliser une télécommande type Media Center pour agir sur le fonctionnement d'Hyperion et ainsi basculer d'une configuration à une autre en temps réel. 

 

Pour cela il faudra rajouter un composant à son Pi Zéro, un récepteur Infrarouge comme par exemple un TSOP38238, sur les broches GPIO. Voici le schéma de câblage : 

Pour résumer :

  • La broche de gauche se branche sur la borne 12 soit le GPIO18 ( 6ème à droite ) 
  • Celle du milieu se connecte sur une des bornes GROUND. Pour facilité le branchement j'ai choisi la borne juste à coté ( 7ème à droite )
  • Enfin celle de droite se branche sur la borne 3.3V ( 1ère à gauche ).

La gestion de l'infrarouge est déjà active par défaut dans OpenELEC ou LibreELEC. Toutefois Il faudra ajouter cette ligne dtoverlay=lirc-rpi dans config.txt présent dans la partition boot, chose que nous avions faites en début de tuto, lors de la copie du système sur la carte µSD.

 

Maintenant que nous avons traité la partie matérielle, il nous faut voir la partie logicielle.

 

  

Copie des fichiers et modification de remote.xml

 

Dans un premier temps il faudra copier 2 fichiers, remote.xml et lircd.conf :

  • Accéder une nouvelle fois via Samba au Pi Zéro puis
  • Entrer dans le dossier ConfigFiles et copier le fichier lircd.conf à l’intérieur de celui-ci ( Normalement votre télécommande devrai réagir sans ce fichier, il était surement indispensable de le copier dans les versions précédentes ) puis
  • Revenir en arrière puis Entrer dans le dossier Userdata et enfin Keymaps
  • Copier le fichier remote.xml à l’intérieur de celui-ci

Ces fichiers contiennent les informations nécessaires au fonctionnement des télécommandes Infrarouge et sont déjà pré-configurés. Redémarrer OpenELEC puis tester la navigation avec votre télécommande.

 

Ensuite voyons de plus prêt le fichier remote.xml. La partie qui nous interesse se trouve en haut, dans la partie global remote donc :

  • Ouvrir votre fichier remote.xml avec un éditeur de texte compatible, Notepad++ encore lui puis
  • Descendre jusqu’à la ligne  <red>XBMC.RunScript....

Vous constatez 3 lignes quasiment identiques :

  1.  <red>XBMC.RunScript(/storage/.kodi/addons/service.hyperion-switcher/switchHyperionSource.py, KODI)</red>
  2. <green>XBMC.RunScript(/storage/.kodi/addons/service.hyperion-switcher/switchHyperionSource.py, VIDEOGRABBER)</green>
  3.  <blue>XBMC.RunScript(/storage/.kodi/addons/service.hyperion-switcher/switchHyperionSource.py, STOP</blue>

Voici une petite explication :

  • J'ai assigné 3 boutons de couleurs pour interagir avec le système et exécuter des scripts
  • Le bouton rouge permettra de lancer Hypérion avec la gestion de capture interne prioritaire, pour Kodi ( d'ou le mot KODI en fin de ligne )
  • Le bouton vert pour une utilisation d'Hypérion avec la capture par videograbber prioritaire ( idem mais avec le mot VIDEOGRABBER )
  • Le bouton bleu pour stopper le script. ( A tester car je n'ai pas le souvenir que ça fonctionne, sinon la changer par killall hyperiond )

Vous pouvez changer de bouton en faisant un copier de ce qui se trouve entre les balises <> </> et le coller sur une autre ligne entre 2 autres balises. Un bouton que vous ne pensez pas devoir utiliser et qui doit être présent sur votre télécommande sinon ça ne peux marcher.

Il ne reste plus qu'a tester le changement de script avec la télécommande.

 

Dernier point important :

il se pourrait que Lirc ne fonctionne pas d'ou une non-réaction de la télécommande. ( Apres avoir branché votre récepteur infrarouge )

Pour le savoir :

  • Connectez vous avec Putty et exécuter la commande
  • dmesg | grep lirc

Si celle-ci ne vous retourne aucune information c'est que lirc n'est pas fonctionnel. Ce fut le cas lorsque j'ai utilisé cette nouvelle version d'OpenELEC et pas sur l'ancienne alors que je n'ai effectué aucune modification matérielle.

 

J'y ai remédié en migrant vers LibreELEC ( possible également en migrant vers une autre version d'OpenELEC ). Vous pouvez la faire autant de fois que vous le désirez et assez facilement à l'aide du fichier .tar.

 

Voyez par vous mêmes les 2 messages différents affichés lorsque j'ai entré la commande dmesg | grep lirc dans OpenELEC 8.0.3 puis dans LibreELEC 8.0.1 après migration.

 

Lirc est fonctionnel sur le second et mon récepteur infrarouge est bel et bien détecté sur la broche GPIO18, la ou j'ai connecté le fil vert.

Le changement de configuration devrait être opérationnel vous permettant de basculer d'une configuration à une autre. Ne fermez pas la fenêtre SSH nous en aurons besoin pour la 2nde méthode.

 

Voyons maintenant la 2nde méthode, en utilisant Putty ou une application Android pour effectuer le basculement via SwitchHyperion.sh

 

Methode N°2 : Utilisation du script SwitchHyperion.sh

 

Nous allons voir comment effectuer cette bascule en ligne de commande via Putty ou via une application Android. Ce script fonctionne sur le même principe qu’Hypérion Switcher sauf qu' :

  • Avec la télécommande j'avais le choix d’exécuter hyperion, soit avec la gestion de la capture interne soit avec celle du Videograbber
  • Alors qu'en exécutant mon script, la bascule se fera, comme au Ping Pong, de l'un vers l'autre.

Voyons en détail le contenu de mon script en l’éditant avec Notepad++ :

Je l'ai écris de tel sorte que les modifications se font en haut de fichier et en utilisant des variables. 2 lignes sont à regarder de plus près :

  • KODIGRABBER="/storage/.config/ambilight/hyperion.config_KODI_75WS2812B.json"
  • USBGRABBER="/storage/.config/ambilight/hyperion.config_VIDEOGRABBER_75WS2812B.json"

Il vous faudra changer le nom de profile 75WS2812B par celui que l'on à défini dans switchHyperionSource.conf, un peu plus haut dans le tuto.

 

Pour vous la faire court sur son fonctionnement :

  • Si aucune instance hyperiond est en cours d’exécution, le script va lancer hyperiond avec la gestion de la capture interne, soit KODI
  • S'il par contre, une instance hyperiond est déjà en cours d’exécution il va déterminer laquelle puis si il trouve que c'est celle gérant :
  1. la capture interne, il va tuer le processus hyperiond pour en lancer un nouveau avec la gestion du VideoGrabber
  2. la capture Videograbber, alors il va répéter la même procédure que précédemment mais avec la gestion de la capture interne.

A chaque exécution, il va copier une ligne dans un fichier log se trouvant dans /storage/logfiles/hyperion.log. Arrivé à 100 lignes, donc à 100 exécutions, ce fichier se réinitialisera automatiquement.

 

Une fois que vous avez modifié votre fichier, copier le, à l'aide de Samba, dans le dossier ConfigFiles. Ensuite :

  • Retournez sur la fenêtre de connexion Putty et exécuter cette commande ls -l /storage/.config. On doit voir le fichier SwitchHyperion.sh.
  • Déplaçons le dans le dossier /storage en tapant cette commande mv /storage/.config/SwitchHyperion.sh /storage/ puis
  • Rendons exécutable le script avec celle-ci chmod +x /storage/SwitchHyperion.sh
  • Créons un alias dans le fichier .profile en exécutant la commande echo "alias switch='/storage/SwitchHyperion.sh'" >> /storage/.profile
  • Faire un cat .profile pour voir le contenu du fichier et confirmer la bonne exécution de la commande précédente.

Reste à voir comment exécuter le script via Putty et via notre Application Android.

 

Utilisation avec Putty

 

Il ne reste plus qu'a exécuter le script. Par contre :

  • On ne pourra pas utiliser l'alias switch car il n'est toujours pas actif ( not found )
  • En exécutant les commandes alias switch='/storage/SwitchHyperion.sh' (commande reconnu que le temps de la connexion SSH) puis switch 
  • Vous pouvez aussi recharger le fichier .profile, sans déconnexion SSH, en exécutant cette commande source ~/.profile.

Sur l'image de gauche on voit que la commande switch lance le script SwitchHyperion.sh avec la prise en charge du profile KODI.

 

Si vous appuyez sur entrée puis retaper la commande switch, le script sera exécuter avec la prise en charge du VideoGrabber.

 

J'ai fait un ps -ef | grep hyperiond pour vous montrer que l'instance hyperiond avec KODI était toujours en cours d’exécution avant le lancement de la nouvelle commande switch.

 

Les modifications sont maintenant terminés et savons que tout fonctionne vu que nous venons de tester notre script. Voyons comment l'exécuter directement depuis une application sous Android.

 

 

Utilisation avec Connectbot

 

Nous allons utilisé l'application Connectbot pour nous connecter sur le Pi Zéro en SSH et exécuter le script automatiquement via un Widget.

Merci à deathloads de Dealabs de m'avoir fait découvrir cette appli et d'avoir mis quelques Screenshots dans le sujet consacré à l'Ambilight ;-).

 

Il peut en exister d'autres faisant la même chose mais celle-ci fait ce qu'on lui demande donc pourquoi aller en chercher une autre ?

 

Une fois que vous avez installé Connectbot sur votre smartphone ouvrer le puis :

  • Appuyez sur le + pour créer un profile
  • Sous la ligne utilisateur@nom d'hote:port saisir root@AdresseIPduPIZero soit pour moi root@192.168.1.1
  • Modifier le nom ( qui est identique à la ligne précédente normalement ) par Switch Hyperion
  • Descendre et activer la ferme à la déconnexion 
  • Tout en bas dans les commandes à exécuter saisir ces 4 lignes ( la 4ème ligne est juste un espace )
  1. switch
  2. sleep 3
  3. exit
  4.  
  • Puis appuyez sur le + en haut à droite pour valider la création du profile SSH Switch Hyperion

Le profile Switch Hypérion est maintenant créer donc :

  • Retourner sur votre écran d’accueil puis
  • Rajouter le Widget Connectbot. Il va vous demander de sélectionner le profile utilisé, soit Switch Hyperion.

Un nouveau Widget Switch Hyperion fera son apparition sur votre écran. Appuyons dessus. La connexion SSH va s'initialiser et il vous sera demander de la valider puis de taper votre mot de passe ( en fonction des distributions que vous aurez choisis ) openelec ou libreelec.

 

Dès la connexion établi, il y aura :

  • Une exécution de la commande switch ( qui exécutera notre script SwitchHyperion.sh )
  • Une pause de 3 secondes pour vous permettre de voir ce qui se passe
  • Une déconnexion de la session SSH.

Lors des prochaines connexions seul le mot de passe vous sera demandé. Si vous voulez utiliser une clé privé pour établir une connexion, sans devoir saisir son mot de passe, vous pouvez jetez un oeil à mon tuto Comment se connecter en ssh sans devoir à entrer ses identifiants.

 

Une fois que tout fonctionne correctement vous pouvez, si vous le voulez, rajouter un & après switch ( pour une exécution en arrière-plan, cela empêche l'affichage des lignes à l’écran, bien que je préfère les voir défilés ) et supprimer la ligne sleep 3 ( car nous n'avons plus besoin de voir les lignes de code, si ajout du symbole &, donc demande de déconnexion immédiate ).

 

Vous avez maintenant le choix entre 2 types de bascule, soit par Télécommande Infrarouge, soit par Connectbot.

 

Si votre source s’éteint complètement et que la bascule se fait automatiquement, vous n'aurez pas besoin de ces manipulations mais peut être, aurez appris des trucs en plus, si vous ne le saviez pas déjà.

 

Nous arrivons au dernier point que je traiterai dans ce tuto, l'installation de l'extension Hyperion-Kodi et du logiciel Hyperion Screen Capture qui, vous allez le voir, pourrait être très utile à certains.

 

Installation de l'extension Hypérion-Kodi et du logiciel Hypérion Screen Capture

 

L'extension Hyperion-Kodi comme son nom l'indique s'ajoute à Kodi. Elle peut l’être sous Windows, Mac, Linux ou encore Android ( fonctionne sous ce dernier en désactivant l’accélération matérielle ). Elle permet de transmettre via le réseau local, des informations de changements de couleurs au serveur Hypérion tournant sur le Pi Zéro.

 

Par exemple, imaginons que je dispose d'un HTPC tournant sous Windows 10, que j'ai installé Kodi dessus ainsi que Hypérion-Kodi.

Lorsque je lancerai une vidéo, mes LEDs seront synchronisés en fonction de celle-ci de manière totalement transparente, sans avoir besoin de brancher le HTPC à quelques dispositifs que ce soit ( HDMI2A, Videograbber...).

 

La client capturera l'image, la traitera et enverra les informations de changements de couleurs au serveur Hypérion tournant sur le Pi Zéro à travers le réseau local.

 

Hyperion Screen Capture se base sur le même principe mais n'est plus limité à Kodi. Il fonctionnera sur tout l’environnement Windows ( sauf les jeux apparemment ).

 

Débutons par l'extension Hyperion-Kodi.

 

Hyperion-Kodi

 

Cet Add-on s'installe dans Kodi que vous utilisez sur votre Ordinateur ou tablette sous Windows/Linux/Mac/Android. Il va falloir qu'on passe par l'installateur de fichier ZIP pour le rajouter. Voici le résumé des manipulations :

  • Executer Kodi puis sélectionner l'icone Extensions
  • Sélectionner la roue crantée à droite pour accéder aux paramètres 
  • Sélectionner la ligne Sources inconnues pour activer cette fonction. Un message s'affiche cliquer sur Oui
  • Revenir dans l'onglet Extensions puis sélectionner la boite en carton à gauche
  • Sélectionner ensuite Installer depuis un fichier Zip puis naviguer jusqu'au dossier ou se trouve hyperion.kodi-1.0.2.zip
  • Puis sélectionner ce fichier pour lancer l'installation. Un bandeau doit s'afficher en haut à droite confirmant son installation.

Une fois que notre extension est installé, il va falloir la configurer. Pour cela :

  • Revenir en arrière puis sélectionner l'icone Mes extensions et enfin Tout
  • Descendre jusqu’à Hyperion Ambilight et sélectionner le
  • Cliquer sur Configurer
  • Cliquer ensuite sur Hyperion host IP-adress puis entrer l'adresse IP du Pi Zéro
  • Vous pouvez également activer l'ambilight lors de la mise en veille
  • Cliquer sur OK pour valider les modifications.

Point important : Surtout penser à définir une priorité inférieur à celle de la capture interne et celle du Videograbber ( 890 ou 900 ) paramétré dans les fichiers hyperion...*.json sinon ça ne fonctionnera pas.

 

Il ne reste plus qu'a lancer une vidéo et voir le résultat. Si tout se passe comme prévu les LEDs doivent réagir en fonction de ce que vous lirez dans Kodi sur votre Ordinateur ou Tablette. Pratique quand on veux se passer de Videograbber, HDMI2AV ou encore Splitter.

 

Voyons maintenant dans le même registre le logiciel Hyperion Screen Capture.

 

Hyperion Screen Capture ( Windows seulement )

 

Info concernant Hyperion Screen Capture : Malheureusement celui-ci ne fonctionne qu'avec un Zoom à 100% donc ceux qui qui ont defini un Zoom à 125% voir 150% et qui veulent malgré tout l'utiliser, devront configurer leur bureau avec cette valeur. ( testé sous Windows 10, peut être avec un Windows antérieur cette contrainte n'a plus lieu d’être ).

 

Le logiciel Hyperion Screen Capture reprend les mêmes caractéristiques que l'extension précédente mais elle permet de ne plus se restreindre à l'utilisation avec Kodi.

 

En effet la capture sera active lorsque vous surferez sur votre Navigateur préféré, regarderez Film/Séries ou encore travaillerez sur n'importe quelles applications ( pas de jeux désolé ).

 

Commençons par installer notre logiciel. 

  • Exécuter SetupHyperionScreenCap.exe puis cliquer sur suivant à toutes les étapes en n'oubliant pas de décocher Launch Hyperion Setup Capture à la dernière.

Notre logiciel est maintenant installé et il va falloir le configurer. Sur le bureau vous devriez avoir une icone Hyperion Screen Capture. Donc :

  • Faire un Click droit sur cette icone et sélectionner la ligne Ouvrir l'emplacement du Fichier. On se retrouve dans Program Files.
  • Faire ensuite un Click droit sur HyperionScreenCap.exe et sélectionner cette fois-ci Propriétés
  • Cliquer sur l'onglet Compatibilité
  • Cocher la case Exécuter ce programme en tant qu'Administrateur puis cliquer sur Appliquer et enfin OK.

Passons maintenant à l’édition du fichier de configuration pour notre programme :

  • Faire un Click droit sur le fichier HyperionScreenCap.exe.config puis Ouvrir avec et enfin sélectionner notre cher Notepad++
  • Changer la valeur après la ligne add key="hyperionServerIP" value=" par l'adresse IP du Pi Zéro soit pour moi 192.168.1.1
  • Sauver votre fichier. On va vous dire d'ouvrir notepad++ en mode administrateur, cliquer sur Oui
  • Sauver de nouveau votre fichier. Cette fois-ci ça fonctionne

Tout est prêt pour que l'on puisse exécuter notre programme. Double cliquer sur HyperionScreenCap.exe pour le lancer.

 

Un message en bas à droite vous indique que la connexion à était établi. Vous pouvez faire réagir vos LEDs en agissant directement sur votre ordinateur ou tablette sous Windows et cela, comme précédemment, à travers le réseau local. 

 

Vous verrez également une petite icone ronde arc-en-ciel qui, sur laquelle si vous faites :

  • Un Click droit vous permettra d’accéder aux paramètres de l'application en sélectionnant Setup
  • Un double Click vous permettra d'activer/désactiver l'application. ( l'icone deviendra grise et les LEDs ne réagiront plus ).

Grace cette extension et application vous serez capable de faire de l'Ambilight OTA /;-).

 

Ce tuto est à présent terminé, j'en peux plus et encore j'aurai pu le rallonger pour rentrer d'avantages dans les détails mais je vous épargne ce supplice /:-).

 

Vous savez dès à présent mettre en place une installation Ambilight de A à Z, que ce soit en utilisation Light ou en version complète.

 

Encore un merci à deathloads pour l'info sur Connectbot, c'est vrai que c'est beaucoup mieux et plus rapide à mettre en oeuvre qu'avec la méthode de la Télécommande IR. Comme je l'ai dit, ça peux toujours servir. Dernière chose, on voit que, malgré ses connaissances, on en apprend tout les jours et le fait de partager nous permet de nous améliorer, la preuve.

 

Bon mod à tous !!!

 

Commentaires : 0 (Discussion fermée)
    Aucun commentaire pour le moment.