My MIDI footcontroller is not working as i wanted.
Some times it seems ok, but something is wrong. I tried using it with Ableton Live. I can assign the buttons without problems, but then when i try to use it sometimes it seems that there are diferent messages being sent, or that the message in not really 100% sent.
Ex: i wanted to use the looper and when i press a button it “unpresses” after a couple of seconds, like if another message was sent to undo it! When i use exactly the same setup, but using the pedal from my digital piano, then everything works fine.
I can’t find what is going on so I have tried debugging in two diferent ways, and got two very diferent results:
1) using the serial to MIDI converter from SpikenzieLabs (and Processing).
I run the sketch and select the right options and then check what i am getting with the MIDI Monitor. For a button click i get:
TIME SOURCE MESSAGE CHAN DATA
*** ZERO *** From Xilof OUT Note On 1 F#-1 127
It seems ok to me...
2) with the HAIRLESS MIDI SERIAL
when i click the same button i get:
+11.657 - Serial In: Ch 1: Controller 10 value %3
+11.657 - Serial In: Ch 1: Note 18 on velocity 127
+11.657 - MIDI In: Ch 1: Controller 32 value 83
+11.657 - MIDI In: Ch 1: Controller 72 value 79
+11.657 - MIDI In: Ch 1: Controller 82 value 84
+11.657 - MIDI In: Ch 1: Controller 33 value 13
+11.657 - MIDI In: Ch 1: Controller 10 value 13
+11.658 - MIDI In: Ch 1: Note 18 on velocity 127
i have used the correct BAUD RATE, but I’m unsure about the other settings:
Data Bits: 8
Parity: None
Stop Bits:1
Flow Controll: None
I am sending my midi messages like this:
unsigned char notesMode1[8] = {12,14,16,17,18,19,21,22}; // from C0 to B0
.
.
.
if button is pressed {
noteOn(0x90, notesMode1[buttonCount], 127)
}
.
.
.
void noteOn (int cmd, int pitch, int vel){
Serial.write(cmd);
Serial.write(pitch);
Serial.write(vel);
} // end void noteOn
i think this are the relevant parts of the code...
Why is it getting so many messages? Can this be the reason why it works in such a strange way with Ableton?
This (note number 18) would be equal to a F# in Octave 0, right?
But the Midi Monitor tells me that it’s getting a F# in Octave -1.
I am also sending some Pot values and they are working without problem.
Hmmm, what a mess. Any help or ideas would be more than welcome!
Thank you!