From 3e92d6bb7c91b3680e5da498c7fca0396f0fd9d7 Mon Sep 17 00:00:00 2001 From: Ashley Strahle Date: Tue, 30 Jun 2026 08:48:04 +0000 Subject: [PATCH] swap init order (USB before BLE), add USB ready check and debug prints --- src/main.cpp | 8 ++++---- src/midi_transport.cpp | 10 +++++++++- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 4aee710..e1e8968 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -346,14 +346,14 @@ void setup() { switch_driver.set_mux(&mux); switch_driver.begin(); - Serial.println("[INIT] Initializing BLE MIDI..."); - delay(1000); - ble_midi_transport.begin(); - Serial.println("[INIT] Initializing USB MIDI..."); midi_transport.begin(); delay(500); + Serial.println("[INIT] Initializing BLE MIDI..."); + delay(1000); + ble_midi_transport.begin(); + Serial.println("[INIT] Registering MIDI callbacks..."); controller.begin(); diff --git a/src/midi_transport.cpp b/src/midi_transport.cpp index 91502d1..450d528 100644 --- a/src/midi_transport.cpp +++ b/src/midi_transport.cpp @@ -91,7 +91,15 @@ void UsbMidiTransport::send_note_off(uint8_t channel, uint8_t note, uint8_t velo } void UsbMidiTransport::send_cc(uint8_t channel, uint8_t cc, uint8_t value) { - if (!initialized) return; + if (!initialized) { + Serial.println("[MIDI DBG] send_cc: not initialized"); + return; + } + if (!TinyUSBDevice.ready()) { + Serial.println("[MIDI DBG] send_cc: USB not ready"); + return; + } + Serial.println("[MIDI DBG] send_cc: calling writePacket..."); uint8_t packet[4] = {0x0B, (uint8_t)(0xB0 | (channel - 1)), cc, value}; usb_midi.writePacket(packet); Serial.printf("[MIDI OUT] Ch:%d CC:%d:%d\n", channel, cc, value);