嗨对话框,
我一直在展示我的应用程序中的行为,在没有问题的情况下我可以宣传,但我无法连接。
外设不断返回0x3E错误(无法建立连接)。这种行为只能修复
通过应用重置。
从调试中,我可以确认应用程序任务上的所有内容运行确定,GAPM任务正在运行,计时器正在运行..
但是,当我检查llc_task的状态(ke_state_get(llc_task))时,我得到0x0d status(llc_enc_wait_ltk),
我经常通过计时器检查它,它永远不会改变。
断开连接后发生此行为(可能是错误的断开连接),很少发生。我可以重现
这种行为:
1.连接到外围设备
2.使用app_easy_gap_disconnect()和同时使用App_easy_gap_disconnect()和强制断开Central
3.断开_FROM_ Central(在这种情况下,iPhone)
4.尝试再次连接
步骤2.和3.外围设备上的断开状态为0x16(从本地断开连接)或0x13(断开连接
来自遥控器)。当行为发生时,断开连接几乎肯定会显示0x13。我猜这一点
当几乎同时,当两侧有断开请求时,这是一个与时序相关的问题。
就像我说的那样,这很少发生,但我每次尝试几次后就可以重现它。
我的问题是,当LLC任务卡在LLC_ENC_WAIT_LTK状态时,它是正确的,假设连接是不可能的吗?
此外,您是否有任何建议以防止这种错误?
我正在使用Murata类型的Zy,包括DA14580。并使用SDK5的App_BareBone示例。
总的来说,我对对话框提供的示例感到满意,并在本网站上的支持。然而,
调试可能来自较低级别任务的错误仍然很难调试诸如此类的较低级别任务。
提前致谢
isa.
设备:
嗨meriororen,
在断开根据新SDK的某些通行下断开连接时,我们对LLC任务进行了一些问题。
此外,您对Task_Llc是对的,在该状态下,它不能自由处理连接,可能这可能导致您的历史问题。
谢谢mt_dialog.
嗨mt_dialog,
谢谢你的确认。
所以,当它发生时,我可以采取哪些步骤来恢复连接?通过执行GAPM_RESET来安全地重置下层是安全的吗?它应该带回
链接层也,对吗?由于我想避免整个平台重置。
谢谢
嗨meriororen,
据我所知,为了从这种错误的状态恢复,我们将SW重置为具有类似问题的客户,但我认为随着堆栈的重置,它将正常工作。
谢谢mt_dialog.
正确的。谢谢您的回答。什么时候估计新的SDK与修复程序来临?
嗨meriororen,
不幸的是,任何时候都没有Shedule释放在SDK上的更新。
谢谢mt_dialog.