gpt4 book ai didi

Linux BlueZ 自定义制造扫描响应数据

转载 作者:太空宇宙 更新时间:2023-11-04 12:19:29 28 4
gpt4 key购买 nike

我有一个自定义 GATT 服务器,作为插件在 Linux 上使用 BlueZ 4.101。我现在正在尝试设置自定义扫描响应广告数据。我在 iOS 上使用 LightBlue 来调试我的 GATT 服务器和广告参数。我尝试了以下代码,LightBlue 可以看到广告有效负载和设备名称,但看不到扫描响应数据。如何使用 BlueZ 设置自定义扫描响应数据?

# BLE Name
echo "<GATT SERVER> Setting BLE Advertising Name..."
btmgmt -i $BLUETOOTH_DEVICE name "My-Test-Device"

echo "<GATT SERVER> Starting BLE Advertising..."
hciconfig $BLUETOOTH_DEVICE leadv

# Adv Packet
echo "<GATT SERVER> Setting BLE Advertising Packets..."
hcitool -i hci0 cmd 0x08 0x0008 15 02 01 06 11 06 fa d8 43 31 14 09 0c ba e1 14 82 25 11 48 96 16
# | | | | | | -----------------------------------------------
# | | | | | | |
# | | | | | | +---- device state service UUID
# | | | | | |
# | | | | | +- Incomplete List of 128-bit Service Class UUIDs
# | | | | |
# | | | | +- Num bytes in -----------------------------------+
# | | | |
# | | | +- LE General Discoverable Mode, BR/EDR
# | | |
# | | +- Flags AD type
# | |
# | +nBytes+
# |
# +- Num bytes in -----------------------------------------------+

# Scan Response
echo "<GATT SERVER> Setting BLE Scan Response..."
hcitool -i hci0 cmd 0x08 0x0009 02 01 06 1A FF 02 5E 03 02 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

最佳答案

您设置发现响应的命令没有任何意义。这是一个例子:

hcitool -i hci0 cmd 0x08 0x0009 14 13 09 74 68 65 20 70 69

hcitool -i hci0 cmd 0x08 0x0009 : set discovery response
14 : total payload length
13 : info payload length
09 : info type == name
74 68 65 20 70 69 : info payload => the name in ascii. here "the pi"

请注意,如果您的设备无法连接,这将不起作用。

关于Linux BlueZ 自定义制造扫描响应数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46431843/

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