嗨,对话,
我正在开发一个设备和一个应用程序,并使用dsp进行通信。
我们没有很多平板电脑可以检查,但是“联想TAB 4 10”(TB X704L)无法连接到我们的设备。大多数平板电脑和手机运行良好。
正在尝试调试它,我正在使用您的DSPS应用程序。
我看到连接已建立并立即断开。
当使用android的蓝牙设置时,试图连接设备的结果与错误弹出:“不能与BLE配对,因为一个错误的PIN或密钥”-我的设备配置是“只是工作”,没有认证,没有密钥,没有安全,所以这条消息是令人困惑的....
我做了一些研究:添加认证到设备没有改变行为和其他配置的改变,我尝试了任何改变。
有一次,与平板电脑成功连接,DSPS应用程序瞬间工作正常。我无法复制它。
我的问题:
您曾经遇到过这样的问题吗?
似乎设备和平板电脑之间的第一次“握手”失败了一些软件。我该去哪儿找,有什么建议吗?
谢谢,
拉兹
设备:
你好拉兹普:
能否清除平板电脑上外围设备的任何现有条目,然后重试。
否则,我们将需要一个蓝牙嗅探器日志。
谢谢,
tru对话框
嗨,TR。
请详细说明。
1.什么是“清除平板电脑上外设的任何现有条目”
2.如何获取蓝牙嗅探器日志?
拉兹
嗨razp:
1.什么是“清除平板电脑上外设的任何现有条目”
这应该在你的平板电脑的蓝牙设置下。我没有带Android设备,所以没有具体的Android设置信息。
2.如何获取蓝牙嗅探器日志?
[TR_DIALOG]使用商用蓝牙嗅探器,如Frontline或其他供应商的嗅探器。
谢谢,
tru对话框
嗨,TR,
谢谢你的帮助。
在这款平板电脑或任何其他Android平板电脑/手机中都没有这样的设置,但我做了“网络设置重置”。这并没有改变连接行为。
不幸的是,我们没有“商用蓝牙嗅探器”。
我可以从对话SDK中记录通信吗?
亲切的问候,
拉兹
如果您的平板电脑有可能与以前使用过的设备配对,请进入设置/连接/蓝牙,并清除配对(每个配对的设备右侧都应该显示一个齿轮图标。点击“取消配对”清除配对/键合)
/ MHv
它从未成功连接到设备上。
我正在尝试调试设备端的问题。看看事件序列,这就是我所看到的。
好
t:14M:1 GAPC连接要求
设备连接
t:13 m: 0
t:54M:3SPS\u服务器\u创建\u数据库\u CFM
t:54M:3SPS\u服务器\u创建\u数据库\u CFM
配置文件启用
t:14M:0GAPC\U CMP\U EVT
t:12 m:0 GATTC\U CMP\U EVT
t:12 m:0 GATTC\U CMP\U EVT
t: 14 m: 17 GAPC_PARAM_UPDATED_IND
t: 14 m: 17 GAPC_PARAM_UPDATED_IND
t: 14 m: 23 GAPC_ENCRYPT_REQ_IND
t: 14 m: 23 GAPC_ENCRYPT_REQ_IND
不好的
t:14M:1 GAPC连接要求
设备连接
t:13 m: 0
t:54M:3SPS\u服务器\u创建\u数据库\u CFM
t:54M:3SPS\u服务器\u创建\u数据库\u CFM
配置文件启用
t:14 m: 3
设备断开连接
t:14M:0GAPC\U CMP\U EVT
关于日志
t:任务数量m:消息数量
消息名称是我基于代码的解释。
这些日志对我来说还没有意义,也许对你会有意义。
我还不确定这是设备问题,还是平板电脑问题,或者是BLE协议的不同解释。
希望你能帮忙
拉兹
平板电脑显然出于某种原因决定断开连接。DSP将尝试协商更多可选的连接参数,平板电脑可能会因此受阻。我建议我们后退一步,让您构建并加载空的模板到您的目标上。该项目100%不依赖硬件,可以在任何具有DA14580的硬件上运行。请使用通用蓝牙应用程序(BlueLoupe或BLE扫描仪),并验证平板电脑是否连接并保持与目标的连接。
此外,请在平板电脑上提供Andriod版本。
/ MHv
你好,MHv,
通话很好,平板电脑可以连接并保持与目标的连接。
平板电脑上的安卓版本是7.1.1
下一步该怎么做?
我正在试图查明问题的通信RX/TX上的设备。在代码中哪个位置放置RX和TX通信的记录器比较好?
亲切的问候,
拉兹
让我们从删除启动连接时发生的MTU交换开始。在DSP的user_on_connection()回调函数中,尝试注释对user_gattc_exc_mtu_cmd()的函数调用。如果这“解决”了问题,我们将有一个很好的指示,下一步该去哪里寻找。
/ MHv
谢谢MHv
我按照建议做了,结果并不确定:成功的连接,但不是每次都是。
要获得成功的连接,我需要多次尝试(单击列表中的项目),大多数时候我都会遇到“连接失败”错误,偶尔我会成功。此外,我似乎需要在成功之间重置设备。
在android的蓝牙设置中,我不再出现错误弹出窗口:“由于PIN或密钥不正确,无法与BLE配对”
亲切的问候,
拉兹
这仍然是好数据。接下来,尝试对app_easy_gap_param_update_start()-相同函数的调用进行注释。这应该允许平板电脑在不进行任何协商的情况下完全指定连接参数。这也将极大地限制throghput,但它将告诉我们在哪里调整连接参数。
/ MHv
有了这个改变,将设备连接到平板电脑和传输数据就没有问题了。
拉兹
我们肯定会有进展的。。。
我建议我们(well you;o)做以下事情:
/ MHv
你好,MHv,
谢谢你的耐心。
第三点是有效的。我延迟了对用户_gattc_exc_mtu_cmd()和app_easy_gap_param_update_start()的调用10毫秒,平板电脑似乎一切正常。
你建议延迟1-2秒。10毫秒太短了吗?
你知道这一改变将如何影响大多数android / iOS设备吗?
亲切的问候,
拉兹
这是个好消息。我认为延迟的时间并不是那么重要。平板电脑似乎无法处理之前的活动时间,任何事件分离都会有所帮助。
Android和iOS都以神秘的方式工作,但它是安全的,你的代码更改已使DSPS更具包容性,将比原始代码更适用于更多设备。我将建议我们的应用程序团队,他们应该将您的修亚博国际官网平台网址复看作是未来任何DSPS更新中可能用到的内容。
/ MHv