无需指示未收到未收到MTU响应

了解更多常见问题解答教程

8个帖子/ 0新
最后一篇
rparkinson.
离线
最后一次露面:3天前1周
加入:2017-10-03 18:23
无需指示未收到未收到MTU响应

在我们使用DA14581的BLE外设中,在连接时,外设发送Exchange MTU请求,通常收到Exchange MTU响应。我们在DA14581发送了Exchange MTU请求之后的IOS设备中运行,IOS设备发送Exchange MTU请求,并且DA14581发送Exchange MTU响应。此时IOS设备将写入请求发送到DA14581特性。DA14581发送写入响应,通常会发送指示。在Exchange MTU序列发生的情况下,即使两侧已成功协商MTU,也不会发送任何指示。

在这种情况下缺乏接收交换MTU的响应,将DA14581保持在不执行指示的状态?

谢谢你的帮助。

关键词:
设备:
PM_DIALOG.
离线
最后一次露面:2天5小时前
员工
加入:2018-02-08 11:03
嗨rparkinson,

嗨rparkinson,

谢谢你的问题在线。是否有可能共享嗅探器日志,以便我能够通过它并了解在空中发生的事情?此行为仅与iOS发生吗?

谢谢,PM_DIALOG.

rparkinson.
离线
最后一次露面:3天前1周
加入:2017-10-03 18:23
当然,我会附上嗅探器

当然,我将附加一个嗅探文件。这只用iOS观察到这一点。我们广泛使用了Android,从未见过这个问题。

根据Sniffer文件,该问题的MTU交换发生在帧1169250,16948和169460。第一写请求在帧169758处到达DA14581,并且存在写入响应。我们的系统将始终发送指示,但在这种情况下它没有。

附件:
PM_DIALOG.
离线
最后一次露面:2天5小时前
员工
加入:2018-02-08 11:03
嗨rparkinson,

嗨rparkinson,

感谢分享嗅探器日志 - 我会想到它。您还可以在SDK版本中获取吗?是sdk5.0.4吗?

谢谢,PM_DIALOG.

rparkinson.
离线
最后一次露面:3天前1周
加入:2017-10-03 18:23
是的,我们正在使用SDK 5.0.4

是的,我们正在使用SDK 5.0.4

PM_DIALOG.
离线
最后一次露面:2天5小时前
员工
加入:2018-02-08 11:03
嗨rparkinson,

嗨rparkinson,

谢谢你的迹象。我在内部升级了这个,所以我会尽快回复你的团队。

谢谢,PM_DIALOG.

PM_DIALOG.
离线
最后一次露面:2天5小时前
员工
加入:2018-02-08 11:03
嗨rparkinson,

嗨rparkinson,

根据Bluetooth LE 4.0 SPEC,DA14580已发送MTU_EXCHANGE请求并等待MTU Exchange响应。如果此响应不会来自iPhone(客户端),则发送安全请求不是一个好方法。

我们假设您的需要是将MTU Exchange请求和安全请求调用机制解除,以便首先发生MTU交换,然后将从DA14580发送安全请求。

当对MTU Exchange请求的响应等待设备无法发送指示或通知时。显然,IOS堆栈错误地丢弃了由于在方法下与安全过程的冲突而删除的请求。为了不困惑iOS堆栈,建议首先通过发出MTU请求与安全请求分离的Exchange MTU请求是在完成安全请求时从安全请求中解耦。

谢谢,PM_DIALOG.

rparkinson.
离线
最后一次露面:3天前1周
加入:2017-10-03 18:23
嗨,我们已经更新了我们的

嗨,我们更新了我们的外围设备,它使用对话框14581表现为您推荐的,解耦MTU Exchange请求和安全请求调用机制,以便首先发生MTU交换,然后将从DA14580发送安全请求。“不幸的是这种变化对某些IOS设备的情况下,对我们运行的问题没有影响。我的具体问题是:在这个问题的iOS案例中对话框发送Exchange MTU请求后,请发送Exchange MTU请求,对话框发送Exchange MTU响应。虽然这不是规范所涵盖的序列,但MTU已成功协商,并且应该足以允许对话框开始发送指示。是否可以在对话中进行这样的设计更新来处理这种情况?

谢谢,我很感激你的考虑。