【求助】【TuyaOS】BLE扫描问题

蓝牙 BLE设备、蓝牙 MESH设备、蓝牙 Beacon设备、Sub-G设备等


Post Reply
18249904570
Posts: 36

TuyaOS版本:V3.9.0
组件开发包:tuyaos-subdev-bt_3.9.0_nrf52832_ble_ble-common_1.0.3
问题:原本开发过程中,板子作为从机,在初始化时开启广播,手机作为主机可以扫描并连接板子。现在,我有个测试就是希望能让板子能扫描到其他蓝牙设备,比如手机,只是能扫描到就好,不用能进行连接。然后,我看到tuyaOS里有个tal_ble_scan_start接口和两个控制宏(TKL_BLUETOOTH_SUPPORT_SCAN和NRF_BLE_SCAN_ENABLED),我的做法是把程序初始化时的广播给关掉,打开那两个控制宏,然后在主函数中自己写个函数来直接调用tal_ble_scan_start接口,如下图:
Image
然后,log信息如下:
Image
不知道是不是这样实现的,而且从log来看,似乎看不出到底有没有成功。求指教!

User avatar
逻辑的院子
Posts: 290
Contact:

Re: 【求助】【TuyaOS】BLE扫描问题

仅开启 TKL_BLUETOOTH_SUPPORT_SCAN 宏就可以体验扫描功能
调试方法可以参考:https://developer.tuya.com/cn/docs/iot- ... B%E6%8F%8F

18249904570
Posts: 36

Re: 【求助】【TuyaOS】BLE扫描问题

逻辑的院子 2024年 May 31日 15:43

仅开启 TKL_BLUETOOTH_SUPPORT_SCAN 宏就可以体验扫描功能
调试方法可以参考:https://developer.tuya.com/cn/docs/iot- ... B%E6%8F%8F

好的,感谢回复。我测试了一下,还是有疑问,如下图:
Image
每秒返回的数据有两个,ADV+RSP和RSP,我不确定哪一个是代表所扫描到的设备数量。而且所返回的这两个数量,看起来是每秒都在一直增加的,这应该不是扫描到的设备数量吧?

User avatar
逻辑的院子
Posts: 290
Contact:

Re: 【求助】【TuyaOS】BLE扫描问题

是的,这就是扫描到的设备数量。
ADV代表的是广播包数据的数量。
RSP代表的是扫描响应包数据的数量。
如果这个例程能跑通,你按照教程找到对应的代码就可以模仿着实现你自己的扫描功能了。

18249904570
Posts: 36

Re: 【求助】【TuyaOS】BLE扫描问题

逻辑的院子 2024年 May 31日 16:12

是的,这就是扫描到的设备数量。
ADV代表的是广播包数据的数量。
RSP代表的是扫描响应包数据的数量。
如果这个例程能跑通,你按照教程找到对应的代码就可以模仿着实现你自己的扫描功能了。

我还是没有理解,就是返回的是广播数据包和扫描响应数据包的数量,每秒返回时数量都是在增加的,这如果能表示所扫描的设备数量的话,那好像是不太正常的吧?因为我现在周围没有那么多的蓝牙设备。

18249904570
Posts: 36

Re: 【求助】【TuyaOS】BLE扫描问题

逻辑的院子 2024年 May 31日 16:12

是的,这就是扫描到的设备数量。
ADV代表的是广播包数据的数量。
RSP代表的是扫描响应包数据的数量。
如果这个例程能跑通,你按照教程找到对应的代码就可以模仿着实现你自己的扫描功能了。

能继续答复我上一个回复吗?我这边的测试需要尽快确认。

User avatar
逻辑的院子
Posts: 290
Contact:

Re: 【求助】【TuyaOS】BLE扫描问题

18249904570 2024年 May 31日 16:31
逻辑的院子 2024年 May 31日 16:12

是的,这就是扫描到的设备数量。
ADV代表的是广播包数据的数量。
RSP代表的是扫描响应包数据的数量。
如果这个例程能跑通,你按照教程找到对应的代码就可以模仿着实现你自己的扫描功能了。

我还是没有理解,就是返回的是广播数据包和扫描响应数据包的数量,每秒返回时数量都是在增加的,这如果能表示所扫描的设备数量的话,那好像是不太正常的吧?因为我现在周围没有那么多的蓝牙设备。

数据包的数量和蓝牙设备的数量没有直接关系,建议您先了解下蓝牙数据包

18249904570
Posts: 36

Re: 【求助】【TuyaOS】BLE扫描问题

逻辑的院子 2024年 May 31日 18:13
18249904570 2024年 May 31日 16:31
逻辑的院子 2024年 May 31日 16:12

是的,这就是扫描到的设备数量。
ADV代表的是广播包数据的数量。
RSP代表的是扫描响应包数据的数量。
如果这个例程能跑通,你按照教程找到对应的代码就可以模仿着实现你自己的扫描功能了。

我还是没有理解,就是返回的是广播数据包和扫描响应数据包的数量,每秒返回时数量都是在增加的,这如果能表示所扫描的设备数量的话,那好像是不太正常的吧?因为我现在周围没有那么多的蓝牙设备。

数据包的数量和蓝牙设备的数量没有直接关系,建议您先了解下蓝牙数据包

好的,谢谢

Post Reply