BLE Connection not pairing - ios

I have an iOS app that works on iOS 14 on all of my test devices, iPhone XR, iPhone 11 Max, iPhone 7. The app connects to a BLE device, the app reads and sends settings over Bluetooth to modify the devices behavior.
I just got a new phone (iPhone 13 Pro) and I was doing some final testing before release. So this is the first time this app is running on this phone. I never get the dialog to pop up that asks to pair the device when I connect to it. I thought this was strange. So I went back to my iPhone XR and "forgot" the BLE device. I delete the app and re-run. It sees the device, I hit connect in the app and it asks me if I would like to pair.
Obviously this is some weird exception I am not handling quite right. Does anyone have a thought? Looking around here on Stackoverflow and google and I don't see that anyone else has run into this.
This is an objective-c app, using CoreBluetooth.

Related

Issue reconnecting to periphal device with iPhone (QT)

I have a qt app running on Android and iOS. The Bluetooth part of the code is in c++ and currently works for Android.
Currently on the iOS side I can discover the device and pair to it and connect. However when I go to connect to the device again after closing and reopening app (or restarting the phone) I cannot reconnect to the device.
I save the Devicee UUID that iOS creates for the device (since there is no MAC Address) and I get the error from my QLowEnergyController that says "Remote Device Not Found".
Things I have tried after pairing:
1. Restart app and try connecting.
2. Go into settings and manually connect to the device. Still doesn't find the device.
Are there any specific steps to reconnect to iOS?
I am expecting that the app will connect my iPhone to the device just like in Android.

iOS 11 random disconnection with external bluetooth device

I use CoreBluetooth framework to connect external bluetooth device, in all iOS don't have random disconnection, but on iOS 11 it disconnect.
Maybe some one has any idea what's wrong with ios 11 and corebluetooth, CBCentralManager?
My app worked disconnected every 5 minutes on iOS 11.0.x,(I'm sorry for the correct version), But in iOS 10 or eralier version is OK. So I try to change the peripheral deviece, change a Android phone to test, both of them are running OK.
Then I update the version to iOS 11.1.1, And the BUG looks like to be FIXed.
Your bluetooth device is disconnected when your iphone/ipad goes to sleep. This is due to iOS 11 is requiring all application to add background mode to their info.plist. Look at screenshot provided below, add it to your app's info.plist and that will resolve your iOS 11 randomly disconnect issue when device goes to sleep.

After Bluetooth OTA update, I can re-pair on iOS 9.2 phones but it won't work on iOS 9.3 phones

I have an app that uses BLE to connect to a wearable device. I can update the firmware of the device via OTA. After the OTA process I can get re-paired to the wearable by calling connectPeripheral on the Central Manager. This works fine on iOS 9.2.
However, I have tested the same app on a phone with iOS 9.3 and doing the same thing causes problems. Instead of receiving one pairing request I get a lot of them. If I press pair or cancel, a new pairing request pop-up shows up. Eventually the pop-ups stop but the device isn't even paired to the app after.
Was there a change in iOS 9.3 that could be causing this? Anyone seen this behavior?
The bluetooth chip in the wearable device is a Bluegiga BLE113.

Pairing a bluetooth device with iOS using Cordova

I'm connecting to a BLE device in a Cordova application using the ble-central plugin. I can connect to the device from the application without a problem, when I connect to the device from iOS I get prompted for the PIN and on entering the PIN I get connected, all as expected.
The problem is that the device does not get remembered on iOS, and that every time the application is restarted, or if the connection fails, I get prompted for the PIN again.
Is there a way to force iOS to remember the device? The strange thing is that even though I can connect to the device from the application, or something like the LightBlue application I cannot seem to detect the device from the settings.
Not sure if this is some iOS limitation, if the device should somehow be iOS enabled like older devices did? It seems to me I wouldn't be able to connect at all if that was the case?
Any help or idea is appreciated.

Can a real iOS device and Watch Simulator communicate for Testing purposes

I want to create a watch app for an existing iOS app.
But I am in a situation that i don't own a apple watch and my existing iOS app will run only on real devices not on simulator.
Is it possible to run the app on the iphone device and test my watch app in the watch simulator?
Pairing a real iPhone and a Watch simulator is not possible at least at the moment. I make this conclusion because of 3 reasons:
A Watch simulator automatically pairs to an iPhone simulator during the installation process.
It is not possible to unpair a Watch simulator from the interface at all.
Bluetooth is not accessible on a simulator to communicate with real devices. Here's a proof.

Resources