从零打造正交线性键盘:PCB设计、固件编程与3D打印全流程实践
1. 项目概述:为什么选择从零打造正交线性键盘?
几年前,当我第一次接触机械键盘时,就被其可定制化的魅力深深吸引。从更换键帽、轴体,到后来尝试客制化套件,我发现自己逐渐不满足于“组装”,而是想真正理解并创造一把完全属于自己的键盘。这个念头在2021年初被一个关于正交线性键盘的视频彻底点燃。传统键盘的按键是交错的,这种设计源于机械打字机时代,为了防止相邻按键的金属杆碰撞而不得不做出的妥协。然而,对于我们的手指来说,这种偏移真的必要吗?正交线性布局给出了否定的答案——它将所有按键严格排列在垂直和水平的网格中,消除了不必要的横向偏移。
这种布局带来的好处是直观的:你的手指移动路径更短、更直接。例如,在传统键盘上,你的左手食指需要负责“R”、“F”、“V”、“G”、“T”、“B”等多个偏移的键位,而在正交布局上,这些键基本都在同一垂直列上,减少了手指的侧向伸展和手腕的扭转。对于长时间码字或编程的人来说,这能显著降低疲劳感。更重要的是,从零开始打造这样一把键盘,意味着你需要亲自设计电路、绘制PCB、建模外壳,并编写固件。这不仅仅是一个外设制作项目,更是一次对嵌入式系统、工业设计、制造工艺的综合性实践。它迫使你跳出“用户”的角色,以“创造者”的视角去解决一连串真实存在的问题。
2. 核心设计思路:在理想与现实之间寻找平衡点
2.1 布局规划与工具选择
任何键盘项目的起点都是布局。我使用了 Keyboard Layout Editor (KLE) 这个在线工具。它非常直观,你可以通过拖拽来定义每个键位的大小(以“U”为单位,1U即一个标准字母键的宽度)和位置。我最终确定了一个13列x5行的网格布局,并特意将空格键设计为两个独立的2U键,分置在拇指自然落下的位置。这种分体空格的设计在正交键盘中很常见,它们可以被映射为空格、回车、Shift或任何你喜欢的层切换键,极大地提升了拇指的利用率。
注意: 在KLE中规划时,务必考虑键帽的兼容性。并非所有尺寸的键帽都容易购买,尤其是非标准的如2.25U、2.75U的Shift键。对于DIY项目,我建议尽量使用1U、1.5U、2U这些相对常见的尺寸,否则后期寻找键帽会非常痛苦。
确定了布局,下一步就是将其转化为可制造的零件。这里我用了 Keyboard CAD (KLE to CAD) 工具,它能将KLE的JSON数据直接生成一个包含所有键位开孔的底板(Plate)的DXF文件。这个底板是固定机械轴体的关键结构件。
2.2 原型验证:低成本试错的智慧
在投入时间和金钱进行PCB打样之前,做一个功能原型是极其明智的。我的原型方案非常“土法炼钢”:
- 3D打印底板:将上一步生成的DXF文件导入Fusion 360,添加固定螺丝孔和圆角,然后切片打印。由于打印机尺寸限制,我将底板分成了两半打印,后期用强力胶粘合。
- 手工飞线矩阵:将Gateron轴体卡在底板上,然后按照QMK固件官方的手工布线指南,用漆包线将65个按键连接成一个按键矩阵。原理很简单:将所有的开关按行和列组织,通过扫描行线、读取列线电平来判断哪个键被按下。这样,一个13x5的矩阵只需要18个GPIO引脚,而不是65个。
- 主控选择:我选择了 **Arduino Pro