Switch from NimBLE-Arduino to ESP32-BLE-MIDI library
Replace direct NimBLE-Arduino dependency with max22/ESP32-BLE-MIDI wrapper library (v0.3.2). Rewrite ble_midi_transport to use BLEMidiServer API instead of raw NimBLEDevice calls. Removes patch_nimble_device() from pre_build.py — no longer needed since BT controller init is managed by the library internally. The library uses NimBLE v1.4.1 internally and configures advertising without setScanResponse() or setName(), which may resolve the invisible BLE advertising issue on ESP32-S3.
This commit is contained in:
@@ -20,11 +20,13 @@ public:
|
||||
|
||||
bool is_connected();
|
||||
|
||||
void send_midi_packet(const uint8_t* data, uint8_t len);
|
||||
void on_receive(const uint8_t* data, size_t len);
|
||||
size_t parse_ble_midi(uint8_t status, const uint8_t* data, size_t len, size_t offset, MidiEvent& event);
|
||||
|
||||
private:
|
||||
static void on_control_change(uint8_t channel, uint8_t controller, uint8_t value, uint16_t timestamp);
|
||||
static void on_note_on(uint8_t channel, uint8_t note, uint8_t velocity, uint16_t timestamp);
|
||||
static void on_note_off(uint8_t channel, uint8_t note, uint8_t velocity, uint16_t timestamp);
|
||||
static void on_connect();
|
||||
static void on_disconnect();
|
||||
|
||||
std::function<void(const MidiEvent&)> receive_callback;
|
||||
bool initialized;
|
||||
bool client_connected;
|
||||
|
||||
Reference in New Issue
Block a user