bluetooth-lowenergy - Bluez:与 iOS 的配对问题
问题描述
我有一个在嵌入式设备上运行并使用 Bluez 5.48 的外围应用程序。我将我的服务设置为不可配对。当我尝试从 Android 设备连接到服务时,一切正常,但使用 iOS 时,连接会在一段时间后丢失,并且在 btmon 工具中有以下日志:
> ACL Data RX: Handle 68 flags 0x02 dlen 9 #1050 [hci0] 398.940027
ATT: Error Response (0x01) len 4
Read Request (0x0a)
Handle: 0x0016
Error: Insufficient Authentication (0x05)
< ACL Data TX: Handle 68 flags 0x00 dlen 7 #1051 [hci0] 398.940268
ATT: Read Request (0x0a) len 2
Handle: 0x0016
> ACL Data RX: Handle 68 flags 0x02 dlen 9 #1052 [hci0] 398.991500
ATT: Error Response (0x01) len 4
Read Request (0x0a)
Handle: 0x0016
Error: Insufficient Authentication (0x05)
请告知如何重新配置应用程序或重建 Bluez 以禁用配对。所有特征均不受保护。
解决方案
尝试重新配置应用程序以禁用经典蓝牙和绑定,如下所示:-
btmgmt power off
btmgmt bredr off
btmgmt bonding off
btmgmt io-cap 0
btmgmt power on
请注意,io-cap 0
将您的 IO 功能设置为“DisplayOnly”。如果这不起作用,请尝试将 io-cap 设置为 3 (NoInputNoOutput) 以查看是否得到不同的结果。
还要确保您忘记了 iOS 设备上的 iOS 设置中的设备,因为这可能会产生一些影响。
推荐阅读
- python - Python使用正则表达式打印特定文本并复制硒
- c++ - Clang-CL 编译器错误:尚无法破坏此“自动”类型
- c# - 用集合中的数据异步填充 TreeView
- python - 使用 Instaloader 从 Instagram 个人资料下载单个最新帖子
- spring-boot - 用spring boot替换liquibase属性文件的变量
- python - 在 PyQt5 中将图表另存为图像
- laravel - 使用惯性js获取媒体集合spatie媒体库
- google-bigquery - 在 BigQuery 中结合历史数据源和近乎实时的数据源?
- django - 尝试基于 TypeError 创建新对象:ItemSerializer 类型的对象不是 JSON 可序列化的 -
- woocommerce - 检查产品类别点击添加到购物车按钮,并根据结果执行条件