SPS配置文件阻塞后,少数数据发送

⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子//www.wsdof.com/support.我们将在未来几天修复bug /优化搜索和标记。
3个帖子/ 0个新
最后发表
乔佛里COFFINEAU
离线
最后看到:3年1个月前
加入:2017-06-30 09:08
SPS配置文件阻塞后,少数数据发送

你好,

我将SPS配置文件添加到BLE示例ANCS,当按钮被按下时通过TX属性发送数据。我使用“sps_tx_data”函数发送数据。

连接到BLE的android设备上正确接收数据。但是在几次传输之后(不是固定的发送数量,也不依赖于发送的字节数),就不再使用“sps_tx_data”函数发送数据。函数"sps_tx_data"在发送数据之前返回,因为函数" get_tx_length "与0不同。

阻塞前的最后一次发送,发送0字节的tx完成回调被调用。这是由“handle_event_sent”函数中的错误引起的,“get_tx_length”函数返回错误,因为函数“generic_get_cmd”返回BLE_ERROR_NOT_FOUND。

我发现了一个临时的解决办法:在函数“sps_tx_data”中,我移动调用到函数“set_tx_length”之前的“send_tx_data”。

这似乎是时间问题,你有任何遗漏配置的线索,可能导致这样的错误?

关键词:
设备:
MT_dialog
离线
最后看到:4个月2个小时前
工作人员
加入:2015-06-08 34
嗨乔佛里COFFINEAU,

嗨乔佛里COFFINEAU,

我已经在这上面放了一张内部机票,团队正在检查这个问题。

由于MT_dialog

MT_dialog
离线
最后看到:4个月2个小时前
工作人员
加入:2015-06-08 34
嗨乔佛里COFFINEAU,

嗨乔佛里COFFINEAU,

set_tx_length和get_tx_length的目的是存储最后一个TX的长度,并作为一个指示TX正在进行的标志。如果您看到get_tx_length总是返回0,这意味着您发送数据的速度要比BLE速度快得多。因此,尝试降低您的数据速率或增加您的BLE吞吐量,应该不会发生问题。

您可以调整这两个API的位置,以积极地发送TX数据。那么堆栈就有重载的风险。

由于MT_dialog