BluetoothLEAdvertisementWatcher 不接收广告负载

问题描述

我正在尝试使用低功耗蓝牙广告将信息从设备 A 发送到设备 B。 为了接收广播,我使用了 Windows UWP 的低功耗蓝牙库 (https://docs.microsoft.com/en-us/windows/uwp/devices-sensors/ble-beacon)

我收到的广告应该包含信息,但它们没有。我尝试使用 BluetoothLEAdvertisementDataSection 和 BluetoothLEManufacturerData。两者都不起作用。如果我收到广告,BluetoothLEAdvertisementDataSection 不包含我的信息,BluetoothLEManufacturerData 只是空的。

这是我收到的:

Address: 0x2462ABE13A7E; Name:CH1234; RSSI: -49 
ManufacturerDataLength: 0 
ManufacurerData: []  
DataSectionsLength: 4 
DataSections: [0x06] [0x43-48-31-32-33-34] [0x03] [0x20-00-40-00]

DataSections 是关于 DataType 0x01、DataType 0x09、DataType 0x0A 和 0x12

有没有办法获取原始广告信息?或者有什么其他方式可以获取这些信息?

我尝试在 Linux 上使用 bluepy 接收来自广告的信息,并且它正在工作。因此问题一定出在这个库中。

这是我的代码https://pastebin.com/rxcrjhpj 没有mutch。只是 bluetoothleadvertisementwatcher 并打印收到的信息。

////编辑 我修复了它。错误在于发送广播。 我使用 nkolban 的 ESP32 BLE 库,有两个功能。一种称为“BLEAdvertisementData.setManufacturerData”,另一种称为“BLEAdvertisementData.addData”。然而,通过使用“addData”,广播帧似乎以某种方式搞砸了。如果我只使用“setManufacturerData”而不是“addData”

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)