V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
kevinroot
V2EX  ›  问与答

GH60 撸了把青轴 HHKB

  •  1
     
  •   kevinroot · 2016-01-19 18:21:00 +08:00 · 4467 次点击
    这是一个创建于 3261 天前的主题,其中的信息可能已经有所发展或是发生改变。

    GH60_light_full

    一直是一把 HHKB Pro2 在公司使用,回家的话就用 mpb 自带的键盘。
    期间也用过青轴 minila air 、 poker2 ,但是 minila air 右边 shift 比较蛋疼,而且空格键很短,左边经常按不到,虽然左边的 fn 是可以设置成空格的,但是按着还是挺不爽的; poker2 没有用很长时间,但是用过了 hhkb 之后就受不鸟其他键位了。。。所以一直都是用 mbp 的自带薄膜键盘,用 Karabiner 映射了一些键,比如 | 改成 delete 。

    突发奇想

    要是能有一把 HHKB 键位的青轴键盘就好了,因为之前用过几把机械键盘都是青轴的,还是对青轴比较情有独钟一些。后来也去试过 minila air 和 cherry 的红轴,感觉和 hhkb pro2 手感其实相差不多,所以还是决定组一个青轴的区别与 hhkb pro2 的手感。

    搜索材料

    首先了解了一下板子, santa 的电路板我看了下,是可以组成 hhkb 键位的。于是当晚拉着客服问到了两点多,就下单了。
    清单如下:

    1. santa pcb 板子
    2. 定位板 /钢板
    3. 卫星轴 4 个(空格, shift * 2 , enter , control/caps lock )
    4. cherry 青轴 67 个(老板给多发了几个,因为青轴可能有些坏轴)
    5. 塑料外壳
    6. PBT 键帽 117 键的,键位刚好组 hhkb 的键位
    7. 轴间纸一张
    8. 透明轴盖 65 个
    9. 热插拔针脚 130 个(一个键帽两个脚)
    

    组装步骤

    组装卫星轴

    有防呆设计,直接装上就好了,卡进的时候可能要稍稍用点力,没事不会弄坏,黑色的塑料还是有一些韧性的。组装好卫星轴后安装到 PCB 板上,有卡扣按上就好了。

    开轴改热插拔,上轴间纸

    开轴盖其实很简单,用镊子就可以,我刚开始在公司没有镊子,找了两个牙签开的也挺轻松。轴盖打开之后把两个热插拔针脚插入轴上方 LED 针脚处,然后贴上轴间纸,再盖上透明轴盖。这步挺费工夫的,我搞了两三个小时才搞定。其实吧,热插拔和轴间纸都没有必要装;反正 LED 便宜,真的要幻灯把 LED 换了就是。轴间纸也是玄学,根本不能防尘和影响手感。透明轴盖除了装 B 也没有什么乱用。

    固定轴到 PCB 和定位板

    层次结构是这样的: PCB ,轴,定位板。这步有点技巧,把四周的轴先安装好,然后再安装中间的轴。不要先把轴都卡好在定位板上,这样你会发现怎么都没法插到 PCB 板上了,因为 PCB 板上的 LED 孔很小,很难对上。而且现在是一个轴 4 个脚,你要一下将 60 * 4 ,就是 240 个脚同时对准插在 PCB 板上,难度可想而知。所以如果你觉得定位板对手感影响不大的话,就可以省掉定位板,这样安装轴的难度会小很多。安装轴的时候注意不要将轴上的针脚弄歪,这样针脚容易折掉,没有插到 PCB 上对应的空里,需要拔下来重新插过。按好再拔下来难度很大。
    要注意的是,拿你的键帽笔画一些,轴不要按错位置,不然后面你会发现怎么键帽相互打架,就悲剧了。这个事情在撸主身上就发生了,坐下的三个键,我往右边偏了一格,结果三个键全都拆下来重新按,重新焊;还好有吸枪,还是拆下来了。反正就是拆比装难了,一定不要按错了。

    焊接

    用橡皮筋固定 PCB ,轴和定位板,然后就上焊锡、松香电烙铁焊吧。最好弄个可调温的电烙铁,温度设置在 400 度比较合适。我是焊一排然后插到电脑上测试一排,如果有问题可以及时修正。 240 多个脚,加油焊吧,其实焊接还是挺快的,最费时费力的还是开轴改热插拔和贴轴间纸那步,所以我强烈建议不用改热插拔和贴轴间纸。
    GH60_weld_1
    GH60_weld_2

    测试键位

    再测试一下所有键是否有用,右上角的键因为没有刷配系的原因可能是么有用的,没有关系你用万用表蜂鸣档试下,按键按下的时候能通就没有问题。一会刷了配系就好了。

    安装热插拔 LED

    LED 灯脚需要剪一下,剪了之后插进热插拔的孔就好,注意下正负极。默认是 fn + v ,打开键盘灯,在打开键盘灯的情况下安装灯吧,安上点亮就好了,正负极安反也没关系,不会烧掉的。换下正负极就是了。
    LED 长角的是正极,但是你剪短之后两个脚是一样长的,怎么区分正负极呢,你看 LED 等里面那坨东西有两部分组成,比较小一点的那个是正极。全按上之后就都亮了,恩,完美。
    GH60_LED

    安装外壳

    把焊好的 PCB 安装到外壳上,有 6 颗螺丝,拧上就好了。

    安装键帽

    键帽高度从下到上是 R1 , R1 , R2 , R3 , R4 。一个个按上就是了,有卫星轴的对准一下卫星轴。那么硬件部分就组装好了。

    刷配系 /固件

    mac 上据我所知只能刷 hex ,有两个tmk_keyboardtmk_keyboard_custom。记得是刷tmk_keyboard_custom,不要去刷 tmk_keyboard 那个,刷了 tmk_keyboard 之后可能导致键盘没有反应,我也不知道为什么。

    //mac 上需要安装的编译环境
    brew install Caskroom/cask/crosspack-avr
    brew install gcc-avr
    brew install dfu-programmer
    brew install gcc

    再说一遍,请用tmk_keyboard_custom
    在 keyboard/gh60/config.h 中定义宏 #define GH60_REV_CHN 1
    make KEYMAP=hhkb dfu
    但是你会发现有些报错,我一个个解决了,但是刷好之后,键盘并不能达到我想要的配系。所以我还是回家用 windows 的机器来刷 epp 文件,这个是图形化的工具比较简单。
    项目地址:tkg-toolkit
    图形化界面网址:
    keyboard-layout-editor
    tkg
    编辑好键位之后复制 raw-data 的 json 数据,粘贴的 tkg 网站里面,生成 epp 。
    然后设置 tkg-toolkit/windows/setup.bat 来安装设置,用 tkg-toolkit/windows/reflash.bat 来刷固件,刷之前按一下键盘背后的按钮进入 dfu 模式。如果有问题,记得装键盘驱动。

    成品图

    GH60_light_gray
    GH60_light_part
    GH60_no_light

    参考链接:

    文章链接

    MX Blue HHKB GH60

    14 条回复    2016-06-20 20:09:48 +08:00
    ooxxcc
        1
    ooxxcc  
       2016-01-19 18:28:39 +08:00
    ……无刻键帽搞啥灯啊……开了灯看啥……

    然后没必要限定在 HHKB 配列,我试了一圈还是觉得 spaceFN 配列顺手,现在魔改了一番炒鸡顺手
    ooxxcc
        2
    ooxxcc  
       2016-01-19 18:31:46 +08:00
    tmk_keyboard 和 custom 的关系是,国内的一些版本改了引脚定义……我买了那个到手才发现是 AMJ60 版本,拿万用表量了一圈改了代码才跑起来的

    还有刷 tmk_keyboard 务必记得清空 eep flash ,否则会有奇怪的故障,例如默认第六层之类的……
    kevinroot
        3
    kevinroot  
    OP
       2016-01-19 21:10:40 +08:00
    @ooxxcc 看光 23333 ,其实灯也并没有什么乱用。怎么清空 eep flash 呢?
    ooxxcc
        4
    ooxxcc  
       2016-01-20 09:39:24 +08:00
    @kevinroot

    ```dfu-programmer atmega32u4 read --eeprom out```
    按照格式修改 (应该每一行是 地址+数据+校验,第一行按照后面几行的东西改地址和校验就好)
    ```dfu-programmer atmega32u4 flash --eeprom out```


    还有一种通过 bootmagic 的方法

    ```
    Boot Magic are executed during boot up time. Press Magic key below then plug in keyboard cable. Note that you must use keys of Layer 0 as Magic keys. These settings are stored in EEPROM so that retain your configure over power cycles.
    ...
    To avoid configuring accidentally additive salt key KC_SPACE also needs to be pressed along with the following configuration keys.
    ...
    Clear configuration stored in EEPROM to reset configuration(Backspace)
    ```

    上电时按住 space+backspace ,可惜我用的 spaceFN 配列, layer 0 没有空格没法用这个……
    ooxxcc
        5
    ooxxcc  
       2016-01-20 09:39:46 +08:00
    啊居然不能用 markdown ,凑合看吧
    kevinroot
        6
    kevinroot  
    OP
       2016-01-20 10:38:38 +08:00 via iPhone
    @ooxxcc 哈哈 多谢,我可以肉眼解析
    Reficul
        7
    Reficul  
       2016-01-20 11:42:03 +08:00
    右边 shift 这个长度的键冒上次找了好久都没找到
    kevinroot
        8
    kevinroot  
    OP
       2016-01-20 12:38:54 +08:00
    @Reficul 搜“ 1.75 shift ”,蛮多的啊。
    我买的这套,多了一些键
    https://item.taobao.com/item.htm?spm=a1z09.2.0.0.IG4HdD&id=522761469204&_u=kjke199f45
    Reficul
        9
    Reficul  
       2016-01-20 12:53:08 +08:00
    @kevinroot 恩,现在好像挺多的了。
    EchoWhale
        10
    EchoWhale  
       2016-04-06 01:38:20 +08:00
    一套下来多少钱?
    kevinroot
        11
    kevinroot  
    OP
       2016-04-06 02:05:29 +08:00 via iPhone
    @EchoWhale 800 多一点,去掉那些没什么必要的热插拔、轴间纸,透明轴盖,应该在 700 左右
    ooTwToo
        12
    ooTwToo  
       2016-06-17 23:53:08 +08:00
    好想跟我的 poker2 加灯,可是自己懒得折腾
    kevinroot
        13
    kevinroot  
    OP
       2016-06-18 08:51:07 +08:00 via iPhone
    @ooTwToo poker2 键帽不透明的,加了跟我这个一样不怎么好看。要么换套键帽再加灯。
    jiangzhouq
        14
    jiangzhouq  
       2016-06-20 20:09:48 +08:00
    我决定收藏一下,说不定哪天又想折腾了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3748 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 10:31 · PVG 18:31 · LAX 02:31 · JFK 05:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.