嗨对话框,
I am developing a device and an app and using DSPS for communication.
All is working relatively well but our device do not connect to some Android Tablet, We do not have many tablets to check, but "Lenovo TAB 4 10" (TB X704L) fail to connect to our device. most tablets and phones are working well.
试图调试它我正在使用您的DSP应用程序。
我看到了建立和断开连接的连接。
when using the android's Bluetooth setting, trying to connect the device result with the error popup: "Couldn't pair with BLE because of an incorrect PIN or passkey" - My device configuration is "just work" no authentication, no passkey, no security so this message is puzzling....
I did some research: adding authentication to the device did not change the behavior and no other configuration change i tried made any change.
在一个实例中,与平板电脑共同连接,DSP应用程序瞬间工作正常。我无法重现它。
我的问题:
Have you ever encounter such issue?
it seems like the initial "handshake" between the device and the tablet fail some ware. any suggestion where should I look?
Thanks,
raz.
你好razp.:
您能否在平板电脑上清除任何现有的外围设备的条目,然后重试。
否则,我们将需要蓝牙嗅探器日志。
Thanks,
tr_dialog.
嗨tr。
Please elaborate.
1. What is "clear any existing entry for your peripheral on the tablet"
2.如何获得蓝牙嗅探器日志?
raz.
你好razp.:
1. What is "clear any existing entry for your peripheral on the tablet"
[TR_DIALOG] This should be somewhere under Bluetooth settings of your tablet. I don't have an Android device with me, so don't have information about specific Android settings.
2.如何获得蓝牙嗅探器日志?
[TR_DIALOG]通过使用商业蓝牙嗅探器,例如来自前线或其他供应商之一。
Thanks,
tr_dialog.
嗨,
谢谢你的帮助。
此平板电脑或任何其他Android平板电脑/电话中没有这样的设置,但我做了“网络设置重置”。这没有改变连接行为。
不幸的是,我们没有“商业蓝牙嗅探器”。
Can I log the communication from within the Dialog SDK?
Kind regards,
raz.
如果有机会,你的平板电脑是成对with the device from previous use, go to Settings/Connections/Bluetooth and clear the pairings (a gear icon should be displayed to the right of each paired device. Clear the pairing/bonding by clicking "Unpair")
/MHv
It never successfully connected to the device.
我正在尝试在设备端调试问题。看着活动序列这就是我所看到的。
Good
T:14米:1 GAPC_CONNECTION_REQ_INC
设备连接
t:13 m: 0 GAPM_CMP_EVT
T:54 M:3 SPS_SERVER_CREATE_DB_CFM
T:54 M:3 SPS_SERVER_CREATE_DB_CFM
Profile Enabled
T:14 M:0 GAPC_CMP_EVT
T:12 M:0 Gattc_cmp_evt
T:12 M:0 Gattc_cmp_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:14米:1 GAPC_CONNECTION_REQ_INC
设备连接
t:13 m: 0 GAPM_CMP_EVT
T:54 M:3 SPS_SERVER_CREATE_DB_CFM
T:54 M:3 SPS_SERVER_CREATE_DB_CFM
Profile Enabled
t:14 m: 3 GAPC_DISCONNECT_IND
Device disconnected
T:14 M:0 GAPC_CMP_EVT
关于日志
T:Task_Num M:消息数
消息名称是我基于代码的解释。
这些日志对我来说没有意义,也许会给你。
I am not yet convinced if this is a device issue, a tablet issue or maybe, a different interpretation of the BLE protocol.
希望你能提供帮助
raz.
平板电脑显然决定出于某种原因断开连接。DSP将尝试协商更多可选的连接参数,并且电脑可能会对此进行窒息。我建议我们逐步回来,您可以在目标上构建和加载extent_peripheral_template。该项目是100%硬件不可知论者,可以在具有DA14580的任何硬件上运行。请使用通用蓝牙应用程序(BlueLoupe或BLE扫描仪),并验证平板电脑连接并与目标连接。
此外,请在平板电脑上提供Andriod版本。
/MHv
嗨mhv,
良好的呼叫,平板电脑连接并保持与目标连接。
平板电脑上的Android版本为7.1.1
What should my next step be?
I am trying to pinpoint the issue looking at the communications RX/TX on the device. where would it be a good place in the code to place loggers for the RX and TX communications?
Kind regards,
raz.
让我们首先删除在启动连接时发生的MTU交换。尝试在DSP的user_on_connection()回调函数中对user_gattc_exc_mtu_cmd()进行注释函数调用。如果这个“修复”问题,我们将有很好的迹象表明在哪里看下一个。
/MHv
Thank you MHv
I did as suggested and the result are inconclusive: A successful connection was made, but not every time.
为了获得成功的连接,我需要多次尝试(点击列表中的项目)我获得“连接失败”错误,并且在我有成功的时候一次。此外,似乎我需要在成功之间重置设备。
在Android的蓝牙设置中,我不再收到错误弹出窗口:“由于PIN或Passkey不正确地与BLE配对”
Kind regards,
raz.
这仍然是良好的数据。接下来,尝试向App_easy_gap_param_update_start() - 相同函数的调用。这应该允许平板电脑完全决定没有任何协商的连接参数。这也会大大限制Throguppul,但它将向我们展示在哪里调整连接参数。
/MHv
With this change there is no problem to connect the device to the tablet and transfer data.
raz.
我们肯定会在这里达到某个地方......
I suggest that we (well you ;o) do the following:
/MHv
嗨mhv,
Thank you for your patient.
第3点正在工作。我将呼叫延迟到user_gattc_exc_mtu_cmd()和app_easy_gap_param_update_start()到10ms,似乎一切都与平板电脑正常工作。
你建议延迟1-2秒。10ms太短了吗?
Any idea how will this change affect the majority of android / iOS devices that are working fine with the original implementation?
Kind regards,
raz.
这是一个很棒的消息。我不认为延迟的持续时间是重要的。平板电脑似乎无法处理以前的活动时机,并且任何事件的分离都会有所帮助。
Both Android and iOS works in mysterious ways ;o), but it is safe to save that your code changes have made DSPS more inclusive and will work with more devices than the original code. I will suggest to our applications team that they look at your fix as something they should potentially roll in to any future DSPS updates.
/MHv