diff --git a/Open_Theremin_V3/application.cpp b/Open_Theremin_V3/application.cpp index 4e288ec..cd2b837 100644 --- a/Open_Theremin_V3/application.cpp +++ b/Open_Theremin_V3/application.cpp @@ -600,11 +600,11 @@ void Application::midi_application () { if (rod_midi_cc != 255) { + midi_msg_send(midi_channel, 0xB0, rod_midi_cc, (uint8_t)(new_midi_rod_cc_val >> 7)); if (rod_midi_cc_lo != 255) { midi_msg_send(midi_channel, 0xB0, rod_midi_cc_lo, (uint8_t)(new_midi_rod_cc_val & 0x007F)); } - midi_msg_send(midi_channel, 0xB0, rod_midi_cc, (uint8_t)(new_midi_rod_cc_val >> 7)); } old_midi_rod_cc_val = new_midi_rod_cc_val; } @@ -668,11 +668,11 @@ void Application::midi_application () { if (rod_midi_cc != 255) { + midi_msg_send(midi_channel, 0xB0, rod_midi_cc, (uint8_t)(new_midi_rod_cc_val >> 7)); if (rod_midi_cc_lo != 255) { midi_msg_send(midi_channel, 0xB0, rod_midi_cc_lo, (uint8_t)(new_midi_rod_cc_val & 0x007F)); } - midi_msg_send(midi_channel, 0xB0, rod_midi_cc, (uint8_t)(new_midi_rod_cc_val >> 7)); } old_midi_rod_cc_val = new_midi_rod_cc_val; } diff --git a/README.md b/README.md index 0f3c799..934220b 100644 --- a/README.md +++ b/README.md @@ -101,7 +101,9 @@ Let's consider a Fade-in / Picth Variation / Fade-out sequence (I use right hand 7. Rod antenna MIDI CC: 8 positions (None, 8-Balance, 10-Pan, 16-MSB/48-LSB-GeneralPurpose-1, 17-MSB/49-LSB-GeneralPurpose-2, 18-GeneralPurpose-3, 19-GeneralPurpose-4, 74-cutoff) - 14 Bit messages are sent in the following order: LSB (1st), MSB (2nd). + For 14 Bit CC messages, MSB and LSB are always sent together and in the following order: MSB (1st), LSB (2nd) as per MIDI 1.0 Standard. + The receiver can bufferize MSB to synchronize it with the LSB. + 8. Loop antenna MIDI CC: 8 positions (1-Modulation, 7-Volume, 11-Expression, 71-Resonnance, 74-Cutoff, 91-Reverb, 93-Chorus, 95-Phaser)