Recherche projet liaison midi sans fil

Bonjour à tous ,
Je recherche actuellement un projet de communication MIDI sans fil
avec 2 Arduino uno et 2 modules NRF24L01
Y a t'il dans le forum une personne ayant réalisé ce projet
et pouvant me communiquer des infos à ce sujet
Merci pour vos réponses

Oui, par Yves Pelletier :

Non , son projet ne réalise pas la transmission depuis une entée midi via un optocoupleur
Voir son descriptif sur le site electroniqueamateur

j'ai testé le montage , il génère seulement une suite de notes en arpèges

Oui, il faut ajouter la récupération des notes depuis une entrée MIDI.
Il a d'autre projets MIDI sur son blog. Chercher MIDI tout simplement.

studioser:
Non , son projet ne réalise pas la transmission depuis une entée midi via un optocoupleur
Voir son descriptif sur le site electroniqueamateur

j'ai testé le montage , il génère seulement une suite de notes en arpèges

il faut utiliser les NFR2401 en serial bridge réglé sur 31250
dans un premier temps faire qq test avec avec les exemples et en expurgeant les serial print inutiles
J'ai un serial bridge utilisant un seul et meme programme pour bridger les TX et RX, mais pas sous la main avant le Week-end.
Basiquement d'un coté c'est ecouter à 31250 sur RX-> lire le byte present , envoi du byte (packet) --> de l'autre coté c'est transmettre sur le TX recepteur le contenu du packet reçu (serialwrite)

Bonjour Artouste . Merci pour votre réponse , mais j'aurai besoin de plus de clarté pour mon
premier projet , étant débutant dans les réalisations à base d' Arguino
s

Pouvez vous me venir en aide pour éclaircir votre description
Comment utiliser les NRF2401 en sérial bridge , c'est quoi le qq test et comment le faire
et en quoi consiste la manipulation pour bridger les RX TX sur un sérial bridge

studioser:
Pouvez vous me venir en aide pour éclaircir votre description
Comment utiliser les NRF2401 en sérial bridge , c'est quoi le qq test et comment le faire
et en quoi consiste la manipulation pour bridger les RX TX sur un sérial bridge

Bonjour
Vu le discret rappel à mon intention :smiley: , voilà ce j'avais utilisé pour bridge serie
j'ai mis qq commentaires , compile OK , pas retesté IRL

// passerelle serial par nfr24l01
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>


RF24 radio(7, 8); // CE, CSN
const byte addresses[][6] = {"00001", "00002"}; //tuyaux d'adresse
bool mode = 0 ;// mode pour definir qui fait quoi


char RXData[32] ;

char  inputChar[32];



int timout = 5; // 5 ms = ~ 12 octets MIDI
int indx = -1  ;
int long actu = millis();

void setup() {
  Serial.begin(31250); // vitesse serial = 31250 pour du du MIDI


  radio.begin();
  radio.setChannel(100);// canal de communication de 0 a 125
  radio.setDataRate(RF24_250KBPS); // vitesse de communication RF24_250KBPS , RF24_1MBPS , ou RF24_2MBPS

  radio.enableDynamicPayloads();
  // ouverture des tuyaux d'ecoute et d'ecriture , on peut ouvrir jusqu'a 6 tuyaux pour l'ecoute
  if (mode == 0 ) {
    radio.openWritingPipe(addresses[1]);
    radio.openReadingPipe(1, addresses[0]);
  }
  else {
    radio.openWritingPipe(addresses[0]);
    radio.openReadingPipe(1, addresses[1]);
  }
  radio.setPALevel(RF24_PA_HIGH);// amplification RF24_PA_MIN, RF24_PA_LOW, RF24_PA_HIGH et RF24_PA_MAX
  radio.startListening();// commencer a ecouter Nrfl2401

}



void loop()
{


  while (Serial.available()) {
    indx++;
    inputChar[indx] = Serial.read(); // construction du packet à envoyer par nfrl2401

  }
  if (indx > -1 ) {
    if (millis() >= (actu + timout)  ) {


      TX24(); //envoi le packet reçu par serial sur le nfrl2401 SI il y a de la data recu par serial ET que le timout est dépassé

      indx = -1;
      actu = millis();
      RX24();
    }

  }

}
void TX24() {
  radio.write(inputChar, sizeof(inputChar));
}
void RX24() {

  while (radio.available()) {  //packet disponible
    radio.read(&RXData, sizeof(RXData));
    indx = sizeof(RXData);
  }
  for (int i = 0; i <= indx - 1; i++) {
    Serial.write(RXData[i]);
  }
  indx = -1;
}

Bonjour,
Pour effectuer un test de la liaison midi , il est indispensable d'avoir le sketch de l'émetteur et le sketch du récepteur
Petite question à quoi correspond le sketch envoyé , y a t'il des modifications dans le programme à apporter
pour l'avoir soit en émission ou soit en réception
Veuillez m'excuser de mon empressement pour mon rappel discret , je désire tellement finaliser ce projet
Merci pour votre compréhension

studioser:
Bonjour,
Pour effectuer un test de la liaison midi , il est indispensable d'avoir le sketch de l'émetteur et le sketch du récepteur
Petite question à quoi correspond le sketch envoyé , y a t'il des modifications dans le programme à apporter
pour l'avoir soit en émission ou soit en réception
Veuillez m'excuser de mon empressement pour mon rappel discret , je désire tellement finaliser ce projet
Merci pour votre compréhension

bonjour
Pas de problemes , le rappel etait "réglo" :smiley:
c'est le même programme pour chacun des arduino, il faut simplement modifier le mode pour chaque arduino

bool mode = 0 ;// mode pour definir qui fait quoi = 0 pour arduino N°1  1 pour arduino N°2

Je viens de modifier dans les sketch le bool mode : 0 pour l'arduino n°1 et 1 pour l'arduino n°2
A quoi correspond le N° pour l'émetteur et pour le récepteur
j'ai modifié aussi , la carte étant une UNO , c'est précisé dans la documentation du module NRF24L01
le RF24 radio(7, 8); // CE, CSN par RF24 radio(9, 10); // CE, CSN
Cela ne marche pas sur un clavier midi connecté à travers un optocoupleur
sur la borne 0 RX de l'UNO émetteur , et j'ai bien la led TX de l'UNO qui clignote .
En réception je n'ai pas de led qui clignote , donc pas de communication
Merci pour votre aide ,

studioser:
Je viens de modifier dans les sketch le bool mode : 0 pour l'arduino n°1 et 1 pour l'arduino n°2
A quoi correspond le N° pour l'émetteur et pour le récepteur
j'ai modifié aussi , la carte étant une UNO , c'est précisé dans la documentation du module NRF24L01
le RF24 radio(7, 8); // CE, CSN par RF24 radio(9, 10); // CE, CSN
Cela ne marche pas sur un clavier midi connecté à travers un optocoupleur
sur la borne 0 RX de l'UNO émetteur , et j'ai bien la led TX de l'UNO qui clignote .
En réception je n'ai pas de led qui clignote , donc pas de communication
Merci pour votre aide ,

Bonjour
Il fudrait que je remonte une manip complete
Mais actuellement je manque de temps

Problème courant avec NRF24L01 : une distance faible entre émetteur / récepteur sature le récepteur.

Bonjour Artouste,
Pouvez-vous me répondre au sujet des :
A quoi correspond le N° pour l'émetteur et pour le récepteur ?

  • le *RF24 radio(7, 8; // CE, CSN sur votre sketch > pourquoi 7 ,8 ?
  • Sur l'arduino UNO les connections CE , CSS se réalisent en 9 ,10 .*
    et par la suite Je vais faire le test sur une plus longue distance

Bonjour, Pour réaliser le test à longue distance , il me faut SVP le n° correspondant sur l'émetteur et le récepteur
Votre sketch est il adapté pour une Uno en modifiant le CE, CSN à 9 ,10 , autrement j'ai à ma disposition 2 nano
pour tester si cela ne fonctionne pas avec une Uno
Veuillez encore m'excuser de mon empressement pour les info

Le RF24 radio 7,8 CE,CSN correspond à une carte Arguino Nano , le 9,10 pour la Uno

Choisis les pins que tu veux.

Bonjour ,
Je recherche un membre passionné de MAO , ayant des connaissances approfondies dans la manipulation des programmes et qui désire réaliser aussi une liaison midi sans fil et qui pourrai m'aider à résoudre le problème de programme évoqué dans les posts précédents .
j'ai testé sans succès cette liaison entre 2 Arguino Nano et 2 modules de communication NRF24L01 avec les skechs émission et réception proposés par un membre , mais il me dit qu'il manque de temps pour remonter une manip complète .
Merci pour vos aides

Il faut commencer par séparer les problèmes

  • Avez vous la liaison instrument MIDI -> premier Arduino qui est fonctionnelle ? (ie lecture sur Serial à 31250 bauds)

  • avez vous un montage fonctionnel pour la liaison entre vos 2 Arduinos en nrF24L01? (En utilisant n’importe quel sketch d’exemple)

Quelle est la sortie midi attendue sur le second arduino ? Est elle fonctionnelle ?

Tant que ces points ne fonctionnent pas séparément ce n’est pas la peine d’essayer de faire fonctionner toute la chaîne

Bonjour JML
La liaison MIDI est fonctionnelle sur le premier Arduino à partir d'un clavier Midi > Optocoupleur 6N138 >
connecté sur la pin 0 ( RX ) et j'ai bien la led TX qui clignote sur l'envoie des notes
sur l'arduino récepteur je n'ai pas de led qui clignote donc pas de note émise , pas de transmission .

J'ai testé un précédent montage de liaison midi sans fil de Mr Pelletier , voir le site électroniqueenamateur
qui fonctionnait bien sur émission d'arpèges par l'arduino émetteur et bien reçue par l'arduino récepteur
pilotant sur la pin 1 ( TX ) un module son Yamaha , donc liaison entre les 2 modules NRF24L01 OK
Par contre il manquait dans son montage l'entrée midi avec les modification des 2 sketchs

La sortie midi est connectée sur l'entrée midi du générateur de son par la pin 1 ( RX )

La liaison MIDI est fonctionnelle sur le premier Arduino à partir d'un clavier Midi > Optocoupleur 6N138 >
connecté sur la pin 0 ( RX ) et j'ai bien la led TX qui clignote sur l'envoie des notes

avez vous écrit un petit code qui lit ce qui arrive sur le port série et l'imprime, pour voir si ce sont de bonnes trames MIDI?

La sortie midi est connectée sur l'entrée midi du générateur de son par la pin 1 ( RX )

je suppose que vous voulez dire TX ? avez vous testé d'envoyer une trame midi (par exemple vous copiez à la main ce que vous avez vu lors de l'appui d'une touche dans le code du test précédent dans un sketch qui l'envoie sur le port série)

sur l'arduino récepteur je n'ai pas de led qui clignote donc pas de note émise , pas de transmission

il faut oublier le midi pour le moment et vous concentrer sur le code et le montage nrF24L01. Tant que vous n'avez pas une liaison fonctionnelle avec un code issu des exemples ou des tutos (il y en a plusieurs dans la section tuto de ce site)