Técnica: Arduino, Hairless MIDI Serial, Ableton Live.
Año: 2014
Experimentación con Arduino para hacer un guante controlador MIDI. El código fuente está al final de esta página.
Fuente: Arduino Knock, Drum Kit Spikenzielabs, Hairles MIDI Serial, BitKits 8bit Drum Samples para Ableton Live
#define DRUM0 0 #define DRUM1 1 #define DRUM2 2 #define DRUM3 3 #define THRESHOLD 200 #define INICIAL 100 #define RETARDO 100 byte val0 = 0; byte val1 = 0; byte val2 = 0; byte val3 = 0; void setup() { Serial.begin(9600); } void loop() { val0 = analogRead(DRUM0); val1 = analogRead(DRUM1); val2 = analogRead(DRUM2); val3 = analogRead(DRUM3); //************************************* if(val0 > THRESHOLD) { noteOn(0x90, 0x32, 0x77); delay(RETARDO); } else if(val0 > INICIAL) { noteOn(0x90, 0x32, 0x77); delay(RETARDO); } //************************************* if(val1 > THRESHOLD) { noteOn(0x90, 0x33, 0x77); delay(RETARDO); } else if(val1 > INICIAL) { noteOn(0x90, 0x33, 0x77); delay(RETARDO); } //************************************* if(val2 > THRESHOLD) { noteOn(0x90, 0x34, 0x77); delay(RETARDO); } else if(val2 > INICIAL) { noteOn(0x90, 0x34, 0x77); delay(RETARDO); } //************************************* if(val3 > THRESHOLD) { noteOn(0x90, 0x35, 0x77); delay(RETARDO); } else if(val3 > INICIAL) { noteOn(0x90, 0x35, 0x77); delay(RETARDO); } } void noteOn(int cmd, int pitch, int velocity) { Serial.write(cmd); Serial.write(pitch); Serial.write(velocity); }