使用SDK V3.0.8.0,iPhone 7配对失败

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
5个帖子/ 0新
最后一篇
v
离线
最后一次露面:1年5个月前
加入:2016-10-20 06:53
使用SDK V3.0.8.0,iPhone 7配对失败

我在旧产品中有两个版本的FW。版本1运行SDK v3.0.8.0和第2版运行SDK v3.0.10.0。

当我尝试使用运行iOS v13.3使用ipher iphone的版本1配对时,iPhone即使我们的FW正在运行BLE v4.0,iPhone也会使用安全连接发送配对请求。这使得FW以原因无效参数对配对失败响应。

它适用于较旧的iPhone,因为它们不支持安全连接和所有Androids,因为它们不会在与运行此类旧BLE版本的设备通信时设置安全连接标志。

有两个SDK版本是否有可能修复此问题?我们还有数千个单位运行旧FW,因此我们希望了解为什么配对在旧版本中失败。

我们联系了Apple Support并获得了此回复

5S和更新器件之间的差异是较新的设备支持BLE 4.2安全连接。您指示您的设备使用BLE 4.0硬件。

这可能是由于设备侧的错误配置引起的。

在尝试与SC设备配对时暴露的旧固件上存在典型问题。

具有此问题的原因是基于对配对请求中的一些保留位(根据BLE SPEC 4.0)的假设计算配对键,这将是始终为零的。

较新的iPhone正在使用新的LE安全连接配对模型,并且SC位在配对请求中设置为1。

不支持SC的外设可以忽略此请求并选择使用旧版配对模型,但创建键时无法忽略位,并且必须使用接收的数据来计算它们。

外围设备应该完全使用配对请求,以便计算键,否则当iOS向将配对请求(在这种情况下SC位)设置为1时,键将是错误的。

因此,请检查您的固件以确保任何保留(和未使用的)位未被假定为零,并且在从IOS侧接收时使用。

设备:
PM_DIALOG.
离线
最后一次露面:2天32分钟前
职员
加入:2018-02-08 11:03
嗨Viktor,

嗨Viktor,

谢谢你的问题。我们正在离线提出问题,我们正在内部工作。一旦我有问题,我会告诉你。

问候,pm_dialog

PM_DIALOG.
离线
最后一次露面:2天32分钟前
职员
加入:2018-02-08 11:03
嗨Viktor,

嗨Viktor,

刚从团队中得到了答案。SDK3.0.10中有许多改进。请参阅SDK3.0.10的发行说明,以获取有关SDK3.0.10的更多信息。我假设SDK3.0.10运行(FW版本2)不存在配对问题。

谢谢,PM_DIALOG.

v
离线
最后一次露面:1年5个月前
加入:2016-10-20 06:53
只配对相关的笔记

只有3.0.10.0的发行说明中的​​配对相关注意位于DA14580的ROM补丁下,这是我们正在使用的芯片
安全经理问题

保留在配对PDU中的选计导致PTS测试TC_BV_04_C失败.Patched函数:smpc_send_pairing_req_ind(),smpc_check_pairing_feat(),smpc_pairing_cfm_handler()。更新SMPC_PAIRING_CFM_HANDLER()修补程序以修复SMPC_PAIRING_CFM在PassKey条目过程超时后修复硬故障。

但我没有得到一个艰难的错。它保持活力,但发送配对失败的消息。

PM_DIALOG.
离线
最后一次露面:2天32分钟前
职员
加入:2018-02-08 11:03
嗨victor,

嗨victor,

我们将脱机,我会在您的注册电子邮件地址发送电子邮件。

谢谢,PM_DIALOG.