在建立连接的时候,GAPCentralRole_EstablishLink函数总是返回bleAlreadyInRequestedMode 0x11;是什么情况!求解
Yan:
geen,
你有没有重复发送建立连接请求呢?
这是重复发送以后收到的事件。
geen jin:
回复 Yan:
有的,我是主设备轮流去连接多个从设备,如从设备编号1、2、3,主设备首先连接1, 5秒后断开1去连接2,接着断开2连接3;然后又返回去连接1;现在问题是:如果我把其中一个从设备断电,如3;这时候轮询就停止了,直到我把设备3重新上电,轮询才会又继续下去;好像连接事件就等待在那里一样;我想要的是如果设备3断电了,主设备就直接跳过设备3,再去连接1,2,如此往复。
geen jin:
回复 Yan:
设置了一个周期性连接事件;如果因某个从设备断电,本次连接没有成功,有什么方法可以取消本次已发送的连接请求;从而不影响下一次的建立连接请求
sun sun2:
回复 geen jin:
是不是会一直陷在连接的状态?退不出来?只能靠你自己取消连接了,根据自己定义的timeout来,你试试可不可以。
geen jin:
回复 sun sun2:
没有陷在连接状态,跟上一个设备已经断开连接了,再去连接连接下一个设备,如果下一个设备正常,则轮询继续,若下一设备断电,则轮询停止,断电那个设备之后的从设备也都不能连接,直到那个设备从新上电;轮询又继续下去
geen jin:
回复 sun sun2:
怎么样取消连接,没有找到取消连接的函数,只有断开连接的函数,要如何定义自己的timeout ?
Yan:
回复 geen jin:
geen,
当然可以cancel 连接请求。用GAPCentralRole_TerminateLink(). ,直接cancel 请求。
geen jin:
回复 Yan:
GAPCentralRole_TerminateLink()函数是在已经建立连接的情况下断开连接吧,能终止已经发送建立连接请求,但是还没有建立连接的的链接吗?
geen jin:
回复 geen jin:
我试过了,如果用GAPCentralRole_TerminateLink()去取消还没连接成功的连接是不行的,返回值为bleIncorrectMode: No Link to terminate
sun sun2:
回复 geen jin:
问题解决了吗?怎么解决的?