低端客制化,一份简单的键盘制作记录

低端客制化,一份简单的键盘制作记录

前言

前排提示这是个低端客制化,大家不要将其和那些上百元上千元的客制化套件相比。键盘制作考虑到金钱及时间的消耗,没有去打PCB,没有钢材定位板,没有轴间纸,没有铝阳极外壳,没有酷炫的键帽,只是一把为了方便工作而制作出来的键盘,很丑,极其粗糙不精致。

其实我不是很想把这个键盘的制作过程晒出来的,但是上次分享了自己制作红点机械键盘的过程,发现许多人对键盘的客制化看得很高深莫测。甚至有值友说制作个机械键盘需要焊接才能,布板技术,调试主控等各种高端词汇。

矩阵键盘作为单片机很简单的一个例子没那么复杂,在开源源码遍布的今天,不需要很高的学习成本就能自己制作出一把键盘。需要的只是靠谱的工具与耐心。例如我制作这把键盘,用的是Arduino刷QMK固件加飞线。没有高潮的制板技术,也没有主控调试,焊接也不算什么才能,只要不是手抖得人,练习两三次也能做到。为了科普一波,决定把制作键盘的记录晒出来了。

前期

键盘客制化其实是很泛的概念。定制轴体是客制化,给平衡杆换个龙豆上个润滑油也是客制化。有些人喜欢把这些事弄得很高深,弄各种名词溢价。市面上的优联套件质量参差不齐,我更倾向于买个洋垃圾欧版优联键盘拆主控,自己飞线改造,用过烙铁的人都知道飞线完全没有技巧可言。个人认为如果不是很强烈的特殊需求,例如特殊键位布局不建议入这个坑。

键盘布局

客制化键盘布局是第一步,布局常用的是keyboard-layout-editor,网址 。自己制作布局前,建议注册个账号,能保存布局方便以后修改。我的账号的是直接从Gayhub授权登陆的。



首先作为画图仔,整天要输入数据,常规键盘的数字键位在右边不顺手。所以布局了数字区在左边。虽然市面上的键盘例如IKBC也有这种左边数字区的布置,但是个人体验后感觉不合适。因为手部肌肉早已经熟悉了最左边的按键是ESC,SHIT,ALT,CTRL等等,所以在布局的时候我把这些按键保修了在最左边。其次大部分的60%配列键盘都没有Fn区,需要按组合键,制图时都极其不方便,所以我保留了Fn区域。我工作时就注意过,如果不是打汉字,根本用不到那个数字区,所以我把Fn区取代了数字区。其他的一些符号按键我也根据自己使用情况做出了微调。总体都是为了适应了自动桌,阿逗比和犀牛的快捷键。



仅仅一层是不够的,我还增加了第二层配列。第二层则是为了方便汉字输入而设定的。



可以注意到第二层配列不是标准的QWERTY排序。传闻当年的打字机反应不够快,码字快了会跟不上。打字机的设计者就创造出了打字最慢的QWERTY配列来防止打字机反应不过来。不少人发明过其他序列,增加打字速度。在网站patrick-wied有相关的参考。


QWRERTY



DVORAK


COLEMAK

上图是尝试用三种不同配列打中文段子时的按键频率图。我目标是尽量选一个手指动作跨度少的配列,能减轻手负担。当然如果文字输入量不多的人建议就别折腾这个了,安心用QWERTY配列把。

定位板

使用keyboard-layout-editor编排好键盘布局后,可以得到RAW Data。



将这些RAW Data复制到swillkb中就能自动生成定位轴板。swillkb的网站是builder.swillkb.com



swillkb可选择轴体类型,可选择卫星轴还是平衡杆。不懂英文的可以在builder-docs.swillkb.com中能看到图解教程与设定说明。操作都是傻瓜化的。



生成的轴板有SVG,DXF,EPS三种模型格式可选。我只是生成了个底板,没有螺丝孔,没有定位孔。因为自己会使用建模软件,所以后期会导入建模软件再细改。

轴体选择

轴体目前选择余地很多,除了樱桃轴还有很多国产轴,其中我比较偏爱凯华与佳达隆。手感上很接近樱桃轴。一些轴体,例如佳达隆的红轴比樱桃还顺手。不过说到原厂信仰还得选樱桃轴,樱桃官网www.cherry.cn/view/about有在售轴的相关资料。



选什么轴要看怎么用。例如我是在办公室使用的,使用段落轴声音大会影响别人,所以选择无段落轴。无段落轴中静音轴个体体验偏肉不喜。而红轴软,易误触。所以我更喜欢偏硬的黑轴。轴体可以去买全新的,也可以买垃圾轴板自己拆。

我对某宝商家所售的全新樱桃轴真假一直存疑,所以更偏向于自己拆轴。介意二手轴板的,建议自己买新键盘拆轴,全新ikbc104樱桃轴键盘价格在270-350元,算下来一颗轴才3块钱左右,比那些10元四颗的所谓全新樱桃轴靠谱。轴板、外壳、钢板、键帽等还能挂咸鱼卖掉回血。

主控

市面上DIY键盘主控很多,早期最多人用是一款叫monkey的主控板,适配了专门的软件改矩阵改配列,操作较傻瓜化。以前很多人用这个主控板修复坏了主控得洋垃圾樱桃键盘。价格偏贵。基本要40-50元一片。



Arduino流行后,很多人也喜欢用来制作矩阵键盘。有些人时自己写固件,也有些人是刷QMK固件。QMK官网是qmk.fm。QMK是基于TMK固件的一个改进,支持的板子主要有atmega328p,atmega32U4等等。



Arduino板子中最多人使用的是atmega32U4,价格便宜。国产板arduino micro pro价格不到20就有,其实不必纠结是否正版。Arduino是开源的,所以板子的源码网上都有,国产板子和原版授权的质量差不了多少。arduino micro pro缺点是最多提供18个IO接口,也就是做多能支持9 x 9 =81个按键。一般制作60%配列键盘也是够用得。我选用得也是这种板子,价格便宜。我自己定制的画图仔配列也刚好也是81个按键。



如果嫌弃接口不够,micro板可以满足需求。正版授权的板子,价格很贵。最多20个接口,除去CTRL、ALT、WIN和SHIFT这几个按键共用矩阵,20个接口也够制作一把104按键的键盘。



有多个接口需求的时候teensy2.0板子就不错。接口多,价格便宜,30元左右性价比极高。ergodox用的就是teensy板子。需注意2.0和1.0板子的主控不一样。



主流基本是这些,都有成熟软件。不需要调试,不需要写代码。改个矩阵键值就能用。一点难度也没有。有无线需求得话,可以加个Adafruit蓝牙HID板子,将有线键盘转变成蓝牙键盘



网上也有集成Adafruit与atmega32U4的板子,官方板子30美刀一片,国产板子价格在100软妹币左右。



廉价方案就是HC-05,某宝上25元左右。



至于优联主控,目前最多人推荐是K375s的主控,k230那些太老不建议。优联低延迟又节能,很受欢迎。最大遗憾是不能自定义矩阵,在自制键盘中优势不大。优联和蓝牙4.0都是2.4g无线信号,干扰上差不了多少。冬天开个电热桌都能干扰掉

固件

我选用的Arduino micro pro搭配QMK固件。这块Arduino micro pro是某宝12元加4块钱邮费买到的国产板。



网站kbfirmware.com能很简单配置固件。将keyboard-layout-editor生成的RAW Data输入网站,就能自动生成键盘矩阵和固件。



自动生成的矩阵要24个接口,micro pro板子上没有这么多接口,所以需要自己修改一下。



不需要什么高深电子知识理解这个矩阵,只要简单地知道板子上接口分为纵轴与横轴两组,纵轴的某个接口和横轴某个接口短触能触发特定按键。例如纵轴接口0与横轴接口0接触,电脑会触发ESC按键。选项中纵轴到横轴的选项是关乎二极管信号的,我二极管打算装在横轴上,所以默认的就行。



根据自己板子的特性,我将其改造成10x8的矩阵。其中CTRL键我决定是不改变的,所以两个键共用一个矩阵位。



接口改成对应自己板子的,我的是Atmega32U4。18个接口都给了键盘,指示灯是没法加的了。



不了解这些接口含义的,可以看看micro pro的接口图解。P开头那些就是kbfirmware设置中所对应的接口。



在这里我还配置了两层键列。





kbfirmware支持自定义宏,我没这个需要就不弄了。



配置完后可以保存配置json文件,方便下次修改。生成的HEX固件是不能再次修改的,所以切忌保存json。



安装QMK驱动,GAYHUB上面有下载地址。



接着是下载QMK TOOL BOX,GAYHUB上面也有。



接上板子,连接电脑。这种山寨arduino micro pro的micro usb接口很脆弱,插拔需要非常小心,最好是按着母头进行插拔。



驱动正常的话,QMK就能识别到arduino micro pro板子的存在。用镊子短触RST与GND接口,变成可以编程的模式。此时QMK会提示在串口com4连接到arduino板子,识别为Arduino Leonardo板子。



选取kbfirmware上配置好的HEX文件,点FLASH写入。一轮进度条,不到0.17秒,固件的配置就完成了。 电脑重新插入micro pro,就会识别到键盘。什么固件调试,不存在的。



制作

通过swillkb定制出定位板的cad文件,导入Rhino稍作修改,使用3d打印机草图模式打印出了这个板子。花了一个半小时打印,耗掉了200多克耗材。618时易生搞特价,1kg的黑色PLA两卷只要80元,叠加群里红包雨抢到的优惠券减10元后70元到手。板子是有厚度的,可以直接作为外壳使用。没有3d打印机的话,可以买亚力克板自己刻,嫌麻烦找某宝激光雕刻亚力克板大概要30-50元。实体店雕刻是一小时15元,板子自备,能省一点。在大学附近都有这些雕刻店铺。某宝也有店铺支持钢板雕刻定制,价格偏贵,不同店铺价格差异也很大。



安装轴体。这些樱桃黑轴是从一块诺普87键机械键盘上拆下来的,很多外设垃圾店都有这种车开。这些机械键盘基本是网吧退役下来的,自己做好消毒感觉没啥问题。




由于特殊的配列,不好买键帽。查过某宝上R3 1.5x的OEM高度无刻键帽要10元,这价钱还不如自己3d打印。对比一番后使用了扁平的圆形键帽,也就是那些所谓的复古朋克键帽。因为之前3d打印板子为了省材料省时间,精度不高,安装方形键帽可能会参差不齐,用圆形键帽刚好能弥补一下。圆形键帽是站上推送时买的,白菜价14.9元包邮。因为找不到合适键帽,有些按键的键帽是凑合用着先的。



键盘后面自己加了一些凹槽,方便隐藏布线。开始有想过打pcb,那样会省心些。但是单独一个板子打板费时又费力,还要等一个星期板子寄回来。画板子的时间都够我飞完线了,矩阵键盘又不复杂。



布线前先接二极管。某宝的电子元件店铺两毛五块钱包邮就能买到100个IN4148二极管。别买错贴片的,要买这种直插的。



这是从Fengz大神制作40%键盘学到的接法,很实用。自己用剪刀修建铁丝到合适长度,一个接一个连接起来。



不需要什么技术,只要耐心就行。大概花了一小时才能把全部二极管接好。



接好二极管后依据之前kbfirmware规划的键盘矩阵进行布线。



也没什么难度,就是细心别接错线就行了。



布完线就要上主控,先给主控接线。



再将主控上的线接到矩阵之中。



先接横轴再纵轴。考虑线长度,都是就近接点。



接上电脑测试,看看线有没有接错。



测试显示一切按键正常,全键触发,有些是符号没法正确识别。



现在线乱成一团,容易扯到弄断,所以要整理一下线材。



键盘厚度是1.2cm,再厚就要上掌托打字才舒服。为了不增加键盘厚度,3d打印了个外壳收纳主控。



原micro pro的接口不是很牢固,经不起多次插拔。所以特意买了个三毛钱包邮的micro usb测试板和一块钱包邮5个的micro usb公头。



将两者接线,作为原接口的一个延长线。



插电脑看线是否正常。



都正常后就开始装盒子里,小板用自攻螺丝加固。



接到主控板上。



引出板子上面的RST接口,打算安装个小微动作为reset按键,方便以后修改配列。



烙铁设定200度,将主控盒子与键盘粘在一起。



安装微动作为重置按键。



找来了之前2块钱包邮买的1mm亚克力板样品,作为底盖。



为了薄,直接烙铁沾上,不需要什么螺丝。



至此键盘就完成了。其中3d打印建模花了半小时,打印外壳花了一个半小时,安装花了两个多小时。不算很花费时间,一个晚上能完成的事情。



后记

键盘的设计是依据个人画图偏好制作而成,估计会有不了解的人吐槽配列奇葩不好用,求轻喷。算上3d打印的耗材,材料费不过五十元。如果算上工时费,按画图仔时薪也就40元,总花费百元不到。

整个流程下来没什么复杂的,不需要学编程,也不要学什么制版技术。目前就是键帽不好用,平平的没手感,一些按键与键帽上的图案不匹配。苟着先,有时间再慢慢用3d打印机精细化打印个定位板和一套ABS键帽。


by:qianseyue

本内容来源于@什么值得买SMZDM.COM

原文链接:kbfirmware使用教程——以制作小太刀TEX Kodachi键盘为例__什么值得买

发布于 2019-08-21