Rolfdegen
Well-known member
When i try to receive 348 Byte sysex data via midi with teensy 4.1, the data is missing and error !!!
Receive 348 Byte to usbMIDI works fine
receive MIDI SysEX data (missing and error)
receive USB SysEx data (very nice)
Receive 348 Byte to usbMIDI works fine
Code:
MIDI.setHandleSystemExclusive(myReceiveSysEx); //Doesn't work because of buffer problems :(
usbMIDI.setHandleSysEx(myReceiveSysEx); // work very fine :)
//*************************************************************************
// usbMIDI/MIDI receive SystemExclusive Dump
//*************************************************************************
FLASHMEM void myReceiveSysEx(const uint8_t *buffer, uint16_t lenght, boolean flag)
{
static int count = 0;
static boolean F0status = false;
static boolean F7status = false;
int SysExBuffer[348];
Serial.print("lenght: ");
Serial.println(lenght);
for (uint16_t i = 0; i < lenght; i++) {
SysExBuffer[count] = buffer[i];
count++;
if (buffer[i] == 0xF0) {
F0status = true;
Serial.println("F0 status");
}
if (buffer[i] == 0xF7) {
F7status = true;
Serial.println("F7 status");
Serial.print("receive data lenght: ");
Serial.println(count);
count = 0;
}
}
receive MIDI SysEX data (missing and error)
receive USB SysEx data (very nice)