您好!
是否有人成功地将数据长度 extenson 用于 Android 手机?
哪款 Android 智能手机支持数据长度扩展?
什么是最好的监听器?
谢谢、
MF
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
我有一部 Nexus P6智能手机和一部示例笔记5智能手机。
我能够在监听器中看到 LL_Request_LEN 和响应链路层命令。
返回的值与 e2e.ti.com/.../542688中描述的值完全相同
cc2640 request LL_request_LEN : maxRxOctet of 251 & maxTxOctets of 251
Nexus P6 (或三星注释5) LL_LENGTH_RSP: maxRxOctet 为251、maxTxOctets 为27
我需要将超过27字节的数据包从 cc2640外设发送到 Android 智能手机。
我的测试基于吞吐量简单外设项目。
我成功地向 Android 手机发送了20字节通知、数据包也可以在监听器中看到。
当我将字节数增加到30时 、状态= GATT_Notification (connectionHandle、&Noti、GATT_NO_authentication);
始终返回0x1b;(监听器中不显示数据包)
发送 setDataLenCmd 后、似乎我没有得到 ATT_MTU_updated_event 回调(尽管我在监听器日志中看到了 Nexus P6响应)
我还尝试通过特征5读取数据;在定义小于20字节的阵列大小时,我会将数据输入到 nexus P6中;但是,当阵列大小为30字节时,我不会得到它。
问题可能出在哪呢?
谢谢、
MF
尊敬的 MF:
协商的 DLE TX 和 RX 大小与 ATT MTU 大小无关、因此必须单独配置它们。
在 Android 中、您的客户端应用程序必须请求更改 ATT MTU 大小以使用大于默认23的值。 请参阅此 Stackoverflow 文章。
此外、您不应尝试发送超过最大 ATT MTU 大小字节(根据所选过程减少)。 SDK 中的示例显示了如何使用 "len"参数中的值请求最大允许大小。
祝你一切顺利