Erstmal Danke für eure Antworten!
Die Array-Längen Bestimmung hätte so wohl tatsächlich nicht geklappt,
wie ich es vor hatte, ich denke
1 | unsigned int ArLenght = MIDI.getSysExArrayLength();
|
tut es aber.
Leider löst es aber nicht mein Problem.
Ich habe jetzt mal alles auskommentiert und mir nur einen Text ausgeben
lassen:
1 | if (MIDI.read()) {
|
2 | byte type = MIDI.getType();
|
3 | switch (type) {
|
4 | case ControlChange:
|
5 | cc = MIDI.getData1();
|
6 | val = MIDI.getData2();
|
7 | Serial.print("CC: ");
|
8 | Serial.print(cc);
|
9 | Serial.print(" Value: ");
|
10 | Serial.println(val);
|
11 | break;
|
12 | case SystemExclusive:
|
13 | Serial.println("Jawoll");
|
14 | break;
|
15 | }
|
16 | }
|
Wenn es irgendwas mit der Array-Lenght zutun hätte, müsste es ja jetzt
funktionieren, da ich ja nur abfrage, welchen Typ von Daten ich
empfange.
Mit MIDI_SYSEX_ARRAY_SIZE = 255 spuckt er mir ganz artig mein "Jawoll"
aus, wenn ich die aber auch nur ein Byte höher setze, reagiert der
Teensy garnicht nicht mehr, sobald die ersten SysEx-Daten vom Synth
gesendet wurden.. Also auch ControlChange Daten werden nicht mehr
ausgespuckt, bis ich den Teensy neu starte..