void MidiController::sendDeviceId(){ uint8_t buffer[15]; buffer[0] = SYSEX_DEVICE_ID; uint8_t* deviceId = getDeviceId(); data_to_sysex(deviceId, buffer+1, 3*4); sendSysEx(buffer, sizeof(buffer)); }
void MidiController::sendFirmwareVersion(){ char* version = getFirmwareVersion(); uint8_t len = strlen(version); uint8_t buffer[len+1]; buffer[0] = SYSEX_FIRMWARE_VERSION; memcpy(buffer+1, version, len); sendSysEx(buffer, sizeof(buffer)); }
void MidiController::sendPatchParameterName(PatchParameterId pid, const char* name){ uint8_t size = strlen(name); uint8_t buffer[size+3]; buffer[0] = SYSEX_PARAMETER_NAME_COMMAND; buffer[1] = pid; memcpy(buffer+2, name, size+1); sendSysEx(buffer, sizeof(buffer)); }
void MidiController::sendPatchName(uint8_t index){ const char* name = registry.getName(index); uint8_t size = strlen(name); // uint8_t size = strnlen(name, 16); uint8_t buffer[size+3]; buffer[0] = SYSEX_PRESET_NAME_COMMAND; buffer[1] = index; memcpy(buffer+2, name, size+1); sendSysEx(buffer, sizeof(buffer)); }
void MidiPlugin::openOutput(quint32 output) { qDebug() << "MIDI plugin open output: " << output; MidiOutputDevice* dev = outputDevice(output); if (dev == NULL) return; dev->open(); if (dev->midiTemplateName() != "") { qDebug() << "Opening device with Midi template: " << dev->midiTemplateName(); MidiTemplate* templ = midiTemplate(dev->midiTemplateName()); if (templ != NULL) sendSysEx(output, templ->initMessage()); } }
void MidiController::sendSelfTest(){ uint8_t buffer[2]; buffer[0] = SYSEX_SELFTEST; buffer[1] = (isClockExternal() << 2) | ( SRAM_TestMemory() << 1) | settings.settingsInFlash(); sendSysEx(buffer, sizeof(buffer)); }