Skip to content

BLEMIDI_Client_ESP32.h : MIDI service present but not found #106

@al1-24

Description

@al1-24

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 ?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions