mynewt-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrzej Kaczmarek (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (MYNEWT-857) BLE Controller - incompatibility with iOS 11
Date Wed, 18 Oct 2017 10:15:00 GMT

    [ https://issues.apache.org/jira/browse/MYNEWT-857?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16209105#comment-16209105
] 

Andrzej Kaczmarek commented on MYNEWT-857:
------------------------------------------

I tested with two iPhones and it works fine on both of them (both logs attached):
- iPhone SE (iOS 11.0.3)
- iPhone 5 (iOS 10.3.3)

However, these do not support LE Data Packet Length Extension so after we complete feature
exchange Data Length Update procedure is not started from our side - this could be what breaks
iOS in some way even though the LL_LENGTH_REQ and LL_LENGTH_RSP transaction seems just fine
in pcap file. I don't have more recent iPhone at the moment so could you please attach pcap
file with LL_SLAVE_FEATURE_REQ disabled? I think we should still initiate dlu after receiving
LL_FEATURE_REQ from iPhone so I wonder what's the timing there.

> BLE Controller - incompatibility with iOS 11
> --------------------------------------------
>
>                 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.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) 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, the CONNECT_REQ is at packet #6211.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message