无法通知大数据

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
3个帖子/ 0新
最后一篇
utkarash.
离线
最后一次露面:2周前1年
加入:2019-01-18 06:36.
无法通知大数据

大家好,

我使用了BLE外围设备作为参考,其中我已经添加了一个特征,其中我想要交换大约180个字节的数据。

我能够向移动应用程序发送180字节的数据(在Andriod的iOS和NRF连接的BLE扫描仪上测试),

但是,当我想使用应用程序通知相同的数据时,我无法在一次拍摄中获得正确的数据,

这是固件我做了一个规定,当我收到来自BLE应用程序的某个命令时,固件应该回复这些180个字节的数据,

但是当我在应用程序中检查它时,我只获得一半的数据,然后当我重新调整数据时正确。

所以请帮助我SOO,我可以在一次拍摄中正确而完整地获得这种数据,

我有附加图像参考下面

请尽早帮助。

谢谢并恭祝安康

utkarash.

附件:
设备:
PM_DIALOG.
离线
最后一次露面:15小时29分钟前
职员
加入:2018-02-08 11:03
嗨utkarash,

嗨utkarash,

如果您从附加文件(“半数据接收”)检查第2页,您将看到您获得预期的20个字节。关于通知,设备可以通过MTU(最大传输单元)发送设备的字节数由MTU(最大传输单元)有限制,默认情况下,MTU是限制在包括ATT层开销的23个字节中,因此通知的有效载荷是20个字节。通过增加MTU大小意味着您可以在一个通知上发送更多字节,因此在您的情况下,最大传输单元应为您想要发送+ 3额外字节的字节数。您应该更改user_config.h头文件的user_gapm_conf结构的.max_mtu。在此之后,为了执行与中央的交换,您应该在具有连接时发送GattC_EXC_MTU_CMD(在USER_ON_CONNECTIONCE)中,580将执行交换。没有API实现了这一点,但您可以使用以下代码段:

静态void user_gattc_exc_mtu_cmd(uint8_t conidx)

{

struct gattc_exc_mtu_cmd * cmd = ke_msg_alloc(gattc_exc_mtu_cmd,

ke_build_id(task_gattc,conidx),task_app,

gattc_exc_mtu_cmd);

cmd-> req_type = gattc_mtu_exch;

ke_msg_send(cmd);

}

谢谢,PM_DIALOG.

utkarash.
离线
最后一次露面:2周前1年
加入:2019-01-18 06:36.
谢谢你的回复,

谢谢你的回复,

我会根据您的建议尝试更改。

谢谢并恭祝安康

utkarash.