[ https://issues.apache.org/jira/browse/MYNEWT-857?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16309180#comment-16309180 ]
Christopher Collins commented on MYNEWT-857: -------------------------------------------- I'm happy to hear that you were able to replicate the issue. Unfortunately, I am still puzzled. If the peer does not exchange its MTU, the nimble stack just uses the minimum value (23). I don't think the lack of MTU exchange by itself causes any problems for nimble, as most of the testing we do does not include any MTU exchange. However, it is possible that the iOS Bluetooth stack requires a minimum MTU to "finalize" a connection. Perhaps the iOS stack is designed to always perform MTU exchange after connection establishment, and the remainder of the procedure assumes a particular minimum. > BLE Controller - incompatibility with iPhone 8 (and iPhone X?) > -------------------------------------------------------------- > > Key: MYNEWT-857 > URL: https://issues.apache.org/jira/browse/MYNEWT-857 > Project: Mynewt > Issue Type: Task > Security Level: Public(Viewable by anyone) > Components: Nimble > Reporter: Christopher Collins > Fix For: v1.3 > > Attachments: ios2nimble-no-feat.pcap, ios2nimble.pcap, > nimble_ios_1033.btt, nimble_ios_1103.btt > > > Master: iPhone running iOS 11 > Slave: NimBLE device > The iPhone successfully establishes a connection to the NimBLE device, but > the CoreBluetooth {{didConnect()}} callback does not get called. A packet > trace (see attached {{ios2nimble.pcap}} file) shows that the iPhone never > initiates service discovery. > The problem seems to occur when the NimBLE controller initiates the Feature > Exchange Procedure immediately after connection establishment. The > {{LL_SLAVE_FEATURE_REQ}} PDU appears to cause a problem for the iOS device. > When I comment out the call to {{ble_ll_ctrl_proc_start()}} at the bottom of > {{ble_ll_conn_created()}}, the iOS device is able to connect and perform > service discovery, resulting in the CoreBluetooth callback being executed. > In the attached pcap file {{ios2nimble.pcap}}, the CONNECT_REQ is at packet > #6211. -- This message was sent by Atlassian JIRA (v6.4.14#64029)