my question is to those who has experience with MFi and external-accessory framework.
If I work with external Bluetooth accessory, is there any way to issue connect request to a remote device? I mean programmatically, without user involvement. If Bluetooth link loss happens, who initiates reconnection - iOS device or external accessory?
The info that I was able to get is that:
1) First connection (together with pairing) is made by iOS device from Bluetooth settings screen. Atter this step devices will be paired and will remember each other.
2) Then it is external accessory who should make connection requests. From iOS side the only way is to manually connect device from Settings, there's no way to do it in program. (Well, there's showBluetoothAccessoryPickerWithNameFilter method in EAAccessoryManager, but it needs user involvement and AFAIK it has some issues and doesn't work as expected)
3) If Bluetooth link loss happens, it is external accessory who should try to reconnect back. iOS will not attempt to reconnect back.
Is my understanding correct? Thanks in advance.
Most of the information you are asking for is available on the Apple MFi Website. Most questions cannot be answered because we have to sign an NDA.
However i can tell you that once you pair your device with an Apple MFI Bluetooth module, it is up to the Bluetooth Module to keep the connection alive, if you switch your device off and back on the bluetooth module initialises the connection,
If you have a loss of connection the module will reconnect. Once connected you can then open the SSP connection from the EAAccessory Framework.
Jamie
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With