Intercaler un arduino entre 2 bandes de LED

Bonjour les gens !

j'ai pas touché a un Arduino depuis des années, et je suis complètement rouillé ! j'aurai besoin de votre aide pour un petit projet, et je n'ai pas forcement les bon termes techniques pour faire la bonne recherche...

pour faire bref : j'ai un ensemble de bandes de LED, dans différents objets custom ( réglettes, cadre etc... ) équipés de bandes de LED WS2811 12v ( 1 µcontrôleur par groupe de 3 led RGB ) ou WS2815 12v .le dernier objet dans la chaine utilise des WS2815, mais d'un autre fabricant, et visiblement, les led ne sont pas exactement les mêmes et l'ordre des couleur est différent...
et comme il me faut de la bande de 5mm de large, je peux pas faire la fine bouche, c'est les seules que j'ai trouvé !:joy:

Le tout piloté par le contrôleur RGB de mon PC ( Corsair LS100 ) et un alimentation 12V supplémentaire, proche des objets en question.

tout fonctionne nickel, d'un point de vu électrique, mais c'est donc la partie data qui pose problème !

ma question est la suivant : est il possible d'intercaler un Arduino entre les LED dans el bon ordre, qu'il lise le train d'info et qu'il le traduise pour les suivantes, en inversant les données pour les 2 couleurs problématiques ?

vu que matériellement , les LED fonctionnent , le signal envoyé par le contrôleur corsair doivent être " standardisées" et un Arduino avec les librairies compatibles WS28xx devrait le comprendre. enfin j'espère !

j'ai de vagues souvenir de comment programmer la sortie, vers les led, mais je suis complètement largué, concernant la lecture du signal en amont et la modification en interne ! :sweat_smile:

j'ai a dispo des clones de Arduino nano, méga et il doit meme rester un attiny85 pour tester
( je me débrouille pour la partie alimentation électrique 12/5v, ca pas de problème )

merci a ceux qui pourraient m'aiguiller !

Il faudrait pouvoir envoyer le train d'info vers l'Arduino. Comment comptes-tu faire ça ? Quel est le type de sortie du contrôleur RGB du PC ?

mes différents objets sont câblés en 4 fils ( +12,Di,Do,gnd ), avec des connecteurs, sur un concentrateur maison qui les met en série ( le Do précédent, va dans le Di suivant ) de sorte qu'une fois connectés, ils soit semblables a une grande bande de LED WS2811 classique.

pour te réponde, naïvement je te dirai : je prends le Do de la dernière Led juste ( RGB ) , pour entrer sur une entrée numérique de l'Arduino, et ressortir sur une autre, avec le paramétrage inversé ( GRB ) pour entrer sur la suivante.

concernant le contrôleur du PC, aucun info de disponible par le fabricant, bien évidemment. ils sont en 3 pin, avec un connecteur particulier, pour le quel j'ai fait un adaptateur vers mon standard de connecteur en 2,54mm.

pour ce qui est du logiciel, la aussi aucune info, MAIS par défaut, il saut faire fonctionner les WS28xx sans problème, a ceci prêt qu'il ne peut pas attribuer d'ordre de couleurs différents que SON standard a lui ( a la rigueur sur une couleur fixe, je peux parametrer une couleur différente, mais pas en cas d'effet complexe ).

donc en fait ma question devrait se résumer a : si je charge une bibliothèque compatible dRGB genre neopixel ou quoi, je peux déclarer un sortie pour piloter les led, et paramétrer l'ordre des couleurs, mais est ce possible de paramétrer une ENTREE pour justement lire le train de data ?

Ce n'est pas ce que je voulais dire. Ma question était plutôt comment communique ce contrôleur ? Et quel type d'interface (série, bus, etc) ?

Le contrôle des LEDs de type WS2811 est très complexe, notamment en termes de timing. Si tu insères quelque chose entre le contrôleur et le ruban et que ce quelque chose perturbe le timing des signaux, ça ne fonctionnera plus.

Un électronicien te dirait de brancher la sortie du contrôleur sur un analyseur de signaux ou un oscilloscope, mais il faudrait pouvoir reconnaitre ce qui sera affiché...

aucune idé du type de communication.

aucun info dispo, et je n'ai pas les outils pour vérifier.

les seuls éléments que je sais :

  • le contrôleur et les led Corsair sont en 3 fils : +, gnd et Data ( i ou out, selon qu'on est en entrée ou en sortie de bande led)
  • les led Corsair sont compatibles avec un arduino ( bibliothèque neopixel ) et les contrôleurs a télécommande "noname chinois" ( qui d'ailleurs ont d'integré, une fonction de paramétrage d'ordre RGB pour etre compatibles avec les bandes led qui ne respectent pas le standard :crazy_face: )
  • toutes les led NON-corsair que j'ai connecté sur le contrôleur ont toutes fonctionné a l'ordre des couleurs près...

du coup, je me dis, que ca peut peut-être se tenter en force... si je peux paramétrer une entrée, je peux essayer avec plusieurs bibliothèque différentes et voir ce que ca dis. :man_shrugging:

comme c'est de la data, hormis de pas fonctionner, je risque pas grand chose, hormis ne pas marcher. si ?

En effet, au pire tu perdras du temps.

On peut supposer que le contrôleur envoie les trames lisibles directement par les LEDs.
Pour s'insérer entre le contrôleur et le ruban et intervertir les couleurs, il faudrait récupérer les trames, les décoder et intervertir les couleurs pour les renvoyer ensuite vers le ruban.

Je ne connais pas le protocole, donc je ne sais pas si c'est compliqué.
Mais si tes animations lumineuses ne sont pas trop complexes ou trop rapides, ça vaut peut-être le coup de s'y pencher. On trouve des tutoriels sur Internet :

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.