Hi!
I'm trying to read the sysex messages from a yamaha mixer with my arduino, but i'm doing something wrong for sure.
With the RTMIDI library (c++), it's easy to get a valid message like this one:
F0 43 10 3E 12 01 00 33 00 00 00 01 00 00 00 00 09 F7
(F0 -> begin sysex message, 43 ->Yamaha Vendor ID..... F7 -> End of the Sysex message)
I was expecting to read the same data format from the arduino, but what i get instead is something like:
FC 00 22 or values like those (in 3 Bytes groups)
I'm using a LCD to debug, as the serial monitor will not sync at the 31250 bauds of the Midi rate.
This is a very tiny code just to check the incoming data:
void setup() {
lcd.begin(16, 2);
pinMode(2,INPUT);
digitalWrite(2, HIGH); // My resistor is there
pinMode(3,OUTPUT); // Pins for other stuff (DIP)
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
Serial.begin(31250); //midi baudrate
Serial.flush();
lcd.print("Receiving");
}
void loop () {
if (Serial.available() > 0) {
incomingByte = Serial.read();
lcd.print(incomingByte, HEX);
}else{
lcd.home();
}
}
I really don't know if the first data i'm receiving (Not the F0 byte which is what i need), is becouse i'm doing something wrong... but if i'm able to read the midi port, what else can i do?
Thank you in advance!
knob2001