请问一个BLE Central怎样连接多个Peripheral设备?

[复制链接]
 楼主| liuwanwei 发表于 2015-7-28 13:58 | 显示全部楼层 |阅读模式
请问一个BLE Central怎样连接多个Peripheral设备,想知道实现流程,谢谢。
 楼主| liuwanwei 发表于 2015-7-28 14:14 | 显示全部楼层
我使用的是CY8CKIT042板子,现在是可以搜索到多个设备,就是不知道要同时连接多个,要怎么处理。
dsll2010 发表于 2015-7-28 19:05 | 显示全部楼层
同一个时刻只能跟一个设备进行连接。这个是BLE的特性。
 楼主| liuwanwei 发表于 2015-7-28 20:36 | 显示全部楼层
但手册上有说可以支持3个器件同时连接呀,就是没有具体列程。
Larkinn 发表于 2015-8-24 21:02 | 显示全部楼层
dsll2010 发表于 2015-7-28 19:05
同一个时刻只能跟一个设备进行连接。这个是BLE的特性。

那防丢器是怎么做到的连接多个呢?
dsll2010 发表于 2015-8-26 09:24 | 显示全部楼层
liuwanwei 发表于 2015-7-28 20:36
但手册上有说可以支持3个器件同时连接呀,就是没有具体列程。

你说的是哪个手册?我看看
dsll2010 发表于 2015-8-26 09:25 | 显示全部楼层
Larkinn 发表于 2015-8-24 21:02
那防丢器是怎么做到的连接多个呢?

防丢器连多个是怎样的原理?介绍一下好吗
Larkinn 发表于 2015-8-26 15:03 | 显示全部楼层
dsll2010 发表于 2015-8-26 09:25
防丢器连多个是怎样的原理?介绍一下好吗

手机作为central的话,可以连接多个防丢器
dsll2010 发表于 2015-8-28 10:47 | 显示全部楼层
Larkinn 发表于 2015-8-26 15:03
手机作为central的话,可以连接多个防丢器

手机里的蓝牙跟BLE的是不一样的。手机里的是双模,PSoC BLE是单模的。
leijixiaomile 发表于 2015-9-10 18:40 | 显示全部楼层
不能同时连接,可以分时连接,比如200ms时间连接peripheral1,下一个200ms连接peripheral2 ……
 楼主| liuwanwei 发表于 2015-9-11 18:12 | 显示全部楼层
确实,用分时的办法可以实现一对多,但测试好像不太稳定,而且连接建立时间要几百毫秒。
 楼主| liuwanwei 发表于 2015-9-11 18:19 | 显示全部楼层
主要是在多次断开连接后,能连接上设备,但查找服务或者指定属性写会出现无响应的情况。
leijixiaomile 发表于 2015-9-13 09:35 | 显示全部楼层
liuwanwei 发表于 2015-9-11 18:19
主要是在多次断开连接后,能连接上设备,但查找服务或者指定属性写会出现无响应的情况。
...

能连上会出现查找服务无响应的情况?应该不会出现这样的情况,是不是连接上后你去查找服务的后,立马又断开了?
 楼主| liuwanwei 发表于 2015-9-18 15:04 | 显示全部楼层
是因为写属性Notifications Enable时一直是错误的返回而导致超时断开的,后面修改了蓝牙安全设置为无鉴权就好了。
 楼主| liuwanwei 发表于 2015-9-18 15:25 | 显示全部楼层
设置为无鉴权会导致新的问题,就是不能绑定设备,成功连接设备后,绑定列表记数器并不会增加,也就不能调用CyBle_StoreBondingData,里面还有个API函数:
CYBLE_API_RESULT_T CyBle_StoreAppData(uint8 * srcBuff, const uint8 destAddr[], uint32 buffLen, uint8 isForceWrite)
感觉这个函数保存了数据怎么读取出来呢,有人知道吗?
leijixiaomile 发表于 2015-9-18 17:50 | 显示全部楼层
直接用指针取目的地址就读出来了,如果需要bonding的话,就配置授权模式,bonding成功后,断开与连接就会很快了。Cy片子只支持绑定4个设备。有找代理商买片子么?
 楼主| liuwanwei 发表于 2015-9-27 14:31 | 显示全部楼层
有,用的022001芯片
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

38

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部