基于AC6351D2做无线键盘

基于AC6351D2做无线键盘

摘要

前面一篇文章,我介绍了鼠标,想着也把键盘的也做一下介绍,总而言之,键鼠类的产品难的不是功能,难得是稳定性,是低功耗,而这些都需要大量的测试流程才能把他打造好。键盘我讲杰理sdk上三个比较重要的点,这个也需要对于ellisys的使用以及对ble以及edr的一些参数和链路有一定的理解才能debug。

键盘Num,Caps,Scrlk灯,拿Caps灯做例子

1.其实获取当前电脑Caps的状态,可以设备端去轮询总线获取,还可以主机下发来得到,而杰理的只封了个回调函数,很显然就是属于后者,其余的都看不到了,这就是太封闭了,然后我遇到的问题是,在多个设备端切换的时候,有概率性第一次获取不到Caps灯的状态。

2.聚焦问题点后,我没有怀疑主机行为,因为他连罗技键盘都是好的,但还是用ellisys抓取了一下,实际在出现这种问题时,是主机没有下发状态过来,那就不存在主机下发了,从机键盘没有收到这种现象。

3.开始分析为什么主机不下发,想到不下发要么我不支持下发的属性,要么就是可以下发,但是主机认为没有达到他下发的时候,后面经过我的验证,是属于后者,是链路在切换的时候没有断干净导致,他不认为他是重新连接新设备了,所以在切换的时候,首先断掉所有链路,再去做切换。

功耗大问题

1测试的时候,我们会一直检测各个时间段电流的变化,检测到有一个现象,在主机进行息屏后,会时不时的来一帧同步灯的指令,并且指令还会有错误指令出现(这个自己逻辑处理一下就可以),每一次的通讯都会拉高功耗,而未息屏的时候却是正常。那又聚焦到了,上图中的回调,看到就这么点东西我又想吐槽杰理了,明明知道有些地方不足,确硬要把一些东西给封起来,音频那边封的更狠。封起来了没法动怎么办,又要把功耗降下来,那就去操作sniff的时间来做到这点,直接上图。

相关推荐
李少兄20 小时前
Windows 键盘快捷键指南
windows·计算机外设·快捷键
思码梁田21 小时前
CSS cursor 属性全解析:从“小手“开始,玩转鼠标光标
前端·css·计算机外设·cursor·pointer
禾川兴科技3 天前
支持的switch2的便携屏方案,LDR6021QPD协议芯片加MT9700FFFUBG显示器驱动芯片
计算机外设
●VON3 天前
鸿蒙 PC Markdown 编辑器快速打开:模糊排序、最近权重与纯键盘路径
华为·编辑器·计算机外设·harmonyos·鸿蒙
编程圈子6 天前
操作系统学习14 IDT + PIC + 键盘中断
android·学习·计算机外设
Saniffer_SH8 天前
NAND技术(二):从 Channel、Die/LUN、P/E Cycle 到 LDPC,一次讲透 NAND 里那些最容易误解的概念
人工智能·驱动开发·嵌入式硬件·测试工具·fpga开发·计算机外设·压力测试
遇见小修修8 天前
⚠键盘失灵?5 步自查,不用花钱换新键盘
运维·服务器·数据库·计算机外设·电脑·负载均衡
unityのkiven8 天前
Unity UGUI 中 EventTrigger 导致 ScrollRect 鼠标滚轮失效的问题分析与解决
unity·计算机外设·游戏引擎
解局易否结局9 天前
鸿蒙 PC 应用开发实战:多显示器、显示密度与跨屏适配
华为·计算机外设·harmonyos
FrameNotWork10 天前
HarmonyOS 6.0 输入法与键盘避让 — 聊天页面底部输入栏被键盘挡住的绝望
华为·计算机外设·harmonyos