Table des matières:

Système Ambilight pour chaque entrée connectée à votre téléviseur. WS2812B Arduino UNO Raspberry Pi HDMI (Mise à jour 12.2019): 12 étapes (avec photos)
Système Ambilight pour chaque entrée connectée à votre téléviseur. WS2812B Arduino UNO Raspberry Pi HDMI (Mise à jour 12.2019): 12 étapes (avec photos)

Vidéo: Système Ambilight pour chaque entrée connectée à votre téléviseur. WS2812B Arduino UNO Raspberry Pi HDMI (Mise à jour 12.2019): 12 étapes (avec photos)

Vidéo: Système Ambilight pour chaque entrée connectée à votre téléviseur. WS2812B Arduino UNO Raspberry Pi HDMI (Mise à jour 12.2019): 12 étapes (avec photos)
Vidéo: Full Hyperion Ambilight Tutorial (TV Backlight) - LEDs Match Colors On The Screen 2024, Juillet
Anonim
Image
Image
Système Ambilight pour chaque entrée connectée à votre téléviseur. WS2812B Arduino UNO Raspberry Pi HDMI (Mise à jour 12.2019)
Système Ambilight pour chaque entrée connectée à votre téléviseur. WS2812B Arduino UNO Raspberry Pi HDMI (Mise à jour 12.2019)
Système Ambilight pour chaque entrée connectée à votre téléviseur. WS2812B Arduino UNO Raspberry Pi HDMI (Mise à jour 12.2019)
Système Ambilight pour chaque entrée connectée à votre téléviseur. WS2812B Arduino UNO Raspberry Pi HDMI (Mise à jour 12.2019)
Système Ambilight pour chaque entrée connectée à votre téléviseur. WS2812B Arduino UNO Raspberry Pi HDMI (Mise à jour 12.2019)
Système Ambilight pour chaque entrée connectée à votre téléviseur. WS2812B Arduino UNO Raspberry Pi HDMI (Mise à jour 12.2019)

J'ai toujours voulu ajouter de l'ambilight à mon téléviseur. Ça a l'air tellement cool ! Je l'ai finalement fait et je n'ai pas été déçu !

J'ai vu de nombreuses vidéos et de nombreux tutoriels sur la création d'un système Ambilight pour votre téléviseur, mais je n'ai jamais trouvé de tutoriel complet pour mes besoins exacts.

C'est si le système n'est conçu que pour une seule source (PS4 ou Xbox ou TV, etc.) l'expérience que j'ai accumulée au même endroit lors de la réalisation de ce projet.

Le système que j'ai fabriqué peut être connecté à jusqu'à 5 sources différentes. Je l'ai configuré ici pour fonctionner avec mon système PS4 ou mon lecteur home cinéma/blu-ray ou mon Foxtel (boîtier de télévision par câble australien) ou mon ordinateur et il me reste une entrée de rechange pour autre chose. Tout cela simplement en appuyant sur un bouton.

J'ai ajouté un écran LCD pour afficher la source actuelle connectée à l'ambilight et un bouton ON/OFF pour le système.

Si vous cherchez à disposer d'ambilight pour toutes les différentes entrées connectées à votre téléviseur, que vous souhaitez utiliser les bandes LED de type WS2812, ne cherchez plus, ce tutoriel est fait pour vous

J'ai entré cette instructable dans le concours Raspberry PI 2016, donc si vous l'aimez, envoyez-moi un vote rapide ! Très apprécié à l'avance.

Étape 1: Matériel nécessaire pour construire ce système

Matériel nécessaire pour construire ce système
Matériel nécessaire pour construire ce système
Matériel nécessaire pour construire ce système
Matériel nécessaire pour construire ce système
Matériel nécessaire pour construire ce système
Matériel nécessaire pour construire ce système
Matériel nécessaire pour construire ce système
Matériel nécessaire pour construire ce système

Toutes les sources n'ont pas de sortie HDMI, comme mon ordinateur est toujours connecté via l'ancien connecteur VGA et mon unité Foxtel est toujours connectée via des câbles AV. J'ai dû acheter pas mal d'adaptateurs différents pour que tout fonctionne, mais au final, le résultat est génial et en vaut la peine !!

Tout ici ne sera pas nécessaire en fonction de votre propre système et si vous souhaitez un écran LCD ou non. Je vais séparer les éléments facultatifs.

  1. 1x bande de 4 mètres de WS2812B 30leds/m. (c'était suffisant pour mon téléviseur 55 pouces) J'ai acheté le mien chez Aliexpress. Bande LED
  2. 1xcarte Arduino UNO.
  3. 1x Raspberry Pi modèle 2 ou 3.
  4. 1x carte SD. (8 Go c'est bien)
  5. 1x Capture vidéo type STK1160. (attention lors du choix du grappin, certains modèles ne fonctionneront pas !!) C'est celui que j'ai eu et il fonctionne correctement. Capture vidéo
  6. 1x alimentation 5V 10amps. J'ai encore reçu le mien d'Aliexpress et ça marche bien. Source de courant
  7. 1x répartiteur HDMI 1 x 2. répartiteur
  8. 1x commutateur HDMI 5 en 1. commutateur
  9. 1x convertisseur HDMI vers AV. convertisseur
  10. 1x condensateur électrolytique 10uF

câbles et matériel:

  1. Câble HDMI 4x 25cm. câble
  2. 2x connecteurs de boîtier HDMI femelle à femelle. connecteur
  3. 1x connecteur d'entrée 220V (fusible).
  4. 1x boîtier de projet (peut être différent, c'est à vous de décider, le mien fait 424 mm x 203 mm x 86 mm) boîte
  5. Fil monoconducteur pour connecter le 5V aux différents convertisseurs, etc.
  6. Câbles rubans ou extensions pour câbler les entrées à l'exemple Arduino

suppléments en option:

  1. 1x convertisseur AV vers HDMI. convertisseur
  2. 1x convertisseur VGA vers HDMI. convertisseur
  3. Câble HDMI 2x 25cm. câble
  4. 1x écran LCD 16 caractères x 2 lignes. ACL
  5. 1x interface I2C pour l'écran LCD. interface
  6. 1x ventilateur de refroidissement pour le boîtier.

Étape 2: Quels programmes informatiques seront requis

Quels programmes informatiques seront requis
Quels programmes informatiques seront requis
Quels programmes informatiques seront requis
Quels programmes informatiques seront requis
Quels programmes informatiques seront requis
Quels programmes informatiques seront requis

Il y aura quelques programmes différents requis pour ce projet.

Vous devez les télécharger et les installer (si vous ne l'avez pas déjà)

  • WinSCP peut être téléchargé ici
  • Putty peut être téléchargé ici (cliquez sur le lien putty.exe dans la liste)
  • SDFormatter peut être téléchargé ici
  • Win32DiskImager peut être téléchargé ici
  • Arduino IDE peut être téléchargé ici (j'utilisais la version 1.8.10 à l'époque)
  • HyperCon peut être téléchargé ici
  • Notepad++ (facultatif) peut être téléchargé ici

Vous devrez également télécharger l'image disque du Raspberry Pi. Choisissez le fichier nommé "OpenELEC 8.0.3 pour RPI2 / RPI3" que vous pouvez télécharger en bas de page ici

Étape 3: Mise en route du Raspberry Pi

Mise en route du Raspberry Pi
Mise en route du Raspberry Pi
Mise en route du Raspberry Pi
Mise en route du Raspberry Pi
Mise en route du Raspberry Pi
Mise en route du Raspberry Pi

Nous allons commencer par faire fonctionner le Raspberry Pi

1) Nous allons écrire openELEC sur la carte SD.

  1. Décompressez l'image disque du Raspberry Pi.
  2. Branchez la carte SD sur votre ordinateur.
  3. Exécutez le programme SDFormatter.
  4. Sélectionnez la lettre du lecteur de carte SD.
  5. Cliquez sur l'option et sélectionnez "réglage de la taille" sur ON.
  6. Cliquez sur OK.
  7. Cliquez sur Formater.
  8. Exécutez le programme Win32DiskImager.
  9. Sélectionnez l'image Raspberry Pi et la lettre de lecteur de votre carte SD.
  10. Sélectionnez Écrire.

2) Éjectez la carte SD de votre ordinateur et branchez-la sur votre Raspberry Pi.

Connexions à faire sur le Pi:

  • Connectez un câble Ethernet à votre Pi depuis votre réseau.
  • Connectez le port HDMI de votre Pi à votre téléviseur ou écran.
  • Branchez un clavier et une souris sur les ports USB. (J'utilise un combo souris et clavier sans fil et j'ai laissé le dongle connecté au Pi, de cette façon, maintenant que le Pi est emballé, je n'ai pas besoin de tout ouvrir si je veux accéder à mon Pi.)
  • Branchez l'extrémité USB de la capture vidéo sur votre Pi.

3) Connectez une alimentation 5V à votre Pi et suivez les informations à l'écran jusqu'à ce qu'il démarre. Vous devriez être présenté avec un écran selon ma photo.

Nous devons maintenant vérifier votre connexion Internet. Suivez le chemin Paramètres (roue dentée) - informations système - résumé et notez votre adresse IP, elle sera nécessaire à l'avenir.

Assurez-vous que SSH est activé, suivez le chemin Paramètres (roue dentée) - openELEC - services et vérifiez que "activer SSH" est activé.

Nous allons maintenant installer HyperCon et vérifier notre connexion de capture vidéo au Pi

Pour cela, nous allons utiliser Putty. Votre Pi doit être allumé et connecté à votre réseau pour que cela fonctionne.

  • Tapez l'adresse IP que vous avez notée juste avant pour votre Pi. selon l'image ci-jointe et cliquez sur Ouvrir.
  • Vous devriez alors être invité avec une fenêtre vous demandant un nom d'utilisateur selon l'image ci-jointe. tapez root et appuyez sur Entrée.
  • un mot de passe vous sera alors demandé. (notez que les caractères n'apparaîtront pas lors de la saisie du mot de passe, c'est normal). Tapez openelec et appuyez sur Entrée.
  • Pour vérifier tous les ports USB, tapez lsusb et appuyez sur Entrée. Vous devriez trouver votre enregistreur vidéo dans la liste selon l'image ci-jointe.
  • Vous pouvez maintenant fermer la connexion.

Ceci termine la configuration du Raspberry PI. Nous y reviendrons plus tard pour télécharger le fichier de configuration de nos LED.

Étape 4: Hyperion et le fichier de configuration

Hyperion et le fichier de configuration
Hyperion et le fichier de configuration
Hyperion et le fichier de configuration
Hyperion et le fichier de configuration
Hyperion et le fichier de configuration
Hyperion et le fichier de configuration

La mise en place de votre projet dépendra de vous. J'ai essayé de mettre autant de commentaires que possible sur les photos pour vous donner une idée de la façon dont mon installation est assemblée.

Une chose très importante est de s'assurer que l'entrée de la capture vidéo vers le Pi n'est connectée à rien d'autre, j'ai eu des erreurs de taille d'image et beaucoup d'autres choses étranges se sont produites lorsque j'avais autre chose connecté à l'autre port USB. Il doit atteindre une limite de bande passante ou quelque chose du genre, mais cela ne fonctionnerait pas lorsque j'essayais de brancher un dongle WiFi dans cette clé USB ou même le câble de sortie allant à l'Arduino

Je recommande de placer tous les convertisseurs, etc. et de commencer par les alimenter tous en premier. La plupart de ces convertisseurs sont livrés avec un bloc d'alimentation à prise murale. J'ai coupé le câble et n'ai utilisé que le connecteur du côté du convertisseur et j'ai décidé de construire une petite carte avec beaucoup de connexions +5V et GND pour les alimenter toutes. Cela a permis de gagner beaucoup de place.

J'ai collé les différents convertisseurs avec de la colle à 2 composants et utilisé des supports en plastique pour boulonner l'Arduino. J'ai également ajouté de la colle à l'arrière du connecteur IEC pour un peu plus de rigidité. Mon connecteur IEC a un interrupteur ON/OFF intégré que je peux utiliser pour éteindre l'ensemble de l'unité. Il a également un fusible où j'ai mis un fusible de 1,6 A / 250 V pour la protection si quelque chose devait mal tourner avec mon alimentation bon marché.

J'ai utilisé mon outil dremel et quelques fichiers pour faire les ouvertures dans l'enceinte et lui donner une belle apparence. J'ai également creusé une ouverture pour le capteur IR à l'avant du boîtier au-dessus de l'écran LCD.

Je n'ai pas dessiné de schéma de principe approprié pour le câblage de l'Arduino, faites-moi savoir si quelqu'un préférerait en avoir un au lieu d'utiliser l'image que j'ai composée.

N'hésitez pas à commenter si nécessaire et je me ferai un plaisir de répondre aux questions et de mettre à jour cette instructable pour la rendre plus complète ou plus facile à comprendre.

Étape 9: piratage du commutateur HDMI (facultatif)

Piratage dans le commutateur HDMI (facultatif)
Piratage dans le commutateur HDMI (facultatif)
Piratage dans le commutateur HDMI (facultatif)
Piratage dans le commutateur HDMI (facultatif)
Piratage dans le commutateur HDMI (facultatif)
Piratage dans le commutateur HDMI (facultatif)

Pour que notre Arduino indique quelle source le commutateur HDMI affiche réellement, nous avons besoin d'un moyen d'envoyer ces informations du commutateur à l'Arduino. Heureusement, le commutateur le commutateur a 5 LED pour afficher la source 1 à 5 lorsqu'il est sélectionné et nous allons utiliser ces signaux pour l'Arduino.

J'ai pris un signal des 5 LED mais plus tard, quand j'ai écrit le code Arduino, j'ai réalisé que je n'avais pas besoin d'un signal de la LED numéro 1, si vous regardez de près la connexion du câble plat à l'Arduino, vous pouvez voir que le fil marron sur le côté droit n'est en fait pas connecté. Nous n'avons que LED2 connecté à A0, LED3 à A1, LED4 à A2 et LED5 à A3.

Je les ai connectés aux entrées analogiques pour aucune autre raison que la commodité du câblage dans ma boîte de projet.

Si vous décidez de construire ce projet et que vous ne souhaitez pas avoir d'écran LCD sur le panneau avant, cette étape n'est pas nécessaire et peut être ignorée. Il sera difficile de savoir quelle source est sélectionnée sur le commutateur HDMI si les LED dessus sont hors de vue comme dans la conception de mon projet où le commutateur est logé à l'intérieur du boîtier.

Étape 10: L'Arduino et le code Arduino

L'Arduino et le code Arduino
L'Arduino et le code Arduino
L'Arduino et le code Arduino
L'Arduino et le code Arduino
L'Arduino et le code Arduino
L'Arduino et le code Arduino

Téléchargez le croquis à partir du lien suivant. ici

Pour que le sketch Arduino se compile correctement, vous aurez besoin de 2 bibliothèques:

Adafruit_NeoPixel.h que vous pouvez télécharger ici

LiquidCrystal_I2C.h que vous pouvez télécharger ici (version 2.0)

J'ai essayé d'ajouter autant de commentaires que possible via le code. Si quelque chose n'est pas clair, n'hésitez pas à poster un commentaire et à poser des questions. Ils peuvent aider beaucoup de gens.

Jetez un œil au code que j'ai joint à cette étape.

Datapin est la broche sélectionnée où le Din de notre bande LED sera connecté

#define DATAPIN 5

Le nombre de LED est le nombre réel de LED dans votre système

#définir le nombre de LED 113

Le débit en bauds ne doit pas être modifié, ou il devra également être modifié dans le fichier de configuration Hyperion

#define BAUDRATE 500000

Il s'agit du niveau de luminosité auquel vous souhaitez que votre bande LED fonctionne. Tests requis dans votre environnement. 0 à 100 sélection

#définir la LUMINOSITÉ 100

Vous devrez modifier la ligne 24 avec votre propre préfixe.

À l'aide du fichier de préfixe joint, recherchez votre numéro de LED et copiez les valeurs du fichier dans votre ligne de préfixe. Vous devez ouvrir le fichier avec quelque chose comme Notepad ++ pour qu'il s'affiche correctement.

Exple pour 113 LEDS: const char prefix = {0x41, 0x64, 0x61, 0x00, 0x70, 0x25};

Exple pour 278 LEDS: const char prefix = {0x41, 0x64, 0x61, 0x01, 0x15, 0x41};

A la fin du code, dans la routine check_source(), c'est ici que vous pouvez changer pour chaque source les informations qui vont s'afficher sur l'écran LCD lorsque la source est sélectionnée comme TV ou PS4 ou ordinateur etc etc…

Vous pouvez également régler le curseur LCD pour que le nom imprimé soit imprimé au centre de l'écran LCD.

Une fois que vous êtes satisfait de votre code, vous pouvez le télécharger sur votre Arduino et vérifier qu'il fonctionne correctement avec au moins l'écran LCD pour le moment.

Une fois votre Arduino programmé, veuillez ajouter un condensateur de 10 uF entre les broches GND et RESET. (Pin reset étant le + du condensateur).

Cela empêchera l'Arduino de redémarrer lorsque les données série provenant du Pi au démarrage du système.

Si vous devez reprogrammer l'Arduino, retirez le condensateur au préalable et remplacez-le une fois que c'est fait.

Étape 11: Rassembler le tout et tester

Raspberry Pi et Arduino peuvent maintenant être liés avec le câble USB.

La bande LED a été connectée au boîtier et à l'Arduino.

Arduino et Raspberry sont programmés.

L'alimentation 5V de l'alimentation va à tous les différents convertisseurs Arduino et Raspberry.

Lorsque l'alimentation est appliquée au boîtier de projet, la source LED du commutateur HDMI est allumée, le canal source peut être modifié au moyen de la télécommande ou du bouton du commutateur.

Sélectionnez la source sur votre téléviseur où vous avez connecté le câble principal à partir de la sortie du boîtier de projet et voyez si vous obtenez une image à l'écran à partir de la source que vous avez sélectionnée sur votre mélangeur.

Après quelques secondes, la bande LED devrait s'allumer progressivement et l'interrupteur s'éteindre. Cela signifie que l'Arduino a démarré et que la connexion avec la bande LED est bonne.

Peu de temps après, la bande LED devrait commencer à afficher des couleurs selon les informations transmises par le Raspberry.

Succès !! Vous avez maintenant terminé votre projet et pouvez commencer à profiter d'un spectacle de lumière télévisé divertissant

Étape 12: Contrôlez votre bande LED depuis votre téléphone

Contrôlez votre bande LED depuis votre téléphone
Contrôlez votre bande LED depuis votre téléphone
Contrôlez votre bande LED depuis votre téléphone
Contrôlez votre bande LED depuis votre téléphone
Contrôlez votre bande LED depuis votre téléphone
Contrôlez votre bande LED depuis votre téléphone
Contrôlez votre bande LED depuis votre téléphone
Contrôlez votre bande LED depuis votre téléphone

Pour ajouter un peu de plaisir à cela, vous pouvez télécharger une application sur Iphone, je suis sûr qu'elle doit également être disponible pour d'autres appareils.

Très facile à utiliser, assurez-vous simplement que votre Pi et votre bande LED sont allumés et appuyez sur le bouton Détecter en haut à gauche. Il devrait détecter le serveur, que vous pouvez nommer comme vous le souhaitez.

Sélectionnez-le et vous êtes prêt, vous pouvez choisir des couleurs dans la roue chromatique et votre bande s'allumera en conséquence ou choisirez parmi différents effets à afficher.

Concours Raspberry Pi 2016
Concours Raspberry Pi 2016
Concours Raspberry Pi 2016
Concours Raspberry Pi 2016

Deuxième prix au concours Raspberry Pi 2016

Conseillé: