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.

[参考译文] CC2650:HID 示例实验

Guru**** 2616675 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/770778/cc2650-hid-example-experiment

器件型号:CC2650

由于忙于其他项目、我提出的问题是不活动的、并且已关闭、很抱歉我迟到了回复。 这是代码,我想发送一个10数字数字数字,现在我想更改间隔,但是数据没有完全发送,我的手机只收到3个数字。

--

您对项目进行了哪些修改?
要获得更快的响应、应缩短连接间隔。
从器件延迟不应影响响应、因为这仅在从器件没有要发送的内容时应用、然后它可以跳过连接事件的从器件延迟数。
因此、如果有按键操作、从机应立即将其发送出去、这意味着主要因素是连接间隔。

更改从器件延迟不应影响实际字符串、您能否详细说明您的设置以便我在此重现它?

此致、

Christin

--

键盘响应速度太慢、如果我继续按按钮、几乎1秒就会发送字符、而2.5G 无线键盘可能会在3.6秒内发送100个字符。

如果我更改 slave_latency、速度将变得更快、但会有一串错误字符。 如何修改示例以作为真正的双键盘执行?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    e2e.ti.com/.../0676.hidemukbd.c

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Xiaobin、

    使用 hiddev.c 配置文件无法轻松/良好地实现所需的功能。

    问题在于:
    *如果您对连接参数不做任何其他操作,则在发送第一个报告之前,这些参数不会更新。 这可能意味着您在连接后的一段时间内使用慢速连接间隔。
    *您正在尝试一次发送至少22个 BLE 帧
    *堆栈将排队的数据包数量有限制。 (全局定义 MAX_NUM_PDU、默认为5)
    * hiddev.c 有自己的内部队列(长度为10或 HID_DEV_RPT_queue_LEN+1)、并将立即发送第一个密钥报告、然后再发送其余的报告。
    *它不使用"稍后"的合理定义、因此它会尝试去排队+立即发送下一个更少的队列。 问题在于没有检查堆栈是否接受了报告、因此它可能会丢弃大部分报告。

    除非您按顺序发送多次按键按压操作、否则您不能按顺序发送
    *通过使用计时器或连接事件通知 HCI 事件在 conn 事件之后通知您、以将报告空间移出
    *重写 hiddev.c 以处理对 HidDev_sendNoti 的失败调用(即、在栈接受按键通知进行传输之前、不会从内部队列中删除)

    我会将其标记为"TI 认为已解决"、因为此时此刻我无法再为您做任何事情了。

    此致、
    Aslak