Contrôler des neopixels comme un DJ : Différence entre versions

(12 révisions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
 
{{ {{tntn|Tuto Details}}
 
{{ {{tntn|Tuto Details}}
|Main_Picture=Contrôler_des_neopixels_comme_un_DJ_jinx_leds.gif
+
|Main_Picture=Contrôler_des_neopixels_comme_un_DJ_jinx.gif
 
|Licences=Attribution (CC BY)
 
|Licences=Attribution (CC BY)
|Description=Utilisez un ESP8266 pour contrôler des neopixels (ws2812) comme un technicien lumière depuis le Wi-Fi avec uniquement des logiciels gratuits.
+
|Description=<translate><!--T:1--> Utilisez un ESP8266 pour contrôler des neopixels (ws2812) comme un technicien lumière depuis le Wi-Fi avec uniquement des logiciels gratuits.</translate>
 
|Area=Art, Electronics, Music and Sound
 
|Area=Art, Electronics, Music and Sound
 
|Type=Creation
 
|Type=Creation
Ligne 16 : Ligne 16 :
 
}}
 
}}
 
{{ {{tntn|Introduction}}
 
{{ {{tntn|Introduction}}
|Introduction=Pour contrôler nos LEDs, nous allons utiliser le protocole Art-Net : https://fr.wikipedia.org/wiki/Art-Net
+
|Introduction=<translate><!--T:2-->
 +
Pour contrôler nos LED, nous allons utiliser le protocole Art-Net : https://fr.wikipedia.org/wiki/Art-Net
  
 +
<!--T:3-->
 
Ce protocole permet de transmettre des instructions DMX à travers le réseau en utilisant l'UDP.
 
Ce protocole permet de transmettre des instructions DMX à travers le réseau en utilisant l'UDP.
  
Cette méthode est très rapide et compatible avec la plupart des systèmes d'éclairage professionnels.
+
<!--T:4-->
 +
Cette méthode est très rapide , fiable et compatible avec la plupart des systèmes d'éclairage professionnels.
 +
 
 +
<!--T:5-->
 +
Une fois que nous aurons créer notre appareil avec l'ESP8266 nous allons utiliser Jinx, un logiciel sous Windows qui permet de contrôler nos LEDs.
 +
 
 +
<!--T:6-->
 +
Ce logiciel très complet permet de créer des animations à l'aide du son, d'une image, d'une vidéo, d'une webcam, même de capturer l'image de l'écran et aussi d'afficher du texte.</translate>
 
}}
 
}}
 
{{ {{tntn|TutoVideo}}
 
{{ {{tntn|TutoVideo}}
Ligne 27 : Ligne 36 :
 
}}
 
}}
 
{{ {{tntn|Materials}}
 
{{ {{tntn|Materials}}
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_led_ws2812b_strip.png
+
|Material=<translate><!--T:7-->
|Step_Picture_01=Contrôler_des_neopixels_comme_un_DJ_Envoyer_un_message_sur_discord_wemos.png
+
* ESP8266 (Wemos D1 Mini)
|Material=* ESP8266 (Wemos D1 Mini)
+
* Matrix WS2812b (ou strip de LED)
* Matrix WS2812b (ou strip de led)
+
* Resistance 475 Ohm (entre 300/500)
* Resistance 475 Ohm (Entre 300/500)
+
* Condensateur 1000µF (optionnel)
* Condensateur 1000µF
+
* Alimentation dédié pour les leds (optionnel)</translate>
|Tools=
+
|Tools=<translate></translate>
 
|ExternalAttachmentsLinks={{ {{tntn|ExternalAttachmentsLinks}}
 
|ExternalAttachmentsLinks={{ {{tntn|ExternalAttachmentsLinks}}
 
|ExternalAttachmentsLinks=http://www.live-leds.de/
 
|ExternalAttachmentsLinks=http://www.live-leds.de/
Ligne 42 : Ligne 51 :
 
{{ {{tntn|Separator}}}}
 
{{ {{tntn|Separator}}}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
|Step_Title=Préparer l'ESP8266
+
|Step_Title=<translate><!--T:8--> Préparer l'ESP8266</translate>
|Step_Content=Si vous ne l'avez pas fait, ajouter le support de l'ESP8266 dans le logiciel Arduino : https://github.com/esp8266/Arduino#installing-with-boards-manager
+
|Step_Content=<translate><!--T:9-->
 +
Si vous ne l'avez pas fait, ajouter le support de l'ESP8266 dans le logiciel Arduino : [https://github.com/esp8266/Arduino#installing-with-boards-manager https://github.com/esp8266/Arduino#installing-with-boards-manager.]
  
Il y a plusieurs façon d'uploader le firmware que nous allons utiliser, le plus simple est d'utiliser l'exemple '''ESP8266WebServer -> WebUpdate'''
+
<!--T:10-->
 +
Il y a plusieurs façons d'uploader le firmware que nous allons utiliser, le plus simple est d'utiliser l'exemple '''ESP8266WebServer -> WebUpdate.'''
  
N'oubliez pas de changer STASSID et STAPSK avec le nom de votre réseau WiFi et votre mot de passe
+
<!--T:11-->
 +
N'oubliez pas de changer STASSID et STAPSK avec le nom de votre réseau Wi-Fi et votre mot de passe.
 
  #define STASSID "your-ssid"
 
  #define STASSID "your-ssid"
 
  #define STAPSK "your-password"
 
  #define STAPSK "your-password"
* Téléverser '''ESP8266WebServer -> WebUpdate'''
+
* Téléverser '''ESP8266WebServer -> WebUpdate.'''
* Appuyer sur le bouton RESET de l'ESP8266
+
* Appuyer sur le bouton RESET de l'ESP8266.
* Aller sur http://esp8266-webupdate.local.
+
* Aller sur http://esp8266-webupdate.local.</translate>
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
|Step_Title=Uploader ESP8266_ArtNetNode
+
|Step_Title=<translate><!--T:12--> Uploader ESP8266_ArtNetNode</translate>
|Step_Content=Nous pouvez maintenant flasher le firmware sur notre ESP8266
+
|Step_Content=<translate><!--T:13-->
* Télécharger ESP8266_ArtNetNode ici : https://github.com/mtongnz/ESP8266_ArtNetNode_v2
+
Nous pouvez maintenant flasher le firmware sur notre ESP8266
 +
* Télécharger ESP8266_ArtNetNode ici : https://github.com/mtongnz/ESP8266_ArtNetNode_v2.
 
* Retourner sur [http://esp8266-webupdate.local http://esp8266-webupdate.local.]
 
* Retourner sur [http://esp8266-webupdate.local http://esp8266-webupdate.local.]
 
* Cliquer sur Parcourir et sélectionner '''espArtnetNode_2.0.0_b5g_WEMOS.bin'''
 
* Cliquer sur Parcourir et sélectionner '''espArtnetNode_2.0.0_b5g_WEMOS.bin'''
* Cliquer sur update
+
* Cliquer sur update.
L'ESP8266 va redémarrer plusieurs fois avant d'être disponible.
+
L'ESP8266 va redémarrer plusieurs fois avant d'être disponible.</translate>
 
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_browse.png
 
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_browse.png
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
|Step_Title=
+
|Step_Title=<translate><!--T:14--> Paramétrage Wi-Fi</translate>
|Step_Content=
+
|Step_Content=<translate><!--T:15-->
 +
L'ESP8266 est maintenant en mode HotSpot, chercher le réseau Wi-Fi avec comme nom  '''espArtNode_00XXX.'''
 +
 
 +
<!--T:16-->
 +
Le mot de passe est :  '''byMtongnz2017'''
 +
* Allez sur http://2.0.0.1 et cliquez sur WIFI pour paramétrer le SSID/mot de passe
 +
* Cliquer sur '''REBOOT.'''</translate>
 +
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_arnet2.png
 +
}}
 +
{{ {{tntn|Tuto Step}}
 +
|Step_Title=<translate><!--T:17--> Trouver l'adresse IP de espArtNode</translate>
 +
|Step_Content=<translate><!--T:18-->
 +
Malheureusement, espArtNode n'utilise pas '''mdns''', donc vous devrez trouver l'adresse IP par vous même.
 +
 
 +
<!--T:19-->
 +
Vous pouvez utiliser [https://www.fing.com/ fing] (la version Android est la plus facile à utiliser) ou [https://play.google.com/store/apps/details?id=com.litux.art_net_controller_lite ArtNet-Lite] (cette application détecte automatiquement les appareils avec ArtNet)
 +
 
 +
<!--T:20-->
 +
Jinx (le logiciel que nous allons utiliser pour contrôler les LED) a un mode SCAN, mais il ne marche pas avec espArtNetNode.</translate>
 +
}}
 +
{{ {{tntn|Tuto Step}}
 +
|Step_Title=<translate><!--T:21--> Paramétrer les NeoPixels</translate>
 +
|Step_Content=<translate><!--T:22-->
 +
Dernier point, paramétrer le PORT A pour qu'il gère des LEDs NeoPixel.
 +
 
 +
<!--T:23-->
 +
Le '''PORT A''' correspond à la '''broche TX.'''
 +
* Cliquer sur PORT A.
 +
* Dans '''Port Type''', mettre '''LED pixels - WS2812.'''
 +
* Cliquer sur '''Save Changes.'''
 +
* Changez number of pixels.
 +
{{Info|Number of pixels n'apparait qu'après avoir sauvegardé les changements}}</translate>
 +
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_arnet4.png
 +
}}
 +
{{ {{tntn|Tuto Step}}
 +
|Step_Title=<translate><!--T:24--> Paramétrer Matrix Options</translate>
 +
|Step_Content=<translate><!--T:25-->
 +
Voilà, notre appareil est prêt, mais il nous reste à paramétrer 3 choses dans Jinx pour le contrôler.
 +
* '''Matrix Options''': Cette option paramètre la matrice virtuelle dans Jinx
 +
* '''Output devices''': les appareils connectés à Jinx
 +
* '''Output Patch''' : La position de chaque LED.
 +
Si vous ne l'avez pas déjà fait brancher votre matrice / strip de LED à votre ESP8266
 +
 
 +
<!--T:26-->
 +
{{Warning|Alimenter beaucoup de LED peut être compliqué, je vous conseille de lire attentivement le guide d'Adafruit. : https://learn.adafruit.com/adafruit-neopixel-uberguide/the-magic-of-neopixels}}
 +
{{Idea|Il est possible d'alimenter même une centaine de LED rien qu'avec l'USB du moment que vous réglait la luminosité au minimum. Faites attention si la luminosité est trop importante les LED vont se comporter bizarrement et peuvent être endommagés !}}
 +
* Télécharger Jinx ici : http://www.live-leds.de/
 +
* Aller dans '''Setup -> Matrix Options'''
 +
* Paramétrer '''Width (largeur) / Height (longueur)'''
 +
{{Info|Vous n'avez pas une matrice, juste un strip de LED?
 +
 
 +
<!--T:27-->
 +
Paramétrer la longueur (width) sur la longueur de votre strip et height (longueur) sur 4 (valeur minimum)}}</translate>
 +
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_wemos_neopixels.png
 +
|Step_Picture_01=Contrôler_des_neopixels_comme_un_DJ_matrixoptions.png
 +
}}
 +
{{ {{tntn|Tuto Step}}
 +
|Step_Title=<translate><!--T:28--> Paramétrer Output Devices</translate>
 +
|Step_Content=<translate><!--T:29-->
 +
Maintenant, nous allons connecter notre ESP à Jinx.
 +
* Aller sur '''Setup -> Output Devices'''
 +
* Cliquer sur '''Add'''
 +
* Choissisez '''Art-Net''' (option par défaut)
 +
* Déselectionner '''Broadcast''' (le broadcast est très lent)
 +
* Mettez l'adresse IP de votre ESP</translate>
 +
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_outputdevices.png
 +
}}
 +
{{ {{tntn|Tuto Step}}
 +
|Step_Title=<translate><!--T:30--> Paramétrer Output Patch</translate>
 +
|Step_Content=<translate><!--T:31-->
 +
Dernière chose à faire, il nous faut expliquer à Jinx dans quel ordre sont les LED.
 +
* Aller sur '''Setup -> Output Patch.'''
 +
* Choissisez votre ESP.
 +
* Cliquer sur '''Fast Patch.'''
 +
* Sélectionner la taille de votre matrice de LED.
 +
* Dans '''Patch Mode,''' mettez le sens de votre matrice.
 +
* Dans Pixel Order, mettez '''GRB.'''
 +
* '''Vérifier que First channel est bien à 0.'''</translate>
 +
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_fastpatch.png
 +
}}
 +
{{ {{tntn|Tuto Step}}
 +
|Step_Title=<translate><!--T:32--> Testez les LED</translate>
 +
|Step_Content=<translate><!--T:33-->
 +
{{Info|Il y a de grandes chances que vous ne paramétrerez pas vos LED correctement du premier coup, recommencez la partie Output Patch en cliquant sur Clear Patch avant et recommencez si c'est le cas. }}
 +
 
 +
<!--T:34-->
 +
Si vous avez un doute sur votre alimentation, commencez par baisser la valeur Master afin de ne pas abimer vos LED.
 +
* Aller dans '''Setup / Start Output'''
 +
* Dans '''Channel 1''', choisissez '''Simple Color''', vérifiez que les LED s'allument
 +
* Cliquez sur '''Edit''' et vérifier que la couleur Rouge / Vert / Bleu est correcte.
 +
* Dans '''Channel 1''', choisissez '''Radar/Scan Lines'''
 +
* Vérifier que votre matrice '''affiche correctement la ligne'''
 +
Je ne vais pas rentrer plus en détail sur le fonctionnement de Jinx, essayez par vous même! Un manuel est disponible (en anglais) ici : http://www.live-leds.de/downloads/</translate>
 +
|Step_Picture_00=Contrôler_des_neopixels_comme_un_DJ_jinx_brightness.png
 +
|Step_Picture_01=Contrôler_des_neopixels_comme_un_DJ_jinx_radarscan.png
 +
}}
 +
{{ {{tntn|Tuto Step}}
 +
|Step_Title=<translate><!--T:35--> Notes sur les LED</translate>
 +
|Step_Content=<translate><!--T:36-->
 +
Vous pouvez trouver les modèles 3D de mes LED sur Thingiverse :
 +
 
 +
<!--T:43-->
 +
*https://www.thingiverse.com/thing:3458654
 +
*https://www.thingiverse.com/thing:3462891
 +
 
 +
<!--T:44-->
 +
Ces modèles sont faits par Olivier Sarrailh.
 +
 
 +
<!--T:37-->
 +
Si vous voulez faire une matrice de LED, je ne vous conseille pas d'utiliser des strip de LED, c'est difficile de les aligner, utiliser plutôt des matrices toutes faites (flexible si vous voulez créer une matrice circulaire)
 +
 
 +
<!--T:38-->
 +
Je me répète, mais jetez un œil à la documentation d'Adafruit sur l'alimentation des LED
 +
 
 +
<!--T:39-->
 +
https://learn.adafruit.com/adafruit-neopixel-uberguide/the-magic-of-neopixels
 +
 
 +
<!--T:40-->
 +
A contrario de ce qui y est dit, il est possible d'alimenter des matrices plus ou moins grandes avec juste un câble USB, si vous baissez la luminosité.
 +
 
 +
<!--T:45-->
 +
Attention, vous risquez d'abimer les LED, si vous monter accidentellement la luminosité.
 +
 
 +
<!--T:41-->
 +
Voilà pour ce tutoriel, n'hésitez pas à laisser un commentaire.
 +
 
 +
<!--T:42-->
 +
Et suivez-moi sur twitter pour avoir plus d'informations sur les prochains tutoriels !  https://twitter.com/m4dnerd.</translate>
 
}}
 
}}
 
{{ {{tntn|Notes}}
 
{{ {{tntn|Notes}}
|Notes=
+
|Notes=<translate></translate>
 
}}
 
}}
 
{{ {{tntn|Tuto Status}}
 
{{ {{tntn|Tuto Status}}
|Complete=Draft
+
|Complete=Published
 
}}
 
}}

Version du 1 juin 2019 à 00:28

Auteur avatarRémi Sarrailh (µsini) | Dernière modification 9/12/2019 par Clementflipo

Contrôler des neopixels comme un DJ jinx.gif
Utilisez un ESP8266 pour contrôler des neopixels (ws2812) comme un technicien lumière depuis le Wi-Fi avec uniquement des logiciels gratuits.

Introduction

Pour contrôler nos LED, nous allons utiliser le protocole Art-Net : https://fr.wikipedia.org/wiki/Art-Net

Ce protocole permet de transmettre des instructions DMX à travers le réseau en utilisant l'UDP.

Cette méthode est très rapide , fiable et compatible avec la plupart des systèmes d'éclairage professionnels.

Une fois que nous aurons créer notre appareil avec l'ESP8266 nous allons utiliser Jinx, un logiciel sous Windows qui permet de contrôler nos LEDs.

Ce logiciel très complet permet de créer des animations à l'aide du son, d'une image, d'une vidéo, d'une webcam, même de capturer l'image de l'écran et aussi d'afficher du texte.

Video d'introduction

Matériaux

  • ESP8266 (Wemos D1 Mini)
  • Matrix WS2812b (ou strip de LED)
  • Resistance 475 Ohm (entre 300/500)
  • Condensateur 1000µF (optionnel)
  • Alimentation dédié pour les leds (optionnel)

Outils

Étape 1 - Préparer l'ESP8266

Si vous ne l'avez pas fait, ajouter le support de l'ESP8266 dans le logiciel Arduino : https://github.com/esp8266/Arduino#installing-with-boards-manager.

Il y a plusieurs façons d'uploader le firmware que nous allons utiliser, le plus simple est d'utiliser l'exemple ESP8266WebServer -> WebUpdate.

N'oubliez pas de changer STASSID et STAPSK avec le nom de votre réseau Wi-Fi et votre mot de passe.

#define STASSID "your-ssid"
#define STAPSK "your-password"

Étape 2 - Uploader ESP8266_ArtNetNode

Nous pouvez maintenant flasher le firmware sur notre ESP8266

L'ESP8266 va redémarrer plusieurs fois avant d'être disponible.




Étape 3 - Paramétrage Wi-Fi

L'ESP8266 est maintenant en mode HotSpot, chercher le réseau Wi-Fi avec comme nom espArtNode_00XXX.

Le mot de passe est : byMtongnz2017

  • Allez sur http://2.0.0.1 et cliquez sur WIFI pour paramétrer le SSID/mot de passe
  • Cliquer sur REBOOT.




Étape 4 - Trouver l'adresse IP de espArtNode

Malheureusement, espArtNode n'utilise pas mdns, donc vous devrez trouver l'adresse IP par vous même.

Vous pouvez utiliser fing (la version Android est la plus facile à utiliser) ou ArtNet-Lite (cette application détecte automatiquement les appareils avec ArtNet)

Jinx (le logiciel que nous allons utiliser pour contrôler les LED) a un mode SCAN, mais il ne marche pas avec espArtNetNode.

Étape 5 - Paramétrer les NeoPixels

Dernier point, paramétrer le PORT A pour qu'il gère des LEDs NeoPixel.

Le PORT A correspond à la broche TX.

  • Cliquer sur PORT A.
  • Dans Port Type, mettre LED pixels - WS2812.
  • Cliquer sur Save Changes.
  • Changez number of pixels.
Number of pixels n'apparait qu'après avoir sauvegardé les changements




Étape 6 - Paramétrer Matrix Options

Voilà, notre appareil est prêt, mais il nous reste à paramétrer 3 choses dans Jinx pour le contrôler.

  • Matrix Options: Cette option paramètre la matrice virtuelle dans Jinx
  • Output devices: les appareils connectés à Jinx
  • Output Patch : La position de chaque LED.

Si vous ne l'avez pas déjà fait brancher votre matrice / strip de LED à votre ESP8266

Alimenter beaucoup de LED peut être compliqué, je vous conseille de lire attentivement le guide d'Adafruit. : https://learn.adafruit.com/adafruit-neopixel-uberguide/the-magic-of-neopixels
Il est possible d'alimenter même une centaine de LED rien qu'avec l'USB du moment que vous réglait la luminosité au minimum. Faites attention si la luminosité est trop importante les LED vont se comporter bizarrement et peuvent être endommagés !
  • Télécharger Jinx ici : http://www.live-leds.de/
  • Aller dans Setup -> Matrix Options
  • Paramétrer Width (largeur) / Height (longueur)
Vous n'avez pas une matrice, juste un strip de LED? Paramétrer la longueur (width) sur la longueur de votre strip et height (longueur) sur 4 (valeur minimum)



Étape 7 - Paramétrer Output Devices

Maintenant, nous allons connecter notre ESP à Jinx.

  • Aller sur Setup -> Output Devices
  • Cliquer sur Add
  • Choissisez Art-Net (option par défaut)
  • Déselectionner Broadcast (le broadcast est très lent)
  • Mettez l'adresse IP de votre ESP




Étape 8 - Paramétrer Output Patch

Dernière chose à faire, il nous faut expliquer à Jinx dans quel ordre sont les LED.

  • Aller sur Setup -> Output Patch.
  • Choissisez votre ESP.
  • Cliquer sur Fast Patch.
  • Sélectionner la taille de votre matrice de LED.
  • Dans Patch Mode, mettez le sens de votre matrice.
  • Dans Pixel Order, mettez GRB.
  • Vérifier que First channel est bien à 0.




Étape 9 - Testez les LED

Il y a de grandes chances que vous ne paramétrerez pas vos LED correctement du premier coup, recommencez la partie Output Patch en cliquant sur Clear Patch avant et recommencez si c'est le cas.

Si vous avez un doute sur votre alimentation, commencez par baisser la valeur Master afin de ne pas abimer vos LED.

  • Aller dans Setup / Start Output
  • Dans Channel 1, choisissez Simple Color, vérifiez que les LED s'allument
  • Cliquez sur Edit et vérifier que la couleur Rouge / Vert / Bleu est correcte.
  • Dans Channel 1, choisissez Radar/Scan Lines
  • Vérifier que votre matrice affiche correctement la ligne

Je ne vais pas rentrer plus en détail sur le fonctionnement de Jinx, essayez par vous même! Un manuel est disponible (en anglais) ici : http://www.live-leds.de/downloads/



Étape 10 - Notes sur les LED

Vous pouvez trouver les modèles 3D de mes LED sur Thingiverse :

Ces modèles sont faits par Olivier Sarrailh.

Si vous voulez faire une matrice de LED, je ne vous conseille pas d'utiliser des strip de LED, c'est difficile de les aligner, utiliser plutôt des matrices toutes faites (flexible si vous voulez créer une matrice circulaire)

Je me répète, mais jetez un œil à la documentation d'Adafruit sur l'alimentation des LED

https://learn.adafruit.com/adafruit-neopixel-uberguide/the-magic-of-neopixels

A contrario de ce qui y est dit, il est possible d'alimenter des matrices plus ou moins grandes avec juste un câble USB, si vous baissez la luminosité.

Attention, vous risquez d'abimer les LED, si vous monter accidentellement la luminosité.

Voilà pour ce tutoriel, n'hésitez pas à laisser un commentaire.

Et suivez-moi sur twitter pour avoir plus d'informations sur les prochains tutoriels ! https://twitter.com/m4dnerd.

Commentaires

Published