Aujourd’hui, nous allons tester des leds adressables, les WS2812 et WS2812B, en provenance de Aliexpress. Ces leds sont similaires à ce qu’Adafruit appelle les NeoPixels. En pratique, il s’agit de LED RGB, donc capable de produire toutes les couleurs que vous souhaitez utiliser, et adressables, c’est à dire qu’on peut contrôler chaque LED individuellement. Ces LED sont chainées, ce qui fait qu’on utilise un seul GPIO pour contrôler l’ensemble, et on peut placer plusieurs ensembles les uns à la suite des autres. On a généralement 3 câbles : l’alimentation 5V, la masse, et le câble de signal. Que valent ces exemplaires achetés sur Aliexpress? C’est ce que je vous propose de découvrir aujourd’hui, avec deux modèles :

Barette de WS2812 chinoises

Cette barrette comporte 8 LED adressables, sur une plaque rigide de circuit imprimé. Elle mesure 54x10mm, avec une épaisseur maximale de 3.2mm. Il y a deux trous de 3mm séparés de 27mm sur la plaque pour la fixer.

Voici une image de la barette, sur laquelle j’ai soudé trois fils :

barrette WS2812 éteinte

barrette WS2812 éteinte

Il est possible de souder également des fils à l’autre extrémité, pour chaîner les éléments.

Utilisation de la barette

Sur les trois connections, l’une d’elle indique DIN, et sera connectée à une sortie numérique du microcontrôleur. Une autre indique GND, et sera connectée à la masse du circuit,  et enfin la dernière indique 4-7VDC, et sera connectée au 5V du Arduino.  Attention toutefois, ces LED peuvent consommer pas mal, et il serait préférable de les connecter à une alimentation externe (en connectant bien la masse de celle ci à celle du Arduino).

Pour essayer la barette, j’ai ensuite utilisé la bibliothèque Adafruit Neopixel, qu’il est possible d’installer en cliquant sur Croquis/Include Libraries/Manage Libraries, puis en cherchant ce terme dans le menu, avant de l’installer. Une autre solution est de suivre le lien ci  et de cliquer sur Croquis/Include Libraries/ADD .ZIP Library avant de sélectionner l’archive téléchargée pour l’installation.

Il suffit alors de cliquer sur Fichier/Exemples/Adafruit Neopixel/strandtest, puis de définir la broche ou l’on a branché les LED (#define PIN 6 , a renseigner pour la broche choisie), et la longueur de la bande de LED :

Adafruit_NeoPixel strip = Adafruit_NeoPixel(8, PIN, NEO_GRB + NEO_KHZ800);

On peut alors compiler et téléverser. Et ça fonctionne!

Les LED sont très puissantes, et les couleurs sont très bien définies. Rien à redire ici.

La vidéo ci dessous vous donnera une idée du résultat. La qualité de capture n’est pas nécessairement géniale, mais il est difficile de filmer ces objets très lumineux et dynamiques!

Bande souple de LED WS2812B chinoises

Voyons maintenant la bande souple de LED WS2812B chinoises. Il ne s’agit pas exactement du même modèle que la précédente, mais nous allons toutefois essayer le la même manière. Pour ma part, il s’agit d’une bande de 1m, à fond blanc, comprenant 30 LED. Pour utiliser toute la bande, il faudra impérativement une alimentation externe. N’hésitez pas à suivre les recommandations d’Adafruit accessibles en suivant ce lien. Dans mon cas, j’ai simplement coupé la bande après 8 LED, de ce fait le code est exactement le même.

La bande fait 10mm de large, et 0.4mm d’épaisseur. On peut l’acheter en format 1m comme en format 5m, avec un fond blanc ou noir. On peut couper la bande aux endroits précisés (entre les LED), et on peut donc avoir le nombre de LED souhaité (certaines bandes souples comparables permettent de couper uniquement toutes les 3 LED).

Les images ci dessus permettent de voir le détail des LED, et la souplesse de la bande.

Utilisation et fonctionnement

On s’en servira exactement comme la précédente, avec une procédure strictement identique. Ici, pas de fils à souder, car ma bande de LED avait déjà des câbles et connecteurs. Ceux ci acceptent  des jumper wire pour breadboard, que j’ai utilisés pour connecter le tout à mon montage.

La galerie ci dessus vous donne une idée de ce que l’on obtient avec ces LED.

En pratique, je n’ai pas noté de différence flagrante entre les deux au niveau des LED. L’exemplaire souple me donne l’impression d’être moins lumineux, mais je pense que cela vient du fait que la petite barrette offre une densité de LED considérablement supérieure (dans l’espace alloué à une LED sur la bande souple, il y en a 5 sur la barrette).

Du coup la bande souple est moins éblouissante, et il est possible de la regarder directement, ce qui est difficile avec l’autre.

Voici une vidéo du programme s’exécutant sur cette bande de LED :

 

Conclusions

Ces deux produits sont de bonne qualité, et fonctionnent de la même façon que des produits plus chers. Le coût est en effet ici très bas, puisque j’ai eu 5 barrettes de 8 LED pour moins de 10€, et la bande de 1m pour moins de 5€, avec les frais de port gratuits dans les deux cas. Les deux marchands m’ont eu l’air tout à fait sérieux, rien de particulier à redire. A mes yeux, ce sont donc de bons produits, que je vous recommande sans soucis.

Avec ces produits, je vous recommande d’utiliser l’excellente bibliothèque Neopixel, d’Adafruit, sous licence libre qui plus est. N’hésitez pas à consulter le site d’Adafruit pour plus d’informations, et pourquoi pas acheter quelques produits chez eux! En effet, ils fabriquent d’autres sortes d’assemblages de LED de ce type que je n’ai pas encore vu ailleurs, font des produits de qualité excellente, et fournissent des guides et des bibliothèques de grande qualité, ainsi qu’un support très performant.

Je parle de ce marchand, qui n’a rien à voir avec Aliexpress, car il me semble important d’acheter de temps en temps chez ces entreprises qui soutiennent l’open source, l’open hardware, et fournissent des guides et bibliothèques qui profitent à tous, même à des produits concurrents. Les produits chinois sont souvent bons et économiques, mais n’apportent pas ce soutien à la communauté open source/open hardware que fournissent des entreprises comme Adafruit, Sparkfun, ou encore Pololu.

 

Réseaux sociaux