max22- / ESP32-BLE-MIDI

An Arduino library to use Midi over BLE (Bluetooth Low Energy), on ESP32 boards
MIT License
228 stars 27 forks source link

Recent MacOS & iOS won't discover BLE device #26

Open lomoalapimienta opened 9 months ago

lomoalapimienta commented 9 months ago

Hi there! Have been playing a lot with this library but recently found that recent MacOS and iOS devices won't discover the ESP32 BLE device at all. The same code works perfect on earlier MacOS versions (ie: High Sierra) but won't even discover the Bluetooth device in the list in Ventura. Same with an iPhone 14. On the other hand, all the Android and Windows devices tested so far work flawlessly. Doing some research, seems to be related to a security issue, as Apple might have included a new requirement, not allowing BLE devices without encryption/authentication schemes. This is the only hint I have. Can you help me understand if it is possible to configure the BLE connection with a PIN and/or other security parameters? Thanks!

LekoPhantom commented 6 months ago

I too am seeing this behavior. I am not sure how much help I can be, but if I get a chance, I will take a look. I do know that the SparkIO project does work with the iPad, so their bluetooth stack may be more amenable to the newer apple security protocols.

lomoalapimienta commented 6 months ago

I too am seeing this behavior. I am not sure how much help I can be, but if I get a chance, I will take a look. I do know that the SparkIO project does work with the iPad, so their bluetooth stack may be more amenable to the newer apple security protocols.

Hi @LekoPhantom it seems that BLE devices not advertising encryption capabilities won't be displayed and available to connect using the Bluetooth menu. But I've finally managed to connect the device using the Audio MIDI setup application provided by the Mac OS. Give it a try and let me know!

LekoPhantom commented 6 months ago

I do not have a current mac, but I did have success with the same workaround on ios. I found the app via this issue for Control Surface . I used the BLEScanner app on my iPad. I got a bit confused because if the ESP32 was used for another BLE project and the iPad had connected to it, the app shows the old project's name until it connects.

lomoalapimienta commented 6 months ago

The MIDI setup app has been available for many years. I am using also a 2013 MacBook pro with high Sierra. This OS shows the device in Bluetooth menu

El vie, 29 de mar de 2024, 14:23, LekoPhantom @.***> escribió:

I do not have a current mac, but I did have success with the same workaround on ios. I found the app via this issue https://github.com/tttapa/Control-Surface/issues/101#issuecomment-579675788 for [Control Surface ](https://github.com/tttapa/Control-Surface. I used the BLEScanner app https://apps.apple.com/us/app/ble-scanner-4-0/id1221763603.

— Reply to this email directly, view it on GitHub https://github.com/max22-/ESP32-BLE-MIDI/issues/26#issuecomment-2027519622, or unsubscribe https://github.com/notifications/unsubscribe-auth/AZON2ZKTTDGKDZ4QUBZ4HXDY2WPSFAVCNFSM6AAAAABAN256I6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRXGUYTSNRSGI . You are receiving this because you authored the thread.Message ID: @.***>