gpt4 book ai didi

linux - 可以使用 hcitool 而不是 gatttool 连接到 BLE 设备吗?

转载 作者:IT王子 更新时间:2023-10-29 00:43:53 24 4
gpt4 key购买 nike

我正尝试在 QT 应用程序中从我的 PC 和 Raspberry Pi3 连接到低功耗蓝牙设备,但在尝试连接时出现此 QT 错误:

qt.bluetooth.bluez: Unknown l2cp socket error:  QBluetoothSocket::UnknownSocketError "Transport endpoint is not connected"
qt.bluetooth.bluez: void QBluetoothSocketPrivate::_q_readNotify() 14 error: -1 "Resource temporarily unavailable"
qt.bluetooth.bluez: Unknown l2cp socket error: QBluetoothSocket::UnknownSocketError "Resource temporarily unavailable"

我不认为它的 QT,我怀疑 bluez 是问题所在。我发现 Linux 可以通过以下方式找到设备:

sudo hcitool lescan

它可以通过以下方式连接:

sudo hcitool lecc <address>

那很好。问题是,一旦我尝试使用 gatttool(这一定是 QT 尝试做的事情的等价物),我就会得到以下信息:

pi@user:~$ sudo gatttool -I 
[ ][LE]> connect <address>
Attempting to connect to <address>
Error: connect error: Transport endpoint is not connected (107)
[<address>][LE]>

结果是 PC 和 Raspberry 上的一些结果。 PC 上的 bluez 版本是 5.37,树莓派上是 5.23。

有什么想法吗? :(

最佳答案

使用 Gatttool:

尝试使用 random 类型,如果没有问题,它很可能会工作。

sudo gatttool -I -t random

您可以在单个命令中绑定(bind)到蓝牙地址。

sudo gatttool -I -t random -b <mac address>

使用 Hcitool:

sudo hcitool lecc --random <mac address>

执行时可以在另一个终端看到详细的HCI嗅探日志

sudo hcidump -X

关于linux - 可以使用 hcitool 而不是 gatttool 连接到 BLE 设备吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40248376/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com