Led Matrix 8x32 bluetooth

Bonjour a tous.
J'ai ce type de matrice de led:

j'ai commander aussi celui la:

Mais pas encore reçu

Je suis en train de chercher un programme pour le faire fonctionner en Bluetooth avec une application smartphone Android pour pouvoir diffuse des messages sur mon raspydart (jeu de fléchettes) avec mon téléphone
Actuellement je suis arriver a le faire fonctionner avec les librairies
Adafruit_GFX
Adafruit_NeoMatrix
Adafruit_NeoPixel
Mais je n'arrive pas a trouvé un tuto avec le module Bluetooth h5 celui que j'ai.
Si quelqu'un pourrait m'aider
Merci Beaucoup pour votre aide
Bonne journée.

salut!

je n'ai jamais joué avec les bandeaux de led, mais le bluetooth un peu.
tu fais référence au module bluetooth HC-05?

j'ai déjà ça dans ma sacoche qui pourrait t'aider à commencer (avec interface par application sur téléphone portable!) : https://www.gotronic.fr/pj2-guide-de-mise-en-marche-du-module-bluetooth-hc-1546.pdf

ce type de module travaille en bluetooth "classique" et non pas en BLE qui est une norme plus récente (bluetooth low energy). attention à la distinction quand tu cherches une appli compatible, une bibliothèque, ce genre de chose, car les 2 technologies ne sont pas compatibles entre elles (grossièrement: un équipement BLE ne parle qu'avec un autre BLE car il est un peu snob, un équipement bluetooth classique ne parle qu'avec un bluetooth classique parce qu'il est un peu .... vieux!)

Pour l'usage, c'est toi qui vois: le module HC-05 permet d'envoyer des infos de manière très similaire à ce que tu fais quand tu exportes des données depuis ton arduino vers la console de l'IDE (serial monitor) avec les commandes Serial.print() et assimilées.
J'entends par là, qu'il faudra que tu choisisses une manière de coder les messages et les ordres que tu veux transmettre.
De manière très basique, tu détermines les actions nécessaires pour faire fonctionner ton équipement, et tu associes une valeur précise à chacune de ces actions.
Disons "0" pour tout éteindre, "1" pour tout allumer, et "2" pour faire clignoter.
Ces valeurs doivent être entrée manuellement dans l'appli du téléphone (ou associées à un bouton si tu te codes une petite appli personnalisée) et seront envoyées en l'état au module HC-05 qui va les transmettre à l'arduino.
Il faudra donc que ton sketch arduino connaisse la signification de ces valeurs et puisse déclencher l'action correspondante.

pour illustration, j'ai ressorti un code d'essai qui gère une led simple.
inChar==48 attend la valeur 0 / zéro (code ASCII)

#include <SoftwareSerial.h>
SoftwareSerial HC05serial(3,2);
byte inByte;
int inChar; 
byte Led_Bleu = 10;
byte Led_Rouge = 9;
bool etat=false;
int val_bleu,val_rouge;

void setup() {
  // put your setup code here, to run once:
 Serial.begin(9600);
 HC05serial.begin(9600);delay(50);
  
  while(HC05serial==-1){
    Serial.println("en attente connexion");}
    Serial.println("connexion réussie");
    pinMode(Led,OUTPUT);
    digitalWrite(Led,etat);
}

void loop() {
    // put your main code here, to run repeatedly:
if (HC05serial.available()) {
  inChar=HC05serial.read();
  Serial.print(inChar);Serial.write(" ### ");//Serial.write(etat);
  Serial.println(); Serial.println();
  if (inChar==48) {
    etat=!etat; Serial.write(etat);
    digitalWrite(Led,etat);
    }
  }
}

bon courage!

Merci pour ton aide.
Je connaissais pas difference avec le BLE et le HC-5.
J'ai bien des modules Bluetooth HC-05.
Merci pour la doc pour le bluetooth.
J'ai trouver ce site:

qui parle des bandeau led mais c'est pas le meme que le mien c'est avec 4 matrices de 8x8 ce qui fait comme le mien 256 leds.
Je ne suis pas arriver a faire fonctionne mon panneau avec.
J'attend de recevoir cette matrice.
J'ai aussi ce tuto je sais pas si tu connais Lasdy
plein de tutos sur l'arduino:

Merci encore.

merci pour ton retour.

faisons les choses dans l'ordre alors! penses à découper ton programme.
je vois au moins 2 aspects:

  • le pilotage de la bande Led par ta carte arduino;
  • la réception d'ordre par bluetooth depuis le téléphone (ou autre) grace au module HC-05.

tu vois où je veux en venir? mon meilleur conseil est de commencer par maitriser le bandeau piloté par la carte arduino seule. tu peux par exemple programmer des motifs simples et les laisser tourner en boucle, apprendre à piloter led par led, ou par bandeau, ou par couleur, enfin bref, toutes les possibilités offertes par les petites lumières.
quand tu seras le maitre des leds, il sera temps de choisir les animations précises qui t'intéresses, et par exemple les coder dans des fonctions séparées jusqu'à ce que ton code ressemble un peu à ça:

void loop(){
ALLUME_TOUT(); // allume le bandeau pendant 1 sec
CLIGNOTE(bleu); // fait clignoter.... en bleu! pendant 5s
CLIGNOTE(vert); //
FAIT_DEFILER_PIXEL(); // allume les pixels 1 par 1
}

tous les détails spécifiques pour piloter ton bandeau sont réunis à l'intérieur d'une fonction précise, et tu ne fais appel dans la boucle qu'à la fonction que tu désires (ça donne un code très propre).

Quand ça c'est bon, tu peux implémenter ton module HC-05, donc les ordres viennent de l'extérieur, mais ils ne font qu'appeler la fonction précise que tu avais codé précédemment, pour obtenir quelque chose qui pourrait ressembler à ça:

void loop() {
    // put your main code here, to run repeatedly:
if (HC05serial.available()) {
  inChar=HC05serial.read();
  if (inChar==48) { ALLUME_TOUT();} // envoi du 0 qui provoque l'action
  if (inChar==49) { CLIGNOTE(bleu);} // envoi du 1 qui provoque l'action
  if (inChar==50) { CLIGNOTE(vert);} // envoi du 2 qui provoque l'action
  if (inChar==51) { FAIT_DEFILER_PIXEL();} // envoi du 3 qui provoque l'action
}

Note que le code en l'état n'est pas fonctionnel, c'est plus pour te montrer comment je m'y prendrais et tout ceci reste très général et théorique.
Pour la suite, n'hésite pas à poster les codes que tu essaies, avec bien sur en explications ce que tu as voulu lui faire faire, et ce que tu as observé qu'il faisait réellement. ca aidera tous les contributeurs à t'orienter dans la bonne direction.

ps: je serai sans doute d'une piètre aide pour le bandeau lumineux en lui même, mais heureusement pour toi, on est pas tout seul sur le forum :smile:

EDIT: ah oui j'oubliais, quand tu envoies un ordre vers le HC-05, ton appli téléphone te propose peut etre des options bizarres genre CR ou LB ou CR/LB. c'est un paramètre qui modifie la manière dont la trame (l'ordre) est envoyé par le bluetooth. Typiquement, ça peut rajouter des caractères qui sont là pour indiquer par exemple une fin de trame ou un retour à la ligne.
donc tu envoies "48" (le zéro) très sur de toi, ton appli envoie en réalité "48" suivi d'un ou 2 caractères que tu ne vois pas, mais qui sont bien reçus par ton arduino et qu'il essaiera peut etre (selon ton code) d'interpréter comme un ordre. Résultat: rien ne se passe comme tu voulais.

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