Salve a tutti, é da un po di giorni che ho iniziato questo progetto e adesso non riesco ad andare avanti. Come da manuale ho connesso la porta midi della mia scheda audio all'arduino. Ho inoltre connesso un tasto a una porta in modo che, quando il tasto viene premuto il controllore legga 0. Il circuito (scusate):
5V o-------------pulsante--------o--------------pin 8 | | | resistenza da 10kOHM | | o gnd
(Ci siamo capiti) questo tasto mi servirà a controllare il multi-purpose Transport button del looper di ableton live, per ottenere il comportamento di una loop station. Il codice :
int statorec ; int numeropinrec = 8;
void setup() { Serial.begin(31250); pinMode(numeropinrec, INPUT);}
void loop() { int rec = digitalRead(numeropinrec); if (rec == LOW && statorec == LOW) { schiaccia(0x90,0x70,0x7F); statorec=HIGH; delay(200) ; }
else { statorec=LOW; } }
void schiaccia(byte cmd, byte data1,byte data2) { Serial.print(cmd, BYTE); Serial.print(data1, BYTE); Serial.print(data1, BYTE);}
la nota inviata è a caso e la variazione è massima (anche questa a caso). Una volta mappato via midi sembra che tutto funzioni,apparentemente senza alcun problema. L'unico problema è che dopo aver iniziato la registrazione e dopo aver schiacciato un'altra volta il tasto per mettere in loop la registrazione, dopo due secondi il tasto undo visualizzato sul monitor viene premuto automaticamente senza che io lo abbia toccato, ne con la freccetta del mouse, ne controllato via midi e ne pensato. Questo è quello che accade se viene registrato il primo loop. Nel caso in cui invece voglio aggiungere loop alla sequenza, succede una cosa ancor peggiore: il tasto undo viene premuto ancora prima la fine della registrazione. Il risultato in questo caso è che mi fa registrare solamente un pezzo del loop. Poco male se subito, premo redo nel primo caso, peggio se voglio aggiungere un loop e me ne registra solo un pezzo. Da notare che se io volessi sentire anche solo quel piccolo pezzo di loop dovrei comunque schiacciare redo. Tutti questi problemi naturalmente non ci sono, se controllo il looper direttamente con la freccetta del mouse. Ho scritto nella speranza che qualcuno potesse aiutarmi a risolvere questo fastidioso errore (magari qualcuno che è interessato al progetto e vuole assillarsi come me o qualcuno che è già inciampato su questo problema e lo ha risolto), di cui non conosco la causa, se è il programma da me compilato o se è l' ableton(anche se ne dubito).
grazie