-
Notifications
You must be signed in to change notification settings - Fork 42
Description
When looking for a BLE device to connect, method isAdvertisingService is used to verify if MIDI service is available.
Unfortunately, all BLE devices do not advertise every service they propose unless they are connected.
I encountered this case with a MIDI pedalboard (M-Vave Chocolate Plus).
MIDI is in the list of services but is not listed without connexion.
Until connexion getServiceUUIDCount() returns only 1, and that first one isn't MIDI but HID (0x1812).
Once connected, 8 services are available, including MIDI.
For my own usage, I modified BLEMIDI_Client_ESP32.h, deleting test of advertising MIDI service. I can now connect to this device and read every MIDI message coming from.
My c++ knowledge isn't sufficient to add connexion to the device inside AdvertisedDeviceCallbacks_ext::onResult method.
Perhaps is ther another way to look for MIDI service ?