Il y a quelques jours, j’ai réalisé un projet consistant en une série de LEDs multicolores dont on contrôlerait la couleur par Bluetooth. J’ai donc opté pour des NeoPixel d’Adafruit, des LEDs multicolores intégrant un driver :

 

Cela permet d’en aligner autant que l’on veut, en les ne reliant que par trois câbles : l’alimentation en 5v, le ground et la data, générée par une librairie Arduino. Concernant le contrôleur, j’ai opté pour une Trinket 5V d’Adafruit, une carte compatible Arduino qui a l’avantage d’être très miniaturisée et très abordable :

 

Enfin, pour la puce Bluetooth, j’ai choisi une carte Bluetooth low Energy UART, qui communique avec la Trinket par le port série virtuel, grâce à la librairie SoftwareSerial :

Le contrôle de la couleur se fait donc depuis l’application officielle BLE d’Adafruit, qui envoie une chaîne de caractère contenant, entre autres, la couleur choisie par l’utilisateur. Ce dernier n’a qu’à choisir sa couleur, puis presser le bouton « envoyer ». La carte bluetooth va recevoir la chaîne de caractères et la transmettre, par série, à la trinket, qui va récupérer la couleur désirée communiquée par intensités de 255 pour chaque couleur primaire, et donner l’ordre aux NeoPixels de s’adapter.

Voici un aperçu de ce que donne cet alignement de LEDs :

À présent, ces LEDs sont totalement intégrées dans le système domotique, qui peut les contrôler en fonction des scénarios en cours, ou avec HomeKit, ou encore avec la technologie RFID.