EAAccessoryManager accessory picker bug
Asked Answered
S

4

5

I'm trying to build an app that communicates with an external accessory (over bluetooth). To ensure the app is user-friendly I'd like him not to go to the settings to connect with the accessory but to show the Accessory picker that iOS 6.0 includes.

To achieve that, a simple call to :

[[EAAccessoryManager sharedAccessoryManager] showBluetoothAccessoryPickerWithNameFilter:nil completion:nil];

For now, I'm not using the filter and the completion (both can be nil according to the iOS Class Reference) - even if I tried using them too.

Now the problem is that my accessory appears for 2 to 10 seconds and then disappears from the list until I cancel the popup and show it again. Another problem is that sometimes it doesn't appear at all. I also made sure the device was already paired but not connected.

I tried using another accessory (one that I didn't make myself) and with different devices (iPhone 4, 4S, 5 - iPad - iPod Touch) with no success.

Does anyone has a similar issue? If yes how did you solve it? Is it an iOS bug? Is it an accessory bug?

Thanks for any reply.

Sabella answered 13/3, 2013 at 8:16 Comment(2)
What was your iOS version that was used?Gladi
I tried them all from iOS6.0 to 6.3.Sabella
M
3

I can confirm that iOS 7 BETA 4 has fixed this issue. If you are using the RN 42 APL bluetooth chip (which you must be as its the only one available on the MFI program)

The only thing you need to be aware of is that the firmware on the RN 42 module needs to be 5.36 and above (as it fully supports the iAP protocol)

I have updated my App (that talks to a custom build accessory) and the accessory picker dialog works a charm.... just thought I'd let you guys know!

Muskrat answered 5/8, 2013 at 13:13 Comment(2)
Thanks, I'll test it tomorrow and if it works, I'll accept this as an answer !Sabella
As you said, works like a charm on iOS7. You just have to be paired with your device !Sabella
N
2

Just got the answer from Apple to these questions. Apple said that it's a bug and they are going to fix it with the future release of ios. Not sure when this will happen. But do not waste time for this as it's bug. until new fix, work around is pair the devices on the bluetooth setting screen and then use it in App.

Neace answered 23/4, 2013 at 19:29 Comment(2)
Thanks for the reply ! Can you share some source of information ?Sabella
What is the iOS version that contains the bug? Has the bug been fixed as of iOS 6.1.3?Gladi
M
2

I can confirm the bug is still present in iOS 6.1.3

We have designed a custom piece of hardware that uses the RN42 APL module (we are part of the MFI program). We have spoken to Roving Networks (now Microchip) and they have assured us the firmware on their module matches apples requirements... Microchip are still looking into the problem, but we are looking at the possibility that it is a bug with iOS 6.x

I will download iOS 7.0 and try it out... will report back guys

Cheers Will

Muskrat answered 2/8, 2013 at 7:27 Comment(0)
S
1

I have had the exact same problem and have been unable to solve it for the past week. I'm using a Roving Networks RN-42-APL-X module, and I changed the Inquiry Scan Window and Page Scan Window of the module I was using to 100%, but still no luck.

showBluetootAccessoryPickerWithNameFilter will sometimes NOT find my device, and when it does, it loses the device anywhere between .5 seconds to 6 seconds after finding it...

2013-03-13 00:45:22.006 EADemo[356:907] BTM: found device "myDevice" 00:08:36:4B:A4:49

2013-03-13 00:45:22.631 EADemo[356:907] BTM: lost device "myDevice" 00:08:36:4B:A4:49

Surveillance answered 13/3, 2013 at 19:12 Comment(3)
Thanks for sharing your experience. At least I'm not alone in this :) I'm considering reporting a bug to Apple.Sabella
@Sabella Did you file a bug with Apple?Rhoades
As for me, I am using this to "pair" my bluetooth device with the ipad mini, and it fails 50% of the time to pair. So I guess it's better to not use it then.Gladi

© 2022 - 2024 — McMap. All rights reserved.