Controller MIDI

Ciao, sto provando a costruire un controller midi da utilizzare con software da dj tipo virtualdj o ableton ma incappo in un problema con la mappatura degli input. Ho creato una versione di prova collegando 5 potenziometri dal pin a0 al pin a4, poi avvalendomi di tutorial vari su internet ho copiato e modificato leggermente uno sketch (senza variarne il funzionamento).
Utilizzo un arduino mega quindi non posso utilizzare midiusb; il mio sketch è il seguente:

int val[5];
int lastVal[5];

void setup()
{
   Serial.begin(38400);

   for(int i = 0; i < 5; i++)
   {
    val[i]=0;
    lastVal[i]=0;
   }
}

void loop()
{
  for(int i=0; i<5; i++)
  {
    val[i] = analogRead(i)/8;
    if (val[i] != lastVal[i])
    {
      MIDImessage(176,16+i,val[i]);
      lastVal[i] = val[i];
    }
  }
   
   delay(10);
}

void MIDImessage(byte command, byte data1, byte data2)
{
   Serial.write(command);
   Serial.write(data1);
   Serial.write(data2);
}

Poi ho installato loopmidi per creare delle porte midi virtuali e ho configurato hairless midi serial con il baud rate dell'arduino, serial port dell'arduino e midi out la porta virtuale creata con loopmidi. Fin qui sembra funzionare tutto correttamente anche da quello che vedo dal debug di hairless che mostra il giusto variare dei valori per ogni canale.
Il problema sorge quando provo a mappare i potenziometri: su ableton nonostante in alto a destra si illumini il quadratino che indica un input midi non riesco ad assegnare la manopola ad una determinata funzione. Invece su virtualdj 8 per ogni canale trovo jog, slider e encoder. Per esempio se muovo il primo potenziometro (assegnato al canale midi 16) nella schermata per mappare il controller midi custom trovo JOG16, SLIDER16 e ENCODER16 e anche assegnandoli non riesco ad usarli.

Mi sapreste dire a cosa è dovuto questo problema e come risolverlo? Grazie in anticipo

Up. Qualcuno mi può aiutare?

Ti dico subito che non posso aiutarti perché non sono mai arrivato fino a quel punto.
Come mai non hai usato Firmata per il collegamento Arduino - Processing e da lì usare le variabili MIDI? Io non l'ho mai fatto ma quando mi informavo per fare un mixer digitale pensavo a questo come programma.

Ciao,
anche io ho avuto diversi problemi in merito, ma alla fine oggi sono riuscito a risolvere!

in pratica in hairless midi vedevo le "note" prodotte, ma di fanno non succedeva nulla all'interno del controller.

Installato LoopMIDI ho creato due "sessioni", una chiamata "From Hairless" ed un'altra chiamata "To Hairless".

Dopodichè ho configurato Hairless con midi out "from Hairless" e come midi in "to Hairless" ed ha cominciato a funzionare tutto.

nel programma da DJ che uso ho fatto un learn per riconoscere le "note" e da li ho poi associato il comando.

Spero ti sia stato utile

**>Blue-T: **essendo il tuo primo post, nel rispetto del regolamento (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti QUI (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ... Grazie.

Guglielmo

Cacchio, ho cercato il topic ma non l'avevo trovato. Sorry provvedo subito