didConnectPeripheral does not get called on iPhone 8 and X but works on iPhone 6S+ and 7

centralManager:didConnectPeripheral does not get invoked on iPhone 8 and iPhone X running iOS 11.3 but works fine on iPhone 6S+ and 7 also running iOS 11.3. The BLE connection establishes successfuly as verified on the peripheral side as well as in the iOS BLE system menu.


I am making sure to maintain a reference to the peripheral before calling connectPeripheral. We've seen no issues at all on iPhone 6S+. What's different across these phones and what can we do to make our code portable?

Replies

Also tested on iPhone 6 and it works flawlessly -- centralManager:didConnectPeripheral gets called as soon as connection is established.

I have the same problem. Did you find a solution?