gpt4 book ai didi

linux - Raspbian 上的低功耗蓝牙

转载 作者:IT王子 更新时间:2023-10-29 00:47:35 27 4
gpt4 key购买 nike

我使用以下配置从源代码安装了 bluez-5.15:

$ ./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc \
--localstatedir=/var --libexecdir=/lib --disable-systemd

然后我不得不手动将 gatttool 复制到/usr/local/bin 目录

$ sudo cp attrib/gatttool /usr/local/bin/

我重新启动了 Raspberry Pi 并尝试了以下方法来连接到我的 BLE 设备:

$ sudo hciconfig hci0 up

$ sudo hcitool lescan
LE Scan ...
EA:FB:B5:CE:B0:13 DfuTarg

$ sudo hcitool lewladd EA:FB:B5:CE:B0:13

$ sudo hcitool lecc EA:FB:B5:CE:B0:13
Could not create connection: Input/output error

然后我尝试连接 gatttool:

$ gatttool -b EA:FB:B5:CE:B0:13 --interactive
[EA:FB:B5:CE:B0:13][LE]> connect
Attempting to connect to EA:FB:B5:CE:B0:13
Error: connect error: Device or resource busy (16)
[EA:FB:B5:CE:B0:13][LE]>

我在这里遗漏了什么 - 这是配置问题吗?错误是什么意思?

最佳答案

首先,我与一位同事讨论了我的配置,对于 Raspbian(或更具体地说,Debian),他推荐了以下配置设置:

./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var --enable-library --with-systemdsystemunitdir=/lib/systemd/system --with-systemduserunitdir=/usr/lib/systemd

之后,经过进一步检查,这是我成功连接的方式。所以发生的事情是我尝试连接的设备(基于 NRF 的 BLE 设备)需要将 LE 地址标志设置为“随机”。见下文:

gatttool -t random -b EA:FB:B5:CE:B0:13 -I

然后结果:

[EA:FB:B5:CE:B0:13][LE]> connect
Attempting to connect to EA:FB:B5:CE:B0:13
Connection successful
[EA:FB:B5:CE:B0:13][LE]> characteristics
handle: 0x0002, char properties: 0x0a, char value handle: 0x0003, uuid: 00002a00
-0000-1000-8000-00805f9b34fb

万岁!此外,可能需要将安全级别设置为低于高的级别:

[EA:FB:B5:CE:B0:13][LE]> sec-level medium

关于linux - Raspbian 上的低功耗蓝牙,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22213793/

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