编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

致情怀——GH60 HHKB 配列混轴键盘制作

wxchong 2024-12-16 16:35:28 开源技术 50 ℃ 0 评论

作者:影月无霜

之前作为练手,已经做了一把Poker配列的键盘。Poker作为GH60的默认配列,按键排布同87、104键盘配列,键帽好找,键位无需适应,作为入门,优势明显。

Diao丝的Poker——GH60 Gateron红黑混轴混灯键盘制作

熟悉了键盘的制作过程之后,接下来就是真正发挥GH60优势的时候了:让我们来整一把非常规配列的键盘吧!GH60支持的配列种类非常之多,基本是基于几个默认配列的变种:

这次我要制作的是HHKB配列,HHKB配列一向被称为程序员神器,不过个人不写代码纯粹是好奇而已,但是HHKB高昂的售价,和未知的手感,让我迟迟不敢出手,现在发现GH60居然也支持这种配列,那么何不试试看呢。

一、准备键帽

GH60制作中,遇到最大的问题是,你能做出配列,但是找不到合适的键帽,所以在开始动手之前,一定要保证能够找到合适的键帽,否则你做出了一把狂拽酷帅屌炸天的配列之后,发现根本找不到合适的键帽,那就悲剧了。所以先来了解下,做一把HHKB配列键盘,需要增补哪些键帽。

这个是我之前制作的Poker配列图:

在开始讲解两个配列不同之前,先让我们来补充一下键位大小的知识

以数字和字母键帽尺寸为标准,记为1X,那么我们来分析下几个大键位的尺寸,先从Poker开始:由图中我们可以看到,左下角和右下角的3个和4个键,都是等长的,且长度较字母区长,但是并没有长超过一半,这就是我们常说的1.25x。再来看左侧的Shift,我们知道了下面的Ctrl和Win是1.25x,那2个1.25x加起来就是2.5x,左侧Shift的长度比这要短一点,所以是2.25x。右侧的Shift与下面的Menu和Ctrl比较要长一点,所以是2.75x。这样我们可以用Shift那一行计算出正行的长度是15x,由计算我们可以得出空格的长度是6.25x。这样其他键位的大小也就可以通计算得知了:

再来看HHKB配列,变化如下:

右上角的Backspace分裂为两个1X按键

右Shift分裂为1.75X和1X两个按键

取消了最后一排的左右Ctrl

空格键尺寸变为7X

Alt按键变为1X

系统键变为1.5X。

所以你需要在Poker配列的基础上增补这样几个键帽:

7X空格键盘 1个

1.75X 按键一个R1高度 1个

1.5X 按键R1高度 2个

1X 按键R1高度 3个

1X 按键R4高度 1个

为了配合以上键帽,你还需要几个卫星轴:

2X卫星轴从原来的4个缩减为2个(分别是左侧Shift和Enter)

空格键从6.25X卫星轴变为7X卫星轴1个

结果万能的大淘宝,居然有HHKB配列的机械键盘键帽出售,而且正刻和侧刻都参考原版,PBT材质,当然价格也不便宜60个键帽要130大洋。如果你寻求更加低廉的价格,可以选择淘宝的7键/10键盘/13键增补键帽,然后找104键盘上的其他键帽搞定1X尺寸的那几个。

HHKB键盘键帽 客制化 机械键盘键帽_淘宝搜索

增补键帽_淘宝搜索

搞定了键帽,我们就可以开始定义按键,刷配列了。

二、制作HHKB配列

由于淘宝上出售的GH60 PCB默认都是Poker配列的,所以要制作一把HHKB配列键盘,你必须改掉PCB中默认的按键设置,也就是——刷配列

刷配列需要以下两个网站:

链接用于制作配列

链接用于生成配列写入文件

先访问第一个网站来制作配列图,打开之后就是默认的Poker配列:

接下来就是在原有基础上进行改进,制作HHKB的配列了,先上配列图

首先删掉左右两个Ctrl、右侧shift和backspace,选中后直接del就可以了

然后就是增加那些不一样的按键,使用左上角的add key按钮,可以增加一个1X按钮,用鼠标点选之后,可以用方向键控制移动到对应位置。下面的定义内容,我用文字做了解释,我们可以给键盘做上刻印,来确定按键的字符,至于左中右的位置,纯粹看个人喜好。一般默认F0层是左上刻印,按住shift是下方刻印,侧刻刻印的按键可以通过FN按键来开启F1层来使用,理论上,GH60键盘可以有很多层,定义N种键位,但是一般人应该记不住吧。所以常规的一个按键可以有两个正刻刻印,和一个侧刻刻印。同时我们可以调整按键宽度,根据我上面的计算结果进行调整即可,高度不用修改。

等全部按键都完成之后,你可以以图片的形式保按键样式,点击右上方的Download,选择你需要的图片格式即可。如果你注册并登陆了,也可以直接保存到个人档案里。

接下来我们要用制作完成的配列去转换成可刷写的配列文件,首先点开</> Raw data标签页,复制下代码,强烈建议将这段代码用TXT文件保存下来。

我的代码如下:

["EscnnnnPOWER","!n1nnnF1","@n2nnnF2","#n3nnnF3","$n4nnnF4","%n5nnnF5","^n6nnnF6","&n7nnnF7","*n8nnnF8","(n9nnnF9",")n0nnnF10","_n-nnnF11","+n=nnnF12","|nnnnins","~n`nnndel"],

[{w:1.5},"TabnnnnCAPS","Q","W","E","R","T","Y","U","Innnnpsc","OnnnnScrLk",{a:0},"Pnnnnpusnbrk",{a:4},"{n[nnn↑","}n]",{w:1.5},"BS"],

[{w:1.75},"Ctrl","AnnnnVol_Dn","SnnnnVol_Up","DnnnnMute","FnnnnEject","G","Hnnnn*","Jnnnn/","KnnnnHome","LnnnnPgUp",":n;nnn←",""n'nnn→",{w:2.25},"Return"],

[{w:2.25},"Shift","Z","X","Cnnnnfn1","Vnnnnfn2","Bnnnnfn3","Nnnnn+","Mnnnn-","<n,nnnend",">n.nnnPgDn","?n/nnn↓",{w:1.75},"RShift","fn0"],

[{x:1.5},"opt",{w:1.5},"Meta",{w:7},"spc",{w:1.5},"rMetannnnStop","Ropt"]

你可以逆向复制到</> Raw data标签页内,直接生成我的配列图,在我的配列基础上修改。复制之后,我们就可以去生成配列刷写文件了,先打开 链接

首先我们要选择合适的键盘PCB类型,打开键盘标签,一般淘宝买的PCB基本是GH60(RveCHN)或者GH60(RveA/B/C),具体类型请询问出售的商家。

然后把你刚刚复制的代码放到层里,这里我们选简单就可以了,如果是非常复杂的多层配列,可以选择普通,然后定义层数,并且分层贴入代码。如果贴入的代码无误(没有按键重复设置,或者存在不可定义的按键),那么框框会显示成绿色,否则就是红色,并且会提示你存在冲突的按键。下面Fn层定义,一般保持默认就可以了,LED里面也无需做修改,也保持默认就可以了,除非你的PCB板存在独立大小写灯,那么需要在背光中设置成去掉背光,勾选反向。

最后,全部搞定之后,选择下载eep文件。至此,配列设定全部完成,接下来就是把配列设定刷入你的PCB了。

三、刷入配列

GH60刷入配列需要用到以下软件:

tkg-toolkit-master点击下载,解压后可以得到两个文件:

然后把PCB连接电脑,按下背面的配列刷写按钮,电脑会发现新硬件,然后去硬件管理器里手动为PCB主控添加驱动,把驱动目录指向上面的driver文件夹中,等待安装完成就可以了。

之后就是安装刷写配列的文件,打开tkg-toolkit-master文件夹,找到Windows文件夹中的setup.bat批处理文件。

双击打开小黑屋:

根据你的PCB类型选择对应的数值,我的是Satan的板子,所以我选择GH60 RevCHN。回车后出现下图,直接回车即可,无需做任何选择。

然后出现下图,默认数字为1,直接回车即可。

设置完成,直接按任意键退出小黑屋。

接着就可以把eep文件刷入你的PCB板了,用鼠标左键按住eep文件图标不放,一直拖动到上面那个windows文件夹里的reflash.bat上,再次打开小黑屋。

在小黑屋里选择Y,按下回车,等待刷入完成。

之后就跟我之前那篇文章里的制作方法一样了,先测试PCB板上各键位,然后上轴...

四、说说外壳

其实GH60的HHKB配列是有个类似的定制半成品的,在售的成套产品叫Kmac happy,但是那高大上的价格,还不如直接买个HHKB。所以一般都是用Poker来制作HHKB配列键盘,配上增补键帽,但是这样的键盘有个问题,左右Ctrl取消之后,会有两个孔留在那里,一来不安全,二来也丑。一般通用的解决方法是使用两个叫做屏蔽滑块的东西,如图:

但是我找遍了淘宝都没找到在售的成品,如果有值友有卖的话,也可以卖几个给我。还有土豪的做法,就是定制一个HHKB配列的阳极氧化铝外壳,但是这个外壳对我来说实在是太贵了。结果在淘宝进行地毯式搜寻之后,我找到了一个店家正在定制一个外壳,当时连张图都没有,但是跟店主攀谈之下,我觉得店主也是个可信之人,于是交了预订款,等了一周左右收到了外壳。

外壳上下底面为玻璃纤维板,上板上面开了孔,类似于钢板的作用,所以在板子上只要上三脚轴体即可,中间夹了一层磨砂乳壳中框,类似三明治结构。

我依然为键盘采用了混轴,并且换了透明轴盖。

最后是毫无营养的晒图时间:

五、后记

其实我并不是一个码农,当初曾经怀揣过做码农的愿景,但是最终没有走上码农的道路,所以HHKB配列对于我来说,更多的是一种情怀,是对曾经梦想的一个交代。最终的成品,从我个人的审美来说,也只是堪堪,比不上HHKB本尊的美,但是这样一把键盘的制作只需要HHKB pro一半的价格,还能体验不同机械轴体的感觉。我想把这把键盘的制作方法介绍给SMZDM的码农们,因为你们正做着我曾经想做却又未能如愿的工作。

对于喜欢类似配列,但是又不想重新适应按键排布的朋友,我也为你们准备不同的配列,这个配列可以直接安装到Poker的外壳之中,成本更加低廉。

这个配列的键盘,可以直接刷成HHKB配列,又可以改为类Poker配列,外壳也更加好找,价格低廉。代码如下:

["EscnnnnPOWER","!n1nnnF1","@n2nnnF2","#n3nnnF3","$n4nnnF4","%n5nnnF5","^n6nnnF6","&n7nnnF7","*n8nnnF8","(n9nnnF9",")n0nnnF10","_n-nnnF11","+n=nnnF12","|nnnnins","~n`nnndel"],

[{w:1.5},"Tab","Q","W","E","R","T","Y","U","Innnnpsc","OnnnnScrLk",{a:0},"Pnnnnpusnbrk",{a:4},"{n[nnn↑","}n]",{w:1.5},"BS"],

[{w:1.75},"CAPS","AnnnnVol_Dn","SnnnnVol_Up","DnnnnMute","FnnnnEject","G","Hnnnn*","Jnnnn/","KnnnnHome","LnnnnPgUp",":n;nnn←",""n'nnn→",{w:2.25},"Return"],

[{w:2.25},"Shift","Z","X","Cnnnnfn1","Vnnnnfn2","Bnnnnfn3","Nnnnn+","Mnnnn-","<n,nnnend",">n.nnnPgDn","?n/nnn↓",{w:1.75},"RShift","fn0"],

[{w:1.5},"Ctrl","opt",{w:1.5},"Meta",{w:7},"spc",{w:1.5},"rMetannnnStop","Ropt",{w:1.5},"rCtrl"]

最后致情怀!

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表