diff --git a/src/app_task.cpp b/src/app_task.cpp index 4de368b..6bf456d 100644 --- a/src/app_task.cpp +++ b/src/app_task.cpp @@ -80,9 +80,12 @@ void AppTask::process_midi_event(const MidiEvent& event) { uint8_t cc_num = event.data1; uint8_t cc_val = event.data2; - // Map CC number to pad index (CC 0-9 for pads 0-9, or CC 36-45 for notes 36-45) - // Try both mappings - if (cc_num < NUM_PADS) { + // Map CC number to pad index + // Loopy Pro: CC2=pixel0, CC3=pixel1, ... CC11=pixel9 + // Also try CC 0-9 and CC 36-45 for compatibility + if (cc_num >= 2 && cc_num < 2 + NUM_PADS) { + led_index = cc_num - 2; // CC 2-11 -> pads 0-9 + } else if (cc_num < NUM_PADS) { led_index = cc_num; // CC 0-9 } else if (cc_num >= 36 && cc_num < 36 + NUM_PADS) { led_index = cc_num - 36; // CC 36-45